diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000000000000000000000000000000000000..1ad93ead80a3da3561e9a741411f0cad33f81dc0 --- /dev/null +++ b/.clang-format @@ -0,0 +1,117 @@ +--- +Language: Cpp +AccessModifierOffset: -2 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Right +AlignOperands: true +AlignTrailingComments: true +AllowAllArgumentsOnNextLine: true +AllowAllConstructorInitializersOnNextLine: true +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: All +AllowShortLambdasOnASingleLine: All +AllowShortIfStatementsOnASingleLine: Never +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: MultiLine +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterCaseLabel: true + AfterClass: true + AfterControlStatement: true + AfterEnum: true + AfterFunction: true + AfterNamespace: true + AfterStruct: true + AfterUnion: true + AfterExternBlock: true + BeforeCatch: true + BeforeElse: true + IndentBraces: false + SplitEmptyFunction: true + SplitEmptyRecord: true + SplitEmptyNamespace: true +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Custom +BreakBeforeInheritanceComma: false +BreakInheritanceList: BeforeColon +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: BeforeColon +BreakStringLiterals: true +ColumnLimit: 79 +CommentPragmas: '^ IWYU pragma:' +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: true +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Preserve +IncludeCategories: + - Regex: '^"(llvm|llvm-c|clang|clang-c)/' + Priority: 2 + - Regex: '^(<|"(gtest|gmock|isl|json)/)' + Priority: 3 + - Regex: '.*' + Priority: 1 +IncludeIsMainRegex: '(Test)?$' +IndentCaseLabels: false +IndentPPDirectives: None +IndentWidth: 2 +IndentWrappedFunctionNames: false +KeepEmptyLinesAtTheStartOfBlocks: true +Language: Cpp +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 19 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyBreakTemplateDeclaration: 10 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 60 +PointerAlignment: Right +ReflowComments: true +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: true +SpaceAfterLogicalNot: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: false +SpaceBeforeCpp11BracedList: false +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInContainerLiterals: true +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp11 +StatementMacros: + - Q_UNUSED + - QT_REQUIRE_VERSION +TabWidth: 8 +UseTab: Never +... diff --git a/BUILD/FINISH.sh b/BUILD/FINISH.sh index 86085fcc59373d313e3fb15f7a93e01dd1cd7fd4..7e4f47760f483f9d2b2421fd2f92c8c797f089ea 100644 --- a/BUILD/FINISH.sh +++ b/BUILD/FINISH.sh @@ -13,7 +13,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA cflags="$c_warnings $extra_flags $EXTRA_FLAGS $EXTRA_CFLAGS" cxxflags="$cxx_warnings $base_cxxflags $extra_flags $EXTRA_FLAGS $EXTRA_CXXFLAGS" diff --git a/BUILD/SETUP.sh b/BUILD/SETUP.sh index 36072ebaa7e03969a5826160d3751c8d0b750cf5..ed1f069b4341dbf98d1a94da2cf6fe6b32bb7e91 100755 --- a/BUILD/SETUP.sh +++ b/BUILD/SETUP.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA ######################################################################## diff --git a/BUILD/autorun.sh b/BUILD/autorun.sh index 39346270af91cc637e0b004d1d87200dd0abe6f1..a705c726e45620247bb2b517e0b4c6964e46af4a 100755 --- a/BUILD/autorun.sh +++ b/BUILD/autorun.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # Create MySQL cmake configure wrapper diff --git a/BUILD/check-cpu b/BUILD/check-cpu index c1c85cfd9086d756f097a27df0a6791d1faef199..814c217c07000e4d261327638a721ba67eecf83e 100755 --- a/BUILD/check-cpu +++ b/BUILD/check-cpu @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Check cpu of current machine and find the diff --git a/BUILD/cleanup b/BUILD/cleanup index 1a3cfa7b24ef6d1e8b26ddda3add1711dd3aeb9b..3d791296554899cf48cd662d3d604d83b0d925cd 100755 --- a/BUILD/cleanup +++ b/BUILD/cleanup @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/cmake_configure.sh b/BUILD/cmake_configure.sh index 668d6a81b5c24d784f52053c5ae7a3f370ebcab0..7f877de21ba22115f1decfe99dc06d381c847096 100644 --- a/BUILD/cmake_configure.sh +++ b/BUILD/cmake_configure.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # Ensure cmake and perl are there cmake -P cmake/check_minimal_version.cmake >/dev/null 2>&1 || HAVE_CMAKE=no diff --git a/BUILD/compile-alpha b/BUILD/compile-alpha index 45f72eb90e1ef0ac6cac55315dac28dc68c30d66..cb3c4478acbc49cb644a52042abe443b47e143b8 100755 --- a/BUILD/compile-alpha +++ b/BUILD/compile-alpha @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-debug-max b/BUILD/compile-amd64-debug-max index 923379598d4f2c25921a92e7329b6ff17cd3e8bb..281f2775cb189bea14231dde58366fdde675be1f 100755 --- a/BUILD/compile-amd64-debug-max +++ b/BUILD/compile-amd64-debug-max @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-debug-max-no-ndb b/BUILD/compile-amd64-debug-max-no-ndb index d45a51eba54b0d4e36fac856e8341c7aa13eeb1e..0fa8b428c1af5f1b55f67949c3ed4a165eef9659 100755 --- a/BUILD/compile-amd64-debug-max-no-ndb +++ b/BUILD/compile-amd64-debug-max-no-ndb @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-gcov b/BUILD/compile-amd64-gcov index 80936d1f3ec0dd1c3d6c5047dbfd15ec6ed4428e..c9bd3f36dd2d20034ae7fd24a930190f1fa7af5f 100755 --- a/BUILD/compile-amd64-gcov +++ b/BUILD/compile-amd64-gcov @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-gprof b/BUILD/compile-amd64-gprof index b6e38a68b8f56be0149bc768fa6a543889facd73..2be4fdfaf3ed8efae5c29e2bf2da3aa3e1bec6fc 100755 --- a/BUILD/compile-amd64-gprof +++ b/BUILD/compile-amd64-gprof @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-max b/BUILD/compile-amd64-max index 3814a98b74f959450cf906c84382e87498776edc..6d3470deb1afbade969e431d758442513ebdf713 100755 --- a/BUILD/compile-amd64-max +++ b/BUILD/compile-amd64-max @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-amd64-valgrind-max b/BUILD/compile-amd64-valgrind-max index 303b73e4bae63a14cf532732168e7243b8ff28f8..2d6fa68bd5e6e5616223f5524ebd6c1634f20ff1 100755 --- a/BUILD/compile-amd64-valgrind-max +++ b/BUILD/compile-amd64-valgrind-max @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-bintar b/BUILD/compile-bintar index 94d1371f69d89facc959c319bc2bc728adc35eb0..56c3cb7258b1e931cc3631b7e944a3308d079adf 100755 --- a/BUILD/compile-bintar +++ b/BUILD/compile-bintar @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. # This script's purpose is to build the binary tarball packages for MariaDB diff --git a/BUILD/compile-darwin-mwcc b/BUILD/compile-darwin-mwcc index 06332910eaac33957960f45a22e1dbb71ae05211..811de47e276f360e4cd5675787389cb4ec2d8211 100755 --- a/BUILD/compile-darwin-mwcc +++ b/BUILD/compile-darwin-mwcc @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-dist b/BUILD/compile-dist index 853fd33976902c89864501dca0c494e8e8632025..7f4437bf91307d36c880f0a71cec42e6fc25ce3d 100755 --- a/BUILD/compile-dist +++ b/BUILD/compile-dist @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # This script's purpose is to update the automake/autoconf helper scripts and diff --git a/BUILD/compile-hpux11-parisc2-aCC b/BUILD/compile-hpux11-parisc2-aCC index 0a3c8e78b109c29a3eea6f0763d79cdf3e8d066e..15e9b9644503e7ac09c4075701f126a3eb2fbd66 100755 --- a/BUILD/compile-hpux11-parisc2-aCC +++ b/BUILD/compile-hpux11-parisc2-aCC @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA if [ ! -f "sql/mysqld.cc" ]; then echo "You must run this script from the MySQL top-level directory." diff --git a/BUILD/compile-ia64-debug-max b/BUILD/compile-ia64-debug-max index 508cadf73e2eccdefc0f035b7750093caf211357..415d3cec7a6554c7703135bd9203a73d3003d7b9 100755 --- a/BUILD/compile-ia64-debug-max +++ b/BUILD/compile-ia64-debug-max @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA gmake -k maintainer-clean || true /bin/rm -f */.deps/*.P config.cache storage/innobase/config.cache diff --git a/BUILD/compile-innodb b/BUILD/compile-innodb index fa791282b289d655f48549937dfac43c96008fb0..b3001061e0a18d5603f1a50b667e4256528208e5 100755 --- a/BUILD/compile-innodb +++ b/BUILD/compile-innodb @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, -# Fifth Floor, Boston, MA 02110-1301 USA +# Fifth Floor, Boston, MA 02110-1335 USA # # we assume this script is in storage/innobase/ diff --git a/BUILD/compile-irix-mips64-mipspro b/BUILD/compile-irix-mips64-mipspro index 4a55654e938dfe6c4d8827ae3a2eb3d79fe8ca59..917f3d07bbbd39c5d563ea5ab632df5708703f2e 100755 --- a/BUILD/compile-irix-mips64-mipspro +++ b/BUILD/compile-irix-mips64-mipspro @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA if [ ! -f "sql/mysqld.cc" ]; then echo "You must run this script from the MySQL top-level directory." diff --git a/BUILD/compile-pentium b/BUILD/compile-pentium index c197d9b49bfdc0828ffdf48d19fe8990e5d475e1..15a041fc0b9ea80a06b5232ad7ea52ababc4b2ea 100755 --- a/BUILD/compile-pentium +++ b/BUILD/compile-pentium @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-cybozu b/BUILD/compile-pentium-cybozu index fc65adf1ea1d0bcdfd86a11d787f281ccb65421c..4ff01e73a26e62e6dd975ab1959d8e87c98e66e0 100755 --- a/BUILD/compile-pentium-cybozu +++ b/BUILD/compile-pentium-cybozu @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug b/BUILD/compile-pentium-debug index faeb1b895975cc903b67df06515262460db7d6e6..d19292773cca1947d1b2003bbde843e33a967878 100755 --- a/BUILD/compile-pentium-debug +++ b/BUILD/compile-pentium-debug @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug-max b/BUILD/compile-pentium-debug-max index 0c925d8426f79ec56211326da3977dc34df3fb6b..59d471af104900fe146ee078114369626bd9efac 100755 --- a/BUILD/compile-pentium-debug-max +++ b/BUILD/compile-pentium-debug-max @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug-max-no-embedded b/BUILD/compile-pentium-debug-max-no-embedded index 2394c8aa2c7cf16ff040ef74f148ac001e8534cc..9564836c0bc6f17fbdfbe739ed36586f6cb4669c 100755 --- a/BUILD/compile-pentium-debug-max-no-embedded +++ b/BUILD/compile-pentium-debug-max-no-embedded @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug-max-no-ndb b/BUILD/compile-pentium-debug-max-no-ndb index 705164c20bcef77271669552ffad24626208d97a..409d645be371e461fcd5738006cdc7d6e175dca3 100755 --- a/BUILD/compile-pentium-debug-max-no-ndb +++ b/BUILD/compile-pentium-debug-max-no-ndb @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug-openssl b/BUILD/compile-pentium-debug-openssl index abf6b41a2d2e381929f31cf053b02556d52da1cc..3fd461353454996d06172af9934c67d03b847223 100755 --- a/BUILD/compile-pentium-debug-openssl +++ b/BUILD/compile-pentium-debug-openssl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-debug-yassl b/BUILD/compile-pentium-debug-yassl index e8cfff6cb071f9bb7110368377c20e5987df1e6a..0a53e7f971887f6be96d7ec69787a5629321241b 100755 --- a/BUILD/compile-pentium-debug-yassl +++ b/BUILD/compile-pentium-debug-yassl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-gcov b/BUILD/compile-pentium-gcov index 56072f619e51bfc0eff1cfc9f2452d3484fec73b..11fc6dd9c28a2e2676289c8c285758f057c9fcda 100755 --- a/BUILD/compile-pentium-gcov +++ b/BUILD/compile-pentium-gcov @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA # Need to disable ccache, or we loose the gcov-needed compiler output files. diff --git a/BUILD/compile-pentium-gprof b/BUILD/compile-pentium-gprof index 52231e7832ae591cf90c951db14c880bdb03aba9..75dbd755834d7df4cc87aced6d3fff96c7b37738 100755 --- a/BUILD/compile-pentium-gprof +++ b/BUILD/compile-pentium-gprof @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-icc b/BUILD/compile-pentium-icc index 23333a13c1523971dea03e1e7d5a2bb7f57e5e6a..385e8a411119f75f2412a81fb1f3ac1be3cbf6bf 100755 --- a/BUILD/compile-pentium-icc +++ b/BUILD/compile-pentium-icc @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-icc-valgrind-max b/BUILD/compile-pentium-icc-valgrind-max index 4858f796fab7a216c01e8934b457e933a0add5d8..182028629ac307db39eb9ee09e536e35a9baf502 100755 --- a/BUILD/compile-pentium-icc-valgrind-max +++ b/BUILD/compile-pentium-icc-valgrind-max @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. # @@ -27,7 +27,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-icc-yassl b/BUILD/compile-pentium-icc-yassl index ef0ec1a5d76e1758ecca037b40ad34a030c71beb..cd4d8dc822eeb14582d82671a2da48a09f93dba7 100644 --- a/BUILD/compile-pentium-icc-yassl +++ b/BUILD/compile-pentium-icc-yassl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-max b/BUILD/compile-pentium-max index 470596f8eb9365fc990aed1b13afa687b7e3e41d..41cb3a2697496d5b7368fb6953fb6d13cdf506bb 100755 --- a/BUILD/compile-pentium-max +++ b/BUILD/compile-pentium-max @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-myodbc b/BUILD/compile-pentium-myodbc index d9b1dd4712922956377ec4b173230bf42b9a0311..62e06a4b552d2295276a24d4c1390a0b77a129e0 100755 --- a/BUILD/compile-pentium-myodbc +++ b/BUILD/compile-pentium-myodbc @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-valgrind-max b/BUILD/compile-pentium-valgrind-max index c4cb1845ba133504aa61903433eee9d1cf67ba3e..da0c903bc5008037de414c190a49491202ae4c06 100755 --- a/BUILD/compile-pentium-valgrind-max +++ b/BUILD/compile-pentium-valgrind-max @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. # @@ -27,7 +27,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium-valgrind-max-no-ndb b/BUILD/compile-pentium-valgrind-max-no-ndb index 4eb47cb2fe2da30aab8f0f6618669cb5bdd537fc..94dc3092a45d037f696861943bf81d0aa8b9a42e 100755 --- a/BUILD/compile-pentium-valgrind-max-no-ndb +++ b/BUILD/compile-pentium-valgrind-max-no-ndb @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-debug b/BUILD/compile-pentium64-debug index 74909c346ecb209cadfdd2a9a925e92b7f4394be..f30c6634ea89daeab04a10664ccca43799ce5451 100755 --- a/BUILD/compile-pentium64-debug +++ b/BUILD/compile-pentium64-debug @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-debug-max b/BUILD/compile-pentium64-debug-max index 49a9c7daf3a22deee44165c46be5692ec7f6374c..09061de6891af2712a0a2f0e877f433b5571a61f 100755 --- a/BUILD/compile-pentium64-debug-max +++ b/BUILD/compile-pentium64-debug-max @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-gcov b/BUILD/compile-pentium64-gcov index 36d4b6192ecbe3289bfe550ca65c5df344896d73..598d43c0593e81c7a1a83116794dfc563c671f74 100755 --- a/BUILD/compile-pentium64-gcov +++ b/BUILD/compile-pentium64-gcov @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-gprof b/BUILD/compile-pentium64-gprof index b7821e06b6efb7141dab21761804410d01d050b0..5940dc6b22fff6354d9d4f4f0ace032bbdd7e773 100755 --- a/BUILD/compile-pentium64-gprof +++ b/BUILD/compile-pentium64-gprof @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-max b/BUILD/compile-pentium64-max index 7f63d408f1aa0e7ad093d88578dc14d263524f94..a7bf969d09320cd9d23d87f4fa41d94d3b9b4935 100755 --- a/BUILD/compile-pentium64-max +++ b/BUILD/compile-pentium64-max @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-valgrind-max b/BUILD/compile-pentium64-valgrind-max index beb2ee2532cf04fca58088b617bc05ca68e567f8..0653fb7fe759f9e22f56bc437fa889f482a4a9e0 100755 --- a/BUILD/compile-pentium64-valgrind-max +++ b/BUILD/compile-pentium64-valgrind-max @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. # @@ -27,7 +27,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-pentium64-wsrep b/BUILD/compile-pentium64-wsrep index 53c0e897eec9583b42832c9b2ba48a423c3597f4..285cdaca3e52cd3dc0ba1bc37689099e88382c01 100644 --- a/BUILD/compile-pentium64-wsrep +++ b/BUILD/compile-pentium64-wsrep @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02111-1301, USA +# MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-ppc b/BUILD/compile-ppc index 18051aa33ee511432f3d4187f7cc86425ceada01..18c8842d724caacdafc01acb2d559860d683b39a 100755 --- a/BUILD/compile-ppc +++ b/BUILD/compile-ppc @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-ppc-debug b/BUILD/compile-ppc-debug index cbd8ef6533ae3c0bd1c9917e72b29cd41acc892c..504ffcf8d79b6d2c18485b510816d89dc8704e48 100755 --- a/BUILD/compile-ppc-debug +++ b/BUILD/compile-ppc-debug @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-ppc-debug-max b/BUILD/compile-ppc-debug-max index ecc2b183b4bf744ee5198a6e12eb740326a698d4..ef8d798429e1c4454b00830c7b99c84bf93a45db 100755 --- a/BUILD/compile-ppc-debug-max +++ b/BUILD/compile-ppc-debug-max @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-ppc-debug-max-no-ndb b/BUILD/compile-ppc-debug-max-no-ndb index 0642ddf7a577c8ef57b76b2eb7de841dacd64ad8..ebcd5b3f4d57f90cf5dcdbfe3ed27233618ef990 100755 --- a/BUILD/compile-ppc-debug-max-no-ndb +++ b/BUILD/compile-ppc-debug-max-no-ndb @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-ppc-max b/BUILD/compile-ppc-max index 419f096a95be33c1eb27bba2ff4cb4bc88587791..10ffdfc560467dac11fb4ab1e9b247683fc1bfd7 100755 --- a/BUILD/compile-ppc-max +++ b/BUILD/compile-ppc-max @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-solaris-amd64-debug b/BUILD/compile-solaris-amd64-debug index 49e1e90ebeb4c342f69594ebd5ba8b673f9156e2..78d664954636438fc05c7629ef53dc34e5cf7739 100755 --- a/BUILD/compile-solaris-amd64-debug +++ b/BUILD/compile-solaris-amd64-debug @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA path=`dirname $0` . "$path/SETUP.sh" diff --git a/BUILD/compile-solaris-amd64-forte b/BUILD/compile-solaris-amd64-forte index a55627d24017b6c2376c92b1b096b6c0e568063f..4dee546b23c2bec6d457ef3ca82917d22e5bed57 100755 --- a/BUILD/compile-solaris-amd64-forte +++ b/BUILD/compile-solaris-amd64-forte @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # See file compile-solaris-amd64 for basic pre-requisites. diff --git a/BUILD/compile-solaris-sparc b/BUILD/compile-solaris-sparc index ddecb0e34361b9868c625d36217f80a6db14aeb9..911d0025a0f704b47a2825aef9c24399425aebe4 100755 --- a/BUILD/compile-solaris-sparc +++ b/BUILD/compile-solaris-sparc @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA make -k clean || true /bin/rm -f */.deps/*.P config.cache diff --git a/BUILD/compile-solaris-sparc-forte b/BUILD/compile-solaris-sparc-forte index cf17fa49c51f660775a93ee8aaa1cda0fb383525..5e513ebcf62c4640d4d69913fed3728ae080974f 100755 --- a/BUILD/compile-solaris-sparc-forte +++ b/BUILD/compile-solaris-sparc-forte @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Copyright (c) 2001, 2002, 2005, 2007 MySQL AB, 2008 Sun Microsystems, Inc. # Use is subject to license terms. @@ -29,7 +29,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Assume Forte is installed in /opt/SUNWSpro and ld is installed in # /usr/ccs/bin diff --git a/BUILD/util.sh b/BUILD/util.sh index 010b3d86e0660f049b753ca90d8ead5dd125833a..d1f4722b62c1c0b1b28314d0038f8e2a4e1c6ff7 100644 --- a/BUILD/util.sh +++ b/BUILD/util.sh @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. # Setting cpu options. get_cpuopt () { diff --git a/CMakeLists.txt b/CMakeLists.txt index 54645e0b5c229380bca8f1d0ca7d13f668445f5a..083fa753b88f72f9f8560e28f8bc53dd13c723de 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA CMAKE_MINIMUM_REQUIRED(VERSION 2.6) # Avoid warnings in higher versions @@ -191,6 +191,8 @@ INCLUDE(check_compiler_flag) OPTION(WITH_ASAN "Enable address sanitizer" OFF) IF (WITH_ASAN) + # this flag might be set by default on some OS + MY_CHECK_AND_SET_COMPILER_FLAG("-U_FORTIFY_SOURCE" DEBUG RELWITHDEBINFO) # gcc 4.8.1 and new versions of clang MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=address -O1 -Wno-error -fPIC" DEBUG RELWITHDEBINFO) @@ -216,22 +218,22 @@ ENDIF() OPTION(WITH_UBSAN "Enable undefined behavior sanitizer" OFF) IF (WITH_UBSAN) - IF(SECURITY_HARDENED) - MESSAGE(FATAL_ERROR "WITH_UBSAN and SECURITY_HARDENED are mutually exclusive") - ENDIF() - MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=undefined" DEBUG RELWITHDEBINFO) + MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=undefined -U_FORTIFY_SOURCE" DEBUG RELWITHDEBINFO) ENDIF() # enable security hardening features, like most distributions do # in our benchmarks that costs about ~1% of performance, depending on the load -IF(CMAKE_C_COMPILER_VERSION VERSION_LESS "4.6") +IF(CMAKE_C_COMPILER_VERSION VERSION_LESS "4.6" OR WITH_ASAN OR WITH_UBSAN) SET(security_default OFF) ELSE() SET(security_default ON) ENDIF() OPTION(SECURITY_HARDENED "Use security-enhancing compiler features (stack protector, relro, etc)" ${security_default}) IF(SECURITY_HARDENED) + IF(WITH_ASAN OR WITH_UBSAN) + MESSAGE(FATAL_ERROR "WITH_ASAN/WITH_UBSAN and SECURITY_HARDENED are mutually exclusive") + ENDIF() # security-enhancing flags MY_CHECK_AND_SET_COMPILER_FLAG("-pie -fPIC") MY_CHECK_AND_SET_COMPILER_FLAG("-Wl,-z,relro,-z,now") diff --git a/COPYING b/COPYING index d511905c1647a1e311e8b20d5930a37a9c2531cd..6e475df55260ed81f3bc8502fea2363c31d13bf7 100644 --- a/COPYING +++ b/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. Also add information on how to contact you by electronic and paper mail. diff --git a/COPYING.thirdparty b/COPYING.thirdparty index 7edd61f21f9779ec2ba2d1318423353c0c1ead74..35bb238ed1ea50f7b3e063742bcdc3b7e5e7e56c 100644 --- a/COPYING.thirdparty +++ b/COPYING.thirdparty @@ -110,7 +110,7 @@ cmake-2.4.8/Utilities/cmtar/compat/gethostname.c: You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. + Boston, MA 02110-1335 USA. As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. @@ -485,7 +485,7 @@ GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -758,7 +758,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. Also add information on how to contact you by electronic and paper mail. @@ -1187,7 +1187,7 @@ Use of any of this software is governed by the terms of the license below: You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* * Copyright (c) 1997, 1999 Kungliga Tekniska H366gskolan @@ -1274,7 +1274,7 @@ GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -1577,7 +1577,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. Also add information on how to contact you by electronic and paper mail. diff --git a/Docs/INFO_SRC b/Docs/INFO_SRC index 6081962104d917732e214415661dcbdd855245f0..788680810afd1515246741d3f1ed6c237d6d7dd3 100644 --- a/Docs/INFO_SRC +++ b/Docs/INFO_SRC @@ -1,8 +1,8 @@ -commit: f92f313368a2f2a8bed116085a407ce522f7a52c -date: 2019-05-07 16:41:07 -0400 -build-date: 2019-05-07 20:49:18 +0000 -short: f92f313 +commit: 403e6615fdd3f5f4de6d159457b2bd2fe566e0ad +date: 2019-07-26 18:17:55 +0300 +build-date: 2019-07-26 16:34:57 +0000 +short: 403e661 branch: HEAD -MariaDB source 10.1.40 +MariaDB source 10.1.41 diff --git a/Docs/README-wsrep b/Docs/README-wsrep index 2058e1eb14d5931540e260feb2c67e83ff5d3eaf..542567e75923720eb9a2fb95221f0cde2d58a5de 100644 --- a/Docs/README-wsrep +++ b/Docs/README-wsrep @@ -269,9 +269,6 @@ innodb_autoinc_lock_mode=2 autoinc lock modes 0 and 1 can cause unresolved deadlock, and make the system unresponsive. -innodb_locks_unsafe_for_binlog=1 - This option is required for parallel applying. - 5.2 WSREP OPTIONS All options are optional except for wsrep_provider, wsrep_cluster_address, and diff --git a/VERSION b/VERSION index 6c97b2be102fc75e2cd95f297c725dca48bc981d..3e7ee0131774bcb2961f3267bb9edbf4940d8f29 100644 --- a/VERSION +++ b/VERSION @@ -1,3 +1,3 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=1 -MYSQL_VERSION_PATCH=40 +MYSQL_VERSION_PATCH=41 diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt index 40df176c6e63d459e3b4c48907815b0d435953f7..0dc9fc5738a3fb6cbd391440481609123c3375e3 100644 --- a/client/CMakeLists.txt +++ b/client/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/include diff --git a/client/client_priv.h b/client/client_priv.h index 1419d9dfad9c9f3147e06b1c4763992acbcffc28..1668227cc96e4850573dcebdaf82041525f1e7c7 100644 --- a/client/client_priv.h +++ b/client/client_priv.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Common defines for all clients */ diff --git a/client/completion_hash.cc b/client/completion_hash.cc index c170b69de2d6abe7c685d7593af7834c82ba5fb4..553d0a1f926b7b070f76ec1218e8fe3dea5008e7 100644 --- a/client/completion_hash.cc +++ b/client/completion_hash.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Quick & light hash implementation for tab completion purposes * diff --git a/client/completion_hash.h b/client/completion_hash.h index 70c2cf1b371f80113413f010621719d26b5d9070..57483e0f8b8117ab18ef5d6bf4ecbed337e2e749 100644 --- a/client/completion_hash.h +++ b/client/completion_hash.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA */ + MA 02110-1335 USA */ #ifndef _HASH_ #define _HASH_ diff --git a/client/echo.c b/client/echo.c index 2a3cb915d232ff4c2985047a1f655d2a9c479e31..90a538faf628774e901fe0f7c7b2f1d4359d7dcd 100644 --- a/client/echo.c +++ b/client/echo.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* echo is a replacement for the "echo" command builtin to cmd.exe diff --git a/client/get_password.c b/client/get_password.c index 8a507d94e9bf03c2c65feca0f5ed47314032b8bd..04c5537fc3571e06f2568713f0088840413412b5 100644 --- a/client/get_password.c +++ b/client/get_password.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* ** Ask for a password from tty diff --git a/client/my_readline.h b/client/my_readline.h index 57537308fed47804bbf1125ef3aeb5c9f5537439..ec43d81f2c0a8c6bfa3a510290383f7b613fe0ab 100644 --- a/client/my_readline.h +++ b/client/my_readline.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* readline for batch mode */ diff --git a/client/mysql.cc b/client/mysql.cc index cb7761f8195c67bc449b9c62e280a35248f2664b..31c1d4436077ae0ca055d8a16e700ccad6fef675 100644 --- a/client/mysql.cc +++ b/client/mysql.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* mysql command tool * Commands compatible with mSQL by David J. Hughes @@ -3128,7 +3128,7 @@ static int com_help(String *buffer __attribute__((unused)), char *line __attribute__((unused))) { - reg1 int i, j; + int i, j; char * help_arg= strchr(line,' '), buff[32], *end; if (help_arg) { diff --git a/client/mysql_plugin.c b/client/mysql_plugin.c index c353fb039d651d7325a9440b35cf32936c808420..682a2365a92b8bba0ff55d59736078536f4d7757 100644 --- a/client/mysql_plugin.c +++ b/client/mysql_plugin.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/client/mysql_upgrade.c b/client/mysql_upgrade.c index 5eb495774cef128c2f96fc2ad1605ed013a7eb83..d18dc97c9b8a550004d1641e1cd96949318c55d0 100644 --- a/client/mysql_upgrade.c +++ b/client/mysql_upgrade.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "client_priv.h" diff --git a/client/mysqladmin.cc b/client/mysqladmin.cc index d4d40b0a0f28fc4b5429e0cec243468ca8d2a111..03a10bfa5b9bcf2d3210df936ca6f98b65d9a6b5 100644 --- a/client/mysqladmin.cc +++ b/client/mysqladmin.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* maintaince of mysql databases */ diff --git a/client/mysqlbinlog.cc b/client/mysqlbinlog.cc index 4ba76cb3ba12d8ab0faeb647f86dc741d51136bb..11dc98943dd20c31aab2ff4d091965f0bd8ac60e 100644 --- a/client/mysqlbinlog.cc +++ b/client/mysqlbinlog.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/client/mysqlcheck.c b/client/mysqlcheck.c index eafd47132adab589e3b603d6f6b2a0466d28008e..5e4e22b67d68141617c42449c35fbbdb92a88d8c 100644 --- a/client/mysqlcheck.c +++ b/client/mysqlcheck.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* By Jani Tolonen, 2001-04-20, MySQL Development Team */ diff --git a/client/mysqldump.c b/client/mysqldump.c index f00d1188502ef42af9e9dd2b5f777e75f776c963..44f9849306fc06259cd9bb569da14c33af59530c 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* mysqldump.c - Dump a tables contents and format to an ASCII file diff --git a/client/mysqlimport.c b/client/mysqlimport.c index a9c24e20b0a196e2559fb86dcfdd63d9c47ff368..4cd51477e32d8ac1d17f35feacfa68ed2cc9c148 100644 --- a/client/mysqlimport.c +++ b/client/mysqlimport.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* @@ -48,8 +48,8 @@ static char *add_load_option(char *ptr,const char *object, const char *statement); static my_bool verbose=0,lock_tables=0,ignore_errors=0,opt_delete=0, - replace=0,silent=0,ignore=0,opt_compress=0, - opt_low_priority= 0, tty_password= 0; + replace, silent, ignore, ignore_foreign_keys, + opt_compress, opt_low_priority, tty_password; static my_bool debug_info_flag= 0, debug_check_flag= 0; static uint opt_use_threads=0, opt_local_file=0, my_end_arg= 0; static char *opt_password=0, *current_user=0, @@ -123,6 +123,10 @@ static struct my_option my_long_options[] = ¤t_host, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, {"ignore", 'i', "If duplicate unique key was found, keep old row.", &ignore, &ignore, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"ignore-foreign-keys", 'k', + "Disable foreign key checks while importing the data.", + &ignore_foreign_keys, &ignore_foreign_keys, 0, GET_BOOL, NO_ARG, + 0, 0, 0, 0, 0, 0}, {"ignore-lines", OPT_IGN_LINES, "Ignore first n lines of data infile.", &opt_ignore_lines, &opt_ignore_lines, 0, GET_LL, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, @@ -487,6 +491,9 @@ static MYSQL *db_connect(char *host, char *database, ignore_errors=0; db_error(mysql); } + if (ignore_foreign_keys) + mysql_query(mysql, "set foreign_key_checks= 0;"); + return mysql; } diff --git a/client/mysqlshow.c b/client/mysqlshow.c index 95ee8d697f3d1e51d988653067b2be5a3ac2ffd1..8246d4364c93aac05219cdf410e18b4656bd578f 100644 --- a/client/mysqlshow.c +++ b/client/mysqlshow.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Show databases, tables or columns */ diff --git a/client/mysqlslap.c b/client/mysqlslap.c index fd30776446d77b3da0c5380ca32d02c52cde9a33..5dca3fae2cbb51a76f6ad90ce8289dd5da60045f 100644 --- a/client/mysqlslap.c +++ b/client/mysqlslap.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/client/mysqltest.cc b/client/mysqltest.cc index cc1d61e5d791246f8d491552666bdfc28d409747..1f17f75e1b81356e1bea1ade5c0ce505b1268e3c 100644 --- a/client/mysqltest.cc +++ b/client/mysqltest.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* mysqltest @@ -1044,8 +1044,8 @@ void do_eval(DYNAMIC_STRING *query_eval, const char *query, const char *query_end, my_bool pass_through_escape_chars) { const char *p; - register char c, next_c; - register int escaped = 0; + char c, next_c; + int escaped = 0; VAR *v; DBUG_ENTER("do_eval"); @@ -2341,7 +2341,7 @@ C_MODE_START static uchar *get_var_key(const uchar* var, size_t *len, my_bool __attribute__((unused)) t) { - register char* key; + char* key; key = ((VAR*)var)->name; *len = ((VAR*)var)->name_len; return (uchar*)key; @@ -9900,7 +9900,7 @@ typedef struct st_pointer_array { /* when using array-strings */ struct st_replace *init_replace(char * *from, char * *to, uint count, char * word_end_chars); -int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name); +int insert_pointer_name(POINTER_ARRAY *pa,char * name); void free_pointer_array(POINTER_ARRAY *pa); /* @@ -9984,8 +9984,8 @@ void replace_strings_append(REPLACE *rep, DYNAMIC_STRING* ds, const char *str, int len __attribute__((unused))) { - reg1 REPLACE *rep_pos; - reg2 REPLACE_STRING *rep_str; + REPLACE *rep_pos; + REPLACE_STRING *rep_str; const char *start, *from; DBUG_ENTER("replace_strings_append"); @@ -10891,7 +10891,7 @@ void internal_clear_bit(REP_SET *set, uint bit) void or_bits(REP_SET *to,REP_SET *from) { - reg1 uint i; + uint i; for (i=0 ; i < to->size_of_bits ; i++) to->bits[i]|=from->bits[i]; return; @@ -10993,7 +10993,7 @@ uint end_of_word(char * pos) #define PC_MALLOC 256 /* Bytes for pointers */ #define PS_MALLOC 512 /* Bytes for data */ -int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name) +int insert_pointer_name(POINTER_ARRAY *pa,char * name) { uint i,length,old_count; uchar *new_pos; diff --git a/client/readline.cc b/client/readline.cc index 23b1f8d7ac75d523e289e07498f44016824d3196..12df8b312ad308f53e998b9ed054645ea00c95e1 100644 --- a/client/readline.cc +++ b/client/readline.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* readline for batch mode */ diff --git a/client/sql_string.cc.dontuse b/client/sql_string.cc.dontuse index 65b14e36cd1198e5aadc03f7d23e4d5168a7dc70..72736ef5511573f2c40398d597dcd44fb66f1265 100644 --- a/client/sql_string.cc.dontuse +++ b/client/sql_string.cc.dontuse @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file is originally from the mysql distribution. Coded by monty */ diff --git a/client/sql_string.h.dontuse b/client/sql_string.h.dontuse index 94f844dc689e88d58fa4bb45bba83399c98d8b25..e5bf8e0b67c105afb77efd52cda7e7a803ea3058 100644 --- a/client/sql_string.h.dontuse +++ b/client/sql_string.h.dontuse @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file is originally from the mysql distribution. Coded by monty */ diff --git a/cmake/abi_check.cmake b/cmake/abi_check.cmake index 02124ae7ba1fd5748151713ef14ec9680f7b5f8b..805322229c4e01fda27837c69290e03c9064d602 100644 --- a/cmake/abi_check.cmake +++ b/cmake/abi_check.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Headers which need to be checked for abi/api compatibility are in diff --git a/cmake/bison.cmake b/cmake/bison.cmake index 0892a213d04c40a26a72ec2f4990ec7526cc0531..24adcb788d99d25710181ef9ea2572365570e080 100644 --- a/cmake/bison.cmake +++ b/cmake/bison.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA IF(CMAKE_SYSTEM_NAME MATCHES "SunOS") # On Solaris, /opt/csw often contains a newer bison diff --git a/cmake/build_configurations/mysql_release.cmake b/cmake/build_configurations/mysql_release.cmake index 709d97ec69319c5e302ae3d8747f2d262aa64329..64432e079396415c64f8d3dd2340ee898c57d841 100644 --- a/cmake/build_configurations/mysql_release.cmake +++ b/cmake/build_configurations/mysql_release.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file includes build settings used for MySQL release diff --git a/cmake/bzip2.cmake b/cmake/bzip2.cmake index 0c15853d0b9e6e56b7d080614c303ab1c25180c8..26fd703120e2cb0c036392283382a8f8fd987d71 100644 --- a/cmake/bzip2.cmake +++ b/cmake/bzip2.cmake @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(WITH_INNODB_BZIP2 AUTO CACHE STRING "Build with bzip2. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'") diff --git a/cmake/cat.cmake b/cmake/cat.cmake index 1ffe2ecfa1dc6642e4cff8c8632e00b53cb2cef5..3a76b20da99b789f174c8bb5ffcef658e958bd95 100644 --- a/cmake/cat.cmake +++ b/cmake/cat.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Concatenate files # diff --git a/cmake/character_sets.cmake b/cmake/character_sets.cmake index 1c93441cbb1cf04511e1ba3d62a88cb225f1f7c2..37de79758b3815e98304db2edc89fec12b568911 100644 --- a/cmake/character_sets.cmake +++ b/cmake/character_sets.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Charsets and collations IF(NOT DEFAULT_CHARSET) diff --git a/cmake/check_compiler_flag.cmake b/cmake/check_compiler_flag.cmake index 673361ab8fe1398797ccc7332744d414a729f40b..547325e4fa2842b92993e3b6c1e880af62bc49b9 100644 --- a/cmake/check_compiler_flag.cmake +++ b/cmake/check_compiler_flag.cmake @@ -13,7 +13,8 @@ SET(fail_patterns FAIL_REGEX "warning:.*redefined" FAIL_REGEX "[Ww]arning: [Oo]ption" ) - +#The regex patterns above are not localized, thus LANG=C +SET(ENV{LANG} C) MACRO (MY_CHECK_C_COMPILER_FLAG flag) STRING(REGEX REPLACE "[-,= +]" "_" result "HAVE_C_${flag}") SET(SAVE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") diff --git a/cmake/check_minimal_version.cmake b/cmake/check_minimal_version.cmake index d96c6a9341873de94682344f0c65de8dd3c6a3c1..5bef555b32d464680a72459ca06437c435e47f83 100644 --- a/cmake/check_minimal_version.cmake +++ b/cmake/check_minimal_version.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a helper script is used to check for the minimal required version # It helps to decide whether to use autoconf based configure or cmake's diff --git a/cmake/cmake_parse_arguments.cmake b/cmake/cmake_parse_arguments.cmake index 487fe2bacd92d41c6ec290c90d5340c6776d88ad..800fef6e7289eb3c330b48bd8f823fde1ddf3497 100644 --- a/cmake/cmake_parse_arguments.cmake +++ b/cmake/cmake_parse_arguments.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Handy macro to parse macro arguments MACRO(MYSQL_PARSE_ARGUMENTS prefix arg_names option_names) diff --git a/cmake/compile_flags.cmake b/cmake/compile_flags.cmake index b39bf7b79d65c3bf9532bbf8f636bff21abfbd4c..a87846e99157aa1d0d18d2e18ad0570de819e917 100644 --- a/cmake/compile_flags.cmake +++ b/cmake/compile_flags.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ## ADD_COMPILE_FLAGS( COMPILE_FLAGS ) diff --git a/cmake/configure.pl b/cmake/configure.pl index 68baf436c1caaa42e0c2eee0ea309f902fedf727..70122664ad474d4aee60850406b352b314bff968 100644 --- a/cmake/configure.pl +++ b/cmake/configure.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use Cwd 'abs_path'; diff --git a/cmake/cpack_rpm.cmake b/cmake/cpack_rpm.cmake index 02886ef6a6532c0ab73cf5f1132201f1bb135bfa..534af081d93a64cbc77f50c3c3bb2bd80046ff01 100644 --- a/cmake/cpack_rpm.cmake +++ b/cmake/cpack_rpm.cmake @@ -37,7 +37,7 @@ IF(CMAKE_VERSION VERSION_LESS "3.6.0") SET(CPACK_PACKAGE_FILE_NAME "${CPACK_RPM_PACKAGE_NAME}-${VERSION}-${RPM}-${CMAKE_SYSTEM_PROCESSOR}") ELSE() SET(CPACK_RPM_FILE_NAME "RPM-DEFAULT") - SET(CPACK_RPM_DEBUGINFO_PACKAGE ON) + SET(CPACK_RPM_DEBUGINFO_PACKAGE ON CACHE INTERNAL "") ENDIF() SET(CPACK_RPM_PACKAGE_RELEASE "1%{?dist}") diff --git a/cmake/cpack_source_ignore_files.cmake b/cmake/cpack_source_ignore_files.cmake index 8e1b7bd5edafec54a893529fdfc3e57af361d32e..65abf9e8a9d92508c61389f560b36cd901f2502f 100644 --- a/cmake/cpack_source_ignore_files.cmake +++ b/cmake/cpack_source_ignore_files.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(CPACK_SOURCE_IGNORE_FILES \\\\.git/ diff --git a/cmake/cpu_info.cmake b/cmake/cpu_info.cmake index 1772510e72b437b846892ba339ffb2388fd43988..f3ddd33df3ac1c969026fa55ab3583a23890abee 100644 --- a/cmake/cpu_info.cmake +++ b/cmake/cpu_info.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Symbols with information about the CPU. diff --git a/cmake/create_initial_db.cmake.in b/cmake/create_initial_db.cmake.in index c77e28d882c3877d79dac5a53bf4646f475a8260..4847d5ef35d2b9b05442c3dfc8beab4fb23bcdca 100644 --- a/cmake/create_initial_db.cmake.in +++ b/cmake/create_initial_db.cmake.in @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This script creates initial database for packaging on Windows SET(CMAKE_SOURCE_DIR "@CMAKE_SOURCE_DIR@") diff --git a/cmake/do_abi_check.cmake b/cmake/do_abi_check.cmake index c0ffce353f30d04f2266e6ace09b7e37c3a98c98..43d8b15a7ab20d2767155861b4e669c17023e5b8 100644 --- a/cmake/do_abi_check.cmake +++ b/cmake/do_abi_check.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Rules for checking that the abi/api has not changed. diff --git a/cmake/dtrace.cmake b/cmake/dtrace.cmake index bb45eaf865bd458f5d27e393a84ac502c7fa849d..4e0f75010453af5c26a021610e63509a7cc40d4c 100644 --- a/cmake/dtrace.cmake +++ b/cmake/dtrace.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA IF(CMAKE_SYSTEM_NAME MATCHES "SunOS" AND CMAKE_COMPILER_IS_GNUCXX AND CMAKE_SIZEOF_VOID_P EQUAL 4) diff --git a/cmake/dtrace_prelink.cmake b/cmake/dtrace_prelink.cmake index 0efc2bb64bbcd0227360bc558f907c3de09574c9..f2e678f06d5741bf654d74c884ce29133b85d336 100644 --- a/cmake/dtrace_prelink.cmake +++ b/cmake/dtrace_prelink.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Generates an ELF object file with dtrace entry points. # This object that must to be linked with together with diff --git a/cmake/info_bin.cmake b/cmake/info_bin.cmake index 9cec3de0e0f6be7ee93c7192ec497512e300fefc..d59b512bcec24aaa73eb8cd6e0cc5cfa6a7dba37 100644 --- a/cmake/info_bin.cmake +++ b/cmake/info_bin.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # The sole purpose of this cmake control file is to create the "INFO_BIN" file. diff --git a/cmake/info_macros.cmake.in b/cmake/info_macros.cmake.in index 89b04666c96725acd2d1a7e992e0f75bd30f284d..89ca1ec79dc33f0d5828503feb825e425df4101f 100644 --- a/cmake/info_macros.cmake.in +++ b/cmake/info_macros.cmake.in @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Handle/create the "INFO_*" files describing a MariaDB (server) binary. diff --git a/cmake/info_src.cmake b/cmake/info_src.cmake index ce9873cc9d0d34348c07a28c2827b071d0083fa0..df6249f111e1c0c30c7894c8e2acbf8289c70ac4 100644 --- a/cmake/info_src.cmake +++ b/cmake/info_src.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # The sole purpose of this cmake control file is to create the "INFO_SRC" file. diff --git a/cmake/install_layout.cmake b/cmake/install_layout.cmake index 5484691e94abaa29f9a8fd1f8aa26d4e3f26e1cf..e4d317e979c18bbfc96463dff80c68cfd1ca5696 100644 --- a/cmake/install_layout.cmake +++ b/cmake/install_layout.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # The purpose of this file is to set the default installation layout. # diff --git a/cmake/install_macros.cmake b/cmake/install_macros.cmake index b0263e63b7a57256440c13542b909eb21cfc9c6c..0c05b06208f7f134b7384a383801c47f338a1de9 100644 --- a/cmake/install_macros.cmake +++ b/cmake/install_macros.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA GET_FILENAME_COMPONENT(MYSQL_CMAKE_SCRIPT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/cmake_parse_arguments.cmake) diff --git a/cmake/libutils.cmake b/cmake/libutils.cmake index 2a218bc63b06ef23d0bec032eeb7af1e4e5f600a..00d2def58775a602d14000170dd8cfa153802374 100644 --- a/cmake/libutils.cmake +++ b/cmake/libutils.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file exports macros that emulate some functionality found in GNU libtool diff --git a/cmake/lz4.cmake b/cmake/lz4.cmake index ec0e2aa85df5b5c9578f7476249f6c05cd64a5db..098bf54f64a5ad2d08024891c7c47b1c58a7bd41 100644 --- a/cmake/lz4.cmake +++ b/cmake/lz4.cmake @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(WITH_INNODB_LZ4 AUTO CACHE STRING "Build with lz4. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'") diff --git a/cmake/lzma.cmake b/cmake/lzma.cmake index 12a28a17a4355a386cb6d699d0a818ddb5fa9f03..93de0a2934d743b22e2bebfcc075b0306df58709 100644 --- a/cmake/lzma.cmake +++ b/cmake/lzma.cmake @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(WITH_INNODB_LZMA AUTO CACHE STRING "Build with lzma. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'") diff --git a/cmake/lzo.cmake b/cmake/lzo.cmake index 07cba011c06d3b2d8381d6e5306652b1781b83ad..236eac2d1e56faa210a13817ac410c711e92b48e 100644 --- a/cmake/lzo.cmake +++ b/cmake/lzo.cmake @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(WITH_INNODB_LZO AUTO CACHE STRING "Build with lzo. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'") diff --git a/cmake/maintainer.cmake b/cmake/maintainer.cmake index caba370c4ae86499afab714f3f59468b7b2dba1d..8c2deeb8e400e0c596fbfa872edb146c22040843 100644 --- a/cmake/maintainer.cmake +++ b/cmake/maintainer.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Common warning flags for GCC, G++, Clang and Clang++ SET(MY_WARNING_FLAGS diff --git a/cmake/make_dist.cmake.in b/cmake/make_dist.cmake.in index f35d16834b684041ac024bd45576b1152b3983be..d9153604a46044a7725f2c9bd7b22fbfb5ba6bb1 100644 --- a/cmake/make_dist.cmake.in +++ b/cmake/make_dist.cmake.in @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Make source distribution # If bzr is present, run bzr export. diff --git a/cmake/merge_archives_unix.cmake.in b/cmake/merge_archives_unix.cmake.in index d05336d6c919cc0267bde5cfbfe8a535877d9a94..7bb5f54f411169a72b25df81296e8fb6ce12655d 100644 --- a/cmake/merge_archives_unix.cmake.in +++ b/cmake/merge_archives_unix.cmake.in @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This script merges many static libraries into # one big library on Unix. diff --git a/cmake/mysql_add_executable.cmake b/cmake/mysql_add_executable.cmake index c8a2e522d66f679eb3e08fb12b50dc6d463d18d8..12635f2b582c26233285c0048e46e9dc3c919fa6 100644 --- a/cmake/mysql_add_executable.cmake +++ b/cmake/mysql_add_executable.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Add executable plus some additional MySQL specific stuff # Usage (same as for standard CMake's ADD_EXECUTABLE) diff --git a/cmake/mysql_version.cmake b/cmake/mysql_version.cmake index 1802b1a26782d27519139c4520d7cb6c538c00c8..ca8dafaa4651a7fb431692c9dc1d06ac757c0b69 100644 --- a/cmake/mysql_version.cmake +++ b/cmake/mysql_version.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Global constants, only to be changed between major releases. diff --git a/cmake/os/AIX.cmake b/cmake/os/AIX.cmake index c86392f8bc4583d72c364e041c8d94a484ba7dd5..12ddf30d4401d672fca10c8cd7062af287bb487d 100644 --- a/cmake/os/AIX.cmake +++ b/cmake/os/AIX.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA #Enable 64 bit file offsets diff --git a/cmake/os/Cygwin.cmake b/cmake/os/Cygwin.cmake index 9c29277c626609cb911936e088e851982f0f3378..a54241654a610267b998569219b5439e6bd03db8 100644 --- a/cmake/os/Cygwin.cmake +++ b/cmake/os/Cygwin.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Cygwin is not Windows SET(WIN32 0) \ No newline at end of file diff --git a/cmake/os/Darwin.cmake b/cmake/os/Darwin.cmake index 4ac72070e8bd3ab70907ea0bfd027523bf08d15f..21e18360dfe98549979ef058cbfec07255e62ced 100644 --- a/cmake/os/Darwin.cmake +++ b/cmake/os/Darwin.cmake @@ -11,6 +11,6 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file includes OSX specific options and quirks, related to system checks diff --git a/cmake/os/FreeBSD.cmake b/cmake/os/FreeBSD.cmake index ffb89c812065eb68df70c48ca51ad86c52d0f80b..b9c335e4ddf5ae5134b5b99f4eea1da33e5bdb2c 100644 --- a/cmake/os/FreeBSD.cmake +++ b/cmake/os/FreeBSD.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file includes FreeBSD specific options and quirks, related to system checks diff --git a/cmake/os/HP-UX.cmake b/cmake/os/HP-UX.cmake index 4cadddc7b182c6c010b4cc6c3d7f46b29408b71d..5bbc799427ecb26efd76f187a6cbfd353311d9de 100644 --- a/cmake/os/HP-UX.cmake +++ b/cmake/os/HP-UX.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE(CheckCXXSourceCompiles) # Enable 64 bit file offsets diff --git a/cmake/os/Linux.cmake b/cmake/os/Linux.cmake index 55be86748027defd8f63752eb783c61d49eb5d34..2bd98c79d1f52dc0d1fa467993d1e15658cfc913 100644 --- a/cmake/os/Linux.cmake +++ b/cmake/os/Linux.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file includes Linux specific options and quirks, related to system checks diff --git a/cmake/os/OS400.cmake b/cmake/os/OS400.cmake index 502eeccc30a6236d2c2a8eca750dfbd58156ad95..5a9b2aba64d5a5249aa066dc3578bbd7f59e8223 100644 --- a/cmake/os/OS400.cmake +++ b/cmake/os/OS400.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA GET_FILENAME_COMPONENT(_SCRIPT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) INCLUDE(${_SCRIPT_DIR}/AIX.cmake) \ No newline at end of file diff --git a/cmake/os/SunOS.cmake b/cmake/os/SunOS.cmake index d5a4b5c96b04443db4684ae710ea0fb9ef1bbeb8..4a77b53fb3165f94617a07f502cab52a806cf230 100644 --- a/cmake/os/SunOS.cmake +++ b/cmake/os/SunOS.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE(CheckSymbolExists) INCLUDE(CheckCSourceRuns) diff --git a/cmake/os/Windows.cmake b/cmake/os/Windows.cmake index 803c951541c1de3b7a9d590d84e457d913993da9..2e7577ec5e99b899ebf2ff243b6d1c48896dd57e 100644 --- a/cmake/os/Windows.cmake +++ b/cmake/os/Windows.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This file includes Windows specific hacks, mostly around compiler flags diff --git a/cmake/os/WindowsCache.cmake b/cmake/os/WindowsCache.cmake index 07a8085a41145283a93c7819a94ce5e293969793..a4d46df2af637745359305311f74f1fb8e861d37 100644 --- a/cmake/os/WindowsCache.cmake +++ b/cmake/os/WindowsCache.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Avoid system checks on Windows by pre-caching results. Most of the system checks # are not relevant for Windows anyway and it takes lot more time to run them, diff --git a/cmake/package_name.cmake b/cmake/package_name.cmake index a8bd1596f47fec03e25b94df50e54e38ebabf831..8acf52f1bb3b8a1b49bc8b180f69b60ceb59ec02 100644 --- a/cmake/package_name.cmake +++ b/cmake/package_name.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Produce meaningful package name for the binary package # The logic is rather involved with special cases for different OSes diff --git a/cmake/plugin.cmake b/cmake/plugin.cmake index 4396a0a6c25432f6a36dcccb1d420d2b2bb8d43d..c9c18f7c079122c786686b9d0663aa77ba6009a9 100644 --- a/cmake/plugin.cmake +++ b/cmake/plugin.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA GET_FILENAME_COMPONENT(MYSQL_CMAKE_SCRIPT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) diff --git a/cmake/readline.cmake b/cmake/readline.cmake index 9cfbe4f0d551ed2af405df4d4734e0acaef17739..082dd04cf4a3e425e1b068b11ca5c170989b3636 100644 --- a/cmake/readline.cmake +++ b/cmake/readline.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE(CheckCXXSourceCompiles) diff --git a/cmake/snappy.cmake b/cmake/snappy.cmake index cb0839a348099fa8441856f08f0ad377797e9840..2810472cef60d82c72cfac927c5f7aca31d65109 100644 --- a/cmake/snappy.cmake +++ b/cmake/snappy.cmake @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(WITH_INNODB_SNAPPY AUTO CACHE STRING "Build with snappy. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'") diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake index 308f725a02d7a2737d511745cfe9d0429d1ec0cc..fef78600de284935486b5aedae939d3dacf25560 100644 --- a/cmake/ssl.cmake +++ b/cmake/ssl.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # We support different versions of SSL: # - "bundled" uses source code in /extra/yassl diff --git a/cmake/stack_direction.c b/cmake/stack_direction.c index d75bbbfa035fe39a0d2a6c8202ab0514bc68f823..1f7a5d0b13517a85381857c6743d0d6734cb63ff 100644 --- a/cmake/stack_direction.c +++ b/cmake/stack_direction.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Check stack direction (0-down, 1-up) */ int f(int *a) diff --git a/cmake/systemd.cmake b/cmake/systemd.cmake index 478930c9f3dd32a709c641d4968e7647a1c9b629..23eb467f9b68e5da5cae277d8c8ea14f21af63dd 100644 --- a/cmake/systemd.cmake +++ b/cmake/systemd.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE(FindPkgConfig) # http://www.cmake.org/cmake/help/v3.0/module/FindPkgConfig.html @@ -27,13 +27,9 @@ MACRO(CHECK_SYSTEMD) pkg_search_module(LIBSYSTEMD libsystemd libsystemd-daemon) ENDIF() IF(HAVE_DLOPEN) - SET(LIBSYSTEMD ${LIBSYSTEMD_LIBRARIES}) - #SET(CMAKE_REQUIRED_FLAGS ${LIBSYSTEMD_CFLAGS}) - SET(MYSQLD_LINK_FLAGS "${MYSQLD_LINK_FLAGS} ${LIBSYSTEMD_LDFLAGS}") + SET(LIBSYSTEMD ${LIBSYSTEMD_LDFLAGS} ${LIBSYSTEMD_LIBRARIES}) ELSE() - SET(LIBSYSTEMD ${LIBSYSTEMD_STATIC_LIBRARIES}) - #SET(CMAKE_REQUIRED_FLAGS ${LIBSYSTEMD_STATIC_CFLAGS}) - SET(MYSQLD_LINK_FLAGS "${MYSQLD_LINK_FLAGS} ${LIBSYSTEMD_STATIC_LDFLAGS}") + SET(LIBSYSTEMD ${LIBSYSTEMD_STATIC_LDFLAGS} ${LIBSYSTEMD_STATIC_LIBRARIES}) ENDIF() ELSE() SET(LIBSYSTEMD systemd) diff --git a/cmake/tags.cmake b/cmake/tags.cmake index 07c1411a1d65c8db1e99e6fc87299c729bb9e59a..309bfae98323f6b035b8d2a50e5d3cf34d7f4dff 100644 --- a/cmake/tags.cmake +++ b/cmake/tags.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Generate tag files IF(UNIX) diff --git a/cmake/versioninfo.rc.in b/cmake/versioninfo.rc.in index cd880b917e0f20407a390d5be7cabd8a40a8ba64..29b39353124971b307649a79003455be125b17c0 100644 --- a/cmake/versioninfo.rc.in +++ b/cmake/versioninfo.rc.in @@ -11,7 +11,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA #include VS_VERSION_INFO VERSIONINFO diff --git a/cmake/wsrep.cmake b/cmake/wsrep.cmake index b272df51adbb648b4df33302344a27823375cae3..a1e8fc39fca29ee5ee461fbf15a7088bbfbe9e99 100644 --- a/cmake/wsrep.cmake +++ b/cmake/wsrep.cmake @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Galera library does not compile with windows diff --git a/cmake/zlib.cmake b/cmake/zlib.cmake index e269c473f36fbfb3e2a12415a6aa1e4b98a2f20b..628bbf15f673286759c49c512bca676f181da43e 100644 --- a/cmake/zlib.cmake +++ b/cmake/zlib.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MACRO (MYSQL_USE_BUNDLED_ZLIB) SET(ZLIB_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/zlib ${CMAKE_BINARY_DIR}/zlib) diff --git a/config.h.cmake b/config.h.cmake index 3750ab717f828e58f708e689392e8d53897d0ad2..eb3e6228bf773dbf88a714aebf9dd10b0b6b5d3e 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MY_CONFIG_H #define MY_CONFIG_H diff --git a/configure.cmake b/configure.cmake index 38165e5b444730d4fd42824ec49d767f3bbb2399..8d477abc91bdd17755021a31ba742ae26e83adb2 100644 --- a/configure.cmake +++ b/configure.cmake @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # INCLUDE (CheckCSourceCompiles) diff --git a/dbug/CMakeLists.txt b/dbug/CMakeLists.txt index c40c70b684de7a45a5d53bc976220716b3b4ccb1..cf015ee3e0912c0329916910e9976cad19c5a494 100644 --- a/dbug/CMakeLists.txt +++ b/dbug/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/dbug diff --git a/dbug/dbug_add_tags.pl b/dbug/dbug_add_tags.pl index fe3637b4d12afd0f9e69683143095809bdb10895..7be8fb9b18da7e7cea9225dc8b49e2b378aa05d9 100755 --- a/dbug/dbug_add_tags.pl +++ b/dbug/dbug_add_tags.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA die "No files specified\n" unless $ARGV[0]; diff --git a/extra/CMakeLists.txt b/extra/CMakeLists.txt index c8e15dd4fb4e0aaffe5b60e984b26deb6e15785f..3e4ac442fb8c7f0c7559b71c67e19969aaab1eb0 100644 --- a/extra/CMakeLists.txt +++ b/extra/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${ZLIB_INCLUDE_DIR}) diff --git a/extra/charset2html.c b/extra/charset2html.c index 5851f206a1c5b3b3089b5ab3f74195e6edb0db5f..3a2b62d7b823b6940c1d73a2487d3567b2037d47 100644 --- a/extra/charset2html.c +++ b/extra/charset2html.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/extra/comp_err.c b/extra/comp_err.c index 3fc4b05fa61f084da96b1a32037222f87f35545a..2212654336c3ee3de772299f7354a48747715132 100644 --- a/extra/comp_err.c +++ b/extra/comp_err.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/extra/innochecksum.cc b/extra/innochecksum.cc index b3fcbbfb942bd1d4afd6c0864897a73f184b81a0..d7c5cd7495bb1ef0965c7bad669367db8fe018ba 100644 --- a/extra/innochecksum.cc +++ b/extra/innochecksum.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/extra/mariabackup/CMakeLists.txt b/extra/mariabackup/CMakeLists.txt index aa05b36153f5a3ba2f4e600ce96d3c7f6dd33b38..9e5b8506658c33246277ee38b6e42a28c68d1a4a 100644 --- a/extra/mariabackup/CMakeLists.txt +++ b/extra/mariabackup/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA OPTION(WITH_MARIABACKUP "Include mariabackup" ON) diff --git a/extra/mariabackup/backup_copy.cc b/extra/mariabackup/backup_copy.cc index a270325211ecef4023006c65fe6735cddd8b9abc..b31edfd65c50c2475a3ca4d371cd64a0f9531fb4 100644 --- a/extra/mariabackup/backup_copy.cc +++ b/extra/mariabackup/backup_copy.cc @@ -17,7 +17,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA ******************************************************* @@ -35,8 +35,8 @@ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with -this program; if not, write to the Free Software Foundation, Inc., 59 Temple -Place, Suite 330, Boston, MA 02111-1307 USA +this program; if not, write to the Free Software Foundation, Inc., 51 Franklin +Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/backup_mysql.cc b/extra/mariabackup/backup_mysql.cc index ac46a854fb7c93c9bd8fb1f6bee74acd5461b928..543fd4102f28647a0ce3a4d0f93f44350d0008af 100644 --- a/extra/mariabackup/backup_mysql.cc +++ b/extra/mariabackup/backup_mysql.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA ******************************************************* @@ -34,8 +34,8 @@ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with -this program; if not, write to the Free Software Foundation, Inc., 59 Temple -Place, Suite 330, Boston, MA 02111-1307 USA +this program; if not, write to the Free Software Foundation, Inc., 51 Franklin +Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ #define MYSQL_CLIENT @@ -1393,8 +1393,6 @@ write_xtrabackup_info(MYSQL *connection) const char *xb_stream_name[] = {"file", "tar", "xbstream"}; - ut_ad(xtrabackup_stream_fmt < 3); - uuid = read_mysql_one_value(connection, "SELECT UUID()"); server_version = read_mysql_one_value(connection, "SELECT VERSION()"); localtime_r(&history_start_time, &tm); diff --git a/extra/mariabackup/backup_wsrep.h b/extra/mariabackup/backup_wsrep.h index 5fa261f8db5bb7b817ee0bd6ec70a4062720ca85..0807da8a59a01b1a626afe7f7f3a103287bccdab 100644 --- a/extra/mariabackup/backup_wsrep.h +++ b/extra/mariabackup/backup_wsrep.h @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ #ifndef MARIABACKUP_WSREP_H diff --git a/extra/mariabackup/changed_page_bitmap.cc b/extra/mariabackup/changed_page_bitmap.cc index d4d3b71f99445faf24efd6cf350053b858e3c6dc..372d5b62a1dfcb2f36b69f15e38759b227507cc6 100644 --- a/extra/mariabackup/changed_page_bitmap.cc +++ b/extra/mariabackup/changed_page_bitmap.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/changed_page_bitmap.h b/extra/mariabackup/changed_page_bitmap.h index 6f549f4740035407defec2a72039abc20ddb332b..1a0e2ec37f0bddf8c125feeb4aab2dc3f3aeebb0 100644 --- a/extra/mariabackup/changed_page_bitmap.h +++ b/extra/mariabackup/changed_page_bitmap.h @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/common.h b/extra/mariabackup/common.h index 340ad66e28a0ef617688a8132a31959514ceab6c..8fd636a5963171f1453d956865d4a941e3d2b794 100644 --- a/extra/mariabackup/common.h +++ b/extra/mariabackup/common.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/crc/CMakeLists.txt b/extra/mariabackup/crc/CMakeLists.txt index 91758cdf520d4971e283d60ddfa38f765e9b104f..c057e59a7b9f9ecdf84d4f38bdf403a1ff9ea0b7 100644 --- a/extra/mariabackup/crc/CMakeLists.txt +++ b/extra/mariabackup/crc/CMakeLists.txt @@ -11,7 +11,7 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA PROJECT(crc C) diff --git a/extra/mariabackup/crc/config.h.cmake b/extra/mariabackup/crc/config.h.cmake index fe81c1859aeca6e3bc9043c4366a9753ddf369e7..beca62d1efb8a9c790afc8e0d6dfcbbd92e711a5 100644 --- a/extra/mariabackup/crc/config.h.cmake +++ b/extra/mariabackup/crc/config.h.cmake @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/crc/crc-intel-pclmul.c b/extra/mariabackup/crc/crc-intel-pclmul.c index d470c2bee43235b54b3e95d1a68fe48ae2d41b56..8fdac31892a49140a549aa86f4060adc99d5fda1 100644 --- a/extra/mariabackup/crc/crc-intel-pclmul.c +++ b/extra/mariabackup/crc/crc-intel-pclmul.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ @@ -35,7 +35,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * * You should have received a copy of the GNU Lesser General Public * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA * */ diff --git a/extra/mariabackup/crc/crc-intel-pclmul.h b/extra/mariabackup/crc/crc-intel-pclmul.h index 120058165a03ae8ba1cc54298667fea1506f6c6d..c95c59601ae2e10968b79c193268163cf119ef12 100644 --- a/extra/mariabackup/crc/crc-intel-pclmul.h +++ b/extra/mariabackup/crc/crc-intel-pclmul.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/crc/crc_glue.c b/extra/mariabackup/crc/crc_glue.c index 11d2c21886b0e9b2e7818bfce00e8136e3284278..a9709c8378e9833f62968f62aed0aecd0f6539b6 100644 --- a/extra/mariabackup/crc/crc_glue.c +++ b/extra/mariabackup/crc/crc_glue.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ #include "my_config.h" diff --git a/extra/mariabackup/crc/crc_glue.h b/extra/mariabackup/crc/crc_glue.h index e287fa4a7aa1df7dd0b8276291f3f45f5009ad1a..598330263b38317bef4c18c33b480749146c5fc9 100644 --- a/extra/mariabackup/crc/crc_glue.h +++ b/extra/mariabackup/crc/crc_glue.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/datasink.c b/extra/mariabackup/datasink.c index 1459da2fb57b0ee4dbc1f0be03406716e7c157ca..4ce54891d682eef519c51a1b102251ae799d32d7 100644 --- a/extra/mariabackup/datasink.c +++ b/extra/mariabackup/datasink.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/datasink.h b/extra/mariabackup/datasink.h index 5962e9ba4b75597901a976df7561cf0b4aea44a1..201bbfd3267a2e2f4093c7ae008f525ced6cf773 100644 --- a/extra/mariabackup/datasink.h +++ b/extra/mariabackup/datasink.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_archive.c b/extra/mariabackup/ds_archive.c index 50afcce4bc7676f4b666dad7a26629b6a09a0e0f..3826029e12011996c5e8bafb313e4ca3b9df695b 100644 --- a/extra/mariabackup/ds_archive.c +++ b/extra/mariabackup/ds_archive.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_archive.h b/extra/mariabackup/ds_archive.h index 3f4e4463c58f72b93da27daa8c259892bb8e78e5..f419fca0c9ff771156308655c17445728994a28a 100644 --- a/extra/mariabackup/ds_archive.h +++ b/extra/mariabackup/ds_archive.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_buffer.c b/extra/mariabackup/ds_buffer.c index 8e13e878953c4783347ee0082e331f569c5698a9..32c7a90d8e48664640a336893707c7adb3f1de9d 100644 --- a/extra/mariabackup/ds_buffer.c +++ b/extra/mariabackup/ds_buffer.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_buffer.h b/extra/mariabackup/ds_buffer.h index f8d2d63267da7140d1fd23aedde7f0fa952d8434..54ffd5c2a22d5f4370e9f21406d0106c0f150965 100644 --- a/extra/mariabackup/ds_buffer.h +++ b/extra/mariabackup/ds_buffer.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_compress.c b/extra/mariabackup/ds_compress.c index af848db2f24764fe2bd46fb417923f5c107c4bd2..5237b24fae9d29eb7e4079cd3d6c1c5f8aace47a 100644 --- a/extra/mariabackup/ds_compress.c +++ b/extra/mariabackup/ds_compress.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_compress.h b/extra/mariabackup/ds_compress.h index 8498c965e13b7ed8e6feff0aba74df06ad129562..f44c1acf3a643d4510332ee94600bfdcf6b148a1 100644 --- a/extra/mariabackup/ds_compress.h +++ b/extra/mariabackup/ds_compress.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_local.cc b/extra/mariabackup/ds_local.cc index f1068d251dc594636ed355c112f28261a344cee9..40a47b48e0c21c37abda70a8bb359e74a86f9e14 100644 --- a/extra/mariabackup/ds_local.cc +++ b/extra/mariabackup/ds_local.cc @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_local.h b/extra/mariabackup/ds_local.h index e30906b575d1eca913627fc9a3714d2e541fb2a6..5555a332d2109410a793dd53d55bf6e0f0a879c0 100644 --- a/extra/mariabackup/ds_local.h +++ b/extra/mariabackup/ds_local.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_stdout.c b/extra/mariabackup/ds_stdout.c index 391a34551951b1cbad66b1ca5fa7938300ccdbca..b5820e305418279721990afdc59b79ea4365b3bf 100644 --- a/extra/mariabackup/ds_stdout.c +++ b/extra/mariabackup/ds_stdout.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_stdout.h b/extra/mariabackup/ds_stdout.h index 58940264fef3c1f6bc325ab04b2b4afafcef6fd2..6174720d1cc8fbafa0393f812a68c1cdea21595b 100644 --- a/extra/mariabackup/ds_stdout.h +++ b/extra/mariabackup/ds_stdout.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_tmpfile.c b/extra/mariabackup/ds_tmpfile.c index 27a8d9688f44e68782cc246be9e9683a7ada9387..d9b5bc0b578747ae31969bc9cccc7421e5eb521d 100644 --- a/extra/mariabackup/ds_tmpfile.c +++ b/extra/mariabackup/ds_tmpfile.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_tmpfile.h b/extra/mariabackup/ds_tmpfile.h index c21f1a3f0b57b3f274d2cb9a35134afa41e2f7f2..24fa9ad69c328e20a90b7f453e34bdb163e99f14 100644 --- a/extra/mariabackup/ds_tmpfile.h +++ b/extra/mariabackup/ds_tmpfile.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_xbstream.c b/extra/mariabackup/ds_xbstream.c index 544929fb24c01270210b79509e50b191b5b878a1..b09a4552e0c1b0ee8d22fced76cdbf622c0ca59c 100644 --- a/extra/mariabackup/ds_xbstream.c +++ b/extra/mariabackup/ds_xbstream.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/ds_xbstream.h b/extra/mariabackup/ds_xbstream.h index 30f34ac83181693488ba032e436dd22f855dc4c7..acfbb33cd12343ae1b6c2388bda023583049de7f 100644 --- a/extra/mariabackup/ds_xbstream.h +++ b/extra/mariabackup/ds_xbstream.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/fil_cur.cc b/extra/mariabackup/fil_cur.cc index ce9aaecfc9cfa87a8d92a84d4516fc1733200a11..f0825d8c39d6016f8bd453020af318c454f94dba 100644 --- a/extra/mariabackup/fil_cur.cc +++ b/extra/mariabackup/fil_cur.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/fil_cur.h b/extra/mariabackup/fil_cur.h index f3601823a5a8170477732bc8c9e4b788ce6296b3..0c37fd154c3bc1601674f0283972827971267001 100644 --- a/extra/mariabackup/fil_cur.h +++ b/extra/mariabackup/fil_cur.h @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/innobackupex.cc b/extra/mariabackup/innobackupex.cc index a134abb314d8c282399823964b3da0298b09e9c2..5382f876f7417203fd819cfc321376b7efd6cedc 100644 --- a/extra/mariabackup/innobackupex.cc +++ b/extra/mariabackup/innobackupex.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA ******************************************************* @@ -34,8 +34,8 @@ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with -this program; if not, write to the Free Software Foundation, Inc., 59 Temple -Place, Suite 330, Boston, MA 02111-1307 USA +this program; if not, write to the Free Software Foundation, Inc., 51 Franklin +Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/innobackupex.h b/extra/mariabackup/innobackupex.h index e2ad9bd2511241d121f6552de69cc67c808a8799..ba1347412d1f0f35cbfeb22b55f83cc06e0428b1 100644 --- a/extra/mariabackup/innobackupex.h +++ b/extra/mariabackup/innobackupex.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/read_filt.cc b/extra/mariabackup/read_filt.cc index 05e6b7c86c7d6d406923d1423088070d16847fa5..787f1ca064177e54863c0861d1533595a7ee04ea 100644 --- a/extra/mariabackup/read_filt.cc +++ b/extra/mariabackup/read_filt.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/read_filt.h b/extra/mariabackup/read_filt.h index d16f4e1093d49d16f74eb2b64ea80e53da8f7530..edc395c5c3052b34dc3b3f349b4e14851577f945 100644 --- a/extra/mariabackup/read_filt.h +++ b/extra/mariabackup/read_filt.h @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/write_filt.cc b/extra/mariabackup/write_filt.cc index 6a206db07af4f73cd884b0d5c1d4a2844c55e0a8..d84f1dfe248709a48d0553f7bd0083cb2b4d3cf4 100644 --- a/extra/mariabackup/write_filt.cc +++ b/extra/mariabackup/write_filt.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/write_filt.h b/extra/mariabackup/write_filt.h index 69655db5b0b771f14166dafa2694a9fd3f268446..febf25f2a8a0741fdfc0bd596c1546322bef3d49 100644 --- a/extra/mariabackup/write_filt.h +++ b/extra/mariabackup/write_filt.h @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/wsrep.cc b/extra/mariabackup/wsrep.cc index 7b0b26d803adf8b9cd80d0e631cae4b29057c449..eab3d7b64d67726ee0b4863ca6a3baf2c14ca71d 100644 --- a/extra/mariabackup/wsrep.cc +++ b/extra/mariabackup/wsrep.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA ******************************************************* @@ -36,7 +36,7 @@ permission notice: You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xb0xb.h b/extra/mariabackup/xb0xb.h index 6b09306c77e2b42d060566791325cdbed7ca71c1..1e79c0b4268421b7affde761a62cb3b785ad7ef6 100644 --- a/extra/mariabackup/xb0xb.h +++ b/extra/mariabackup/xb0xb.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xb_regex.h b/extra/mariabackup/xb_regex.h index 2e07e434e274b0ee28a6734919ccdad8ae7ba9d7..9b8f5789eebd129eb163b5fd6fe56ef03144756b 100644 --- a/extra/mariabackup/xb_regex.h +++ b/extra/mariabackup/xb_regex.h @@ -12,7 +12,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xbcloud.cc b/extra/mariabackup/xbcloud.cc index 878b4c81023d3fdaa205a025500425b59091c98f..fed937be834d5d8be14a226454d480385d05b4f2 100644 --- a/extra/mariabackup/xbcloud.cc +++ b/extra/mariabackup/xbcloud.cc @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xbstream.c b/extra/mariabackup/xbstream.c index f3880f9ec03b1a6c7aab183e4accc2c89755d215..59e0095f63cf0915341ec1ea68c6bc098798d5db 100644 --- a/extra/mariabackup/xbstream.c +++ b/extra/mariabackup/xbstream.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xbstream.h b/extra/mariabackup/xbstream.h index 08b017ca5ce1c8e231305c68ec373cf635db6bae..702f2764734a4ff2d87b221433cdaf0eac7c6f3a 100644 --- a/extra/mariabackup/xbstream.h +++ b/extra/mariabackup/xbstream.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xbstream_read.c b/extra/mariabackup/xbstream_read.c index 8d19242301b3af7d96f5ff96891741f1f5cb3502..546578d055a464784e2d847037874677b4ede5eb 100644 --- a/extra/mariabackup/xbstream_read.c +++ b/extra/mariabackup/xbstream_read.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xbstream_write.c b/extra/mariabackup/xbstream_write.c index 978be71e7dd1955b7fec73fb3adf711dbc20943a..df8740a8ddb62bb6140d05324e0a63dacec05b90 100644 --- a/extra/mariabackup/xbstream_write.c +++ b/extra/mariabackup/xbstream_write.c @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xtrabackup.cc b/extra/mariabackup/xtrabackup.cc index e5d2474ba94ece212c08598bf3e4a0536df4864a..40539b1e6326bc0d360935dd42035b9bf04000ff 100644 --- a/extra/mariabackup/xtrabackup.cc +++ b/extra/mariabackup/xtrabackup.cc @@ -16,7 +16,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA ******************************************************* @@ -34,8 +34,8 @@ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with -this program; if not, write to the Free Software Foundation, Inc., 59 Temple -Place, Suite 330, Boston, MA 02111-1307 USA +this program; if not, write to the Free Software Foundation, Inc., 51 Franklin +Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/mariabackup/xtrabackup.h b/extra/mariabackup/xtrabackup.h index 38c0020830eee8382efda3e8f622794e01607a6b..50a2adb7b5f6da0080da8da8ad8ca7be453139f0 100644 --- a/extra/mariabackup/xtrabackup.h +++ b/extra/mariabackup/xtrabackup.h @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA *******************************************************/ diff --git a/extra/my_print_defaults.c b/extra/my_print_defaults.c index 07c95a79ddc7012575880a05b373b05c86f82079..5992af3bb780743c04edbff0de007cae0747e8a7 100644 --- a/extra/my_print_defaults.c +++ b/extra/my_print_defaults.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/extra/mysql_waitpid.c b/extra/mysql_waitpid.c index 5cdf1dedc274ddf6e5db212de007d96acd0ffdfe..e19f92261db1c2d16c12ee355d76fec7905a4274 100644 --- a/extra/mysql_waitpid.c +++ b/extra/mysql_waitpid.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Wait until a program dies */ diff --git a/extra/perror.c b/extra/perror.c index 062a04003c2ddebb27fa3dd29aab2c5819f07710..ce072759ba7eea38ae1c09386723a377fdf52d9b 100644 --- a/extra/perror.c +++ b/extra/perror.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Return error-text for system error messages and handler messages */ diff --git a/extra/readline/CMakeLists.txt b/extra/readline/CMakeLists.txt index bdecdd1fcce7a6cb6aacda1b73211efd0b3858ff..9a02d9b824755ac7337b9931c2de317ce16d4dc8 100644 --- a/extra/readline/CMakeLists.txt +++ b/extra/readline/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/extra/readline/COPYING b/extra/readline/COPYING index 18e17032a13b6b41ac9a0c044b1518b18495e8a9..7ca98023bb8aaf9475ed0f00116e91f3fd8999d6 100644 --- a/extra/readline/COPYING +++ b/extra/readline/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Also add information on how to contact you by electronic and paper mail. diff --git a/extra/readline/ansi_stdlib.h b/extra/readline/ansi_stdlib.h index 42ac66ebcc04734f7008b797a5b4dce42d983960..3c6da58c42fb76fbb80d6910926ba9458c51566c 100644 --- a/extra/readline/ansi_stdlib.h +++ b/extra/readline/ansi_stdlib.h @@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License along with Bash; see the file COPYING. If not, write to the Free Software - Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_STDLIB_H_) #define _STDLIB_H_ 1 diff --git a/extra/readline/bind.c b/extra/readline/bind.c index d979f244f4dc57e0205bd40944baa6e3c438fea9..282053e80e8fbaaf368b54f21588f620a12e214e 100644 --- a/extra/readline/bind.c +++ b/extra/readline/bind.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY diff --git a/extra/readline/callback.c b/extra/readline/callback.c index 08c2f0ce80b2d1275a01a0dbb444ef22cd6fe36e..df15a65d75eb5ec33230e6c40d103c163878a0e2 100644 --- a/extra/readline/callback.c +++ b/extra/readline/callback.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/chardefs.h b/extra/readline/chardefs.h index 6aa185d93833fdceee255d9dcc578daf7f83006c..0c3bf8334814d21808d1273efb6450f7aaae6c0b 100644 --- a/extra/readline/chardefs.h +++ b/extra/readline/chardefs.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #ifndef _CHARDEFS_H_ #define _CHARDEFS_H_ diff --git a/extra/readline/compat.c b/extra/readline/compat.c index c16771b8f29987d1cd613045e4c7e658bf56e546..9f9e3f855b674d8d09e07e382258c623dc413f90 100644 --- a/extra/readline/compat.c +++ b/extra/readline/compat.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/complete.c b/extra/readline/complete.c index b6c20789da4f0a40adb6e48205040aa907edbb55..44bf13821a497ff0163a256f3fafa4227ec54cd3 100644 --- a/extra/readline/complete.c +++ b/extra/readline/complete.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/configure.in b/extra/readline/configure.in index 949da72933ef4be16181ee55e769276757c32920..067e37ca6d4fe5f6fc07244e9f82ea4b08d68cce 100644 --- a/extra/readline/configure.in +++ b/extra/readline/configure.in @@ -20,7 +20,7 @@ dnl Process this file with autoconf to produce a configure script. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA. +# MA 02110-1335 USA. AC_REVISION([for Readline 5.2, version 2.61]) diff --git a/extra/readline/display.c b/extra/readline/display.c index 4226cdae5a29eca8f458a177e223d85afe8ca9b4..b8500f30bcce898bdecc95219407608ba18302dd 100644 --- a/extra/readline/display.c +++ b/extra/readline/display.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/emacs_keymap.c b/extra/readline/emacs_keymap.c index a42443f39d6148c51db4e49110449dae1d12feb2..31e6b49090bf2c7e2c52308c7bce460098ffdadd 100644 --- a/extra/readline/emacs_keymap.c +++ b/extra/readline/emacs_keymap.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (BUFSIZ) #include diff --git a/extra/readline/funmap.c b/extra/readline/funmap.c index d3a537dfacd28d095f94f1343d78bd783385b574..23b3ce196765c208c2ea88bf433ec6b98ec339cf 100644 --- a/extra/readline/funmap.c +++ b/extra/readline/funmap.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/histexpand.c b/extra/readline/histexpand.c index 73286614d5588d8c426f0521c7b3664674450725..38292c6045b7d4cadcd161aed2d3687a72c75c56 100644 --- a/extra/readline/histexpand.c +++ b/extra/readline/histexpand.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY diff --git a/extra/readline/histfile.c b/extra/readline/histfile.c index 1d433b98be48718b3a26db26558572a5d5a6706e..1ad828d4155cb5843b6d8054f89212aab858c6e6 100644 --- a/extra/readline/histfile.c +++ b/extra/readline/histfile.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ /* The goal is to make the implementation transparent, so that you don't have to know what data types are used, just what functions diff --git a/extra/readline/histlib.h b/extra/readline/histlib.h index 4418f537389998184909389fdcd0f4b4afc1d5c1..4d63ca7440ca96f0109e0979eed066dcd737e0b9 100644 --- a/extra/readline/histlib.h +++ b/extra/readline/histlib.h @@ -17,7 +17,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_HISTLIB_H_) #define _HISTLIB_H_ diff --git a/extra/readline/history.c b/extra/readline/history.c index f36bbe4bc53a9040a1d6943d8c4546374254a11e..a777229248c22fb62ee4b15eb1a208864525e78d 100644 --- a/extra/readline/history.c +++ b/extra/readline/history.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ /* The goal is to make the implementation transparent, so that you don't have to know what data types are used, just what functions diff --git a/extra/readline/history.h b/extra/readline/history.h index c196b0361e3f645c4d480d31d1e918621aec5837..dd8169dc51b4f7a2a813d32ae518b81e0c085f1a 100644 --- a/extra/readline/history.h +++ b/extra/readline/history.h @@ -17,7 +17,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #ifndef _HISTORY_H_ #define _HISTORY_H_ diff --git a/extra/readline/histsearch.c b/extra/readline/histsearch.c index dcf6b420b1b693c14478ba719813634601526dcd..43cac20a18aa22313a1ff4ed59641a4c1e67c131 100644 --- a/extra/readline/histsearch.c +++ b/extra/readline/histsearch.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY diff --git a/extra/readline/input.c b/extra/readline/input.c index 3f8eb65c07d608fea9e0998493d39b4205f7de7c..e88df08a299bc45c012b5ad12f6b5998121a8839 100644 --- a/extra/readline/input.c +++ b/extra/readline/input.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (__TANDEM) diff --git a/extra/readline/isearch.c b/extra/readline/isearch.c index 83829f4861c96cf57bb8a89e8300b512e3add4cd..750113f5dd8c2b95d42f72fbfb42d0d9b5540c10 100644 --- a/extra/readline/isearch.c +++ b/extra/readline/isearch.c @@ -23,7 +23,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/keymaps.c b/extra/readline/keymaps.c index 17436cf20bf3a0bcd10067b84ef4df4a09a6dddc..f431b9daaeddb2032c3e37359eb1849d5c512f39 100644 --- a/extra/readline/keymaps.c +++ b/extra/readline/keymaps.c @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with Readline; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/keymaps.h b/extra/readline/keymaps.h index 1de567ddc1e9e587a8765947316846175f1b46ee..64bd4c14c3976c4d692e661cc1ade36a80a54247 100644 --- a/extra/readline/keymaps.h +++ b/extra/readline/keymaps.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #ifndef _KEYMAPS_H_ #define _KEYMAPS_H_ diff --git a/extra/readline/kill.c b/extra/readline/kill.c index bfe6afe77fef25503212a74c3981a095e21fc63a..accda438537564eecc41dc926cb36b7fab8c752a 100644 --- a/extra/readline/kill.c +++ b/extra/readline/kill.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/macro.c b/extra/readline/macro.c index 7a26fc40c970ea8e7f2b9459412539573ac2b4b9..0dd02fd139ddab366ed885702d9c665fa601a43d 100644 --- a/extra/readline/macro.c +++ b/extra/readline/macro.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/mbutil.c b/extra/readline/mbutil.c index b3d5c1b0ea4e2d9988267fe81e3ffb95e96ba3b8..1d6d8bbf9a268fe0555a68b3ec5a638a7dddcaeb 100644 --- a/extra/readline/mbutil.c +++ b/extra/readline/mbutil.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/misc.c b/extra/readline/misc.c index 033a0dd94827410d465af8a212184e09024213aa..6d5f2732a796988e87c303ee4d03cf4e14367990 100644 --- a/extra/readline/misc.c +++ b/extra/readline/misc.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/nls.c b/extra/readline/nls.c index ddfca55d62d611da0b3ea54f26532bc7f45640a9..089ef8a6abd2c32b45dcb3bbd2ee25e133c3a44d 100644 --- a/extra/readline/nls.c +++ b/extra/readline/nls.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/parens.c b/extra/readline/parens.c index 6b2a4d8d263772aa0caabf08f8bef301305dc104..d9390e41b1e851e4d3d43e43872b1e8737b856ad 100644 --- a/extra/readline/parens.c +++ b/extra/readline/parens.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (__TANDEM) diff --git a/extra/readline/posixdir.h b/extra/readline/posixdir.h index fe4cb231173dd5cdba286d3c0a25a3e2a72cca05..156ad363872e1bc2873e905d85c06eda7323c711 100644 --- a/extra/readline/posixdir.h +++ b/extra/readline/posixdir.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with Bash; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ /* This file should be included instead of or . */ diff --git a/extra/readline/posixjmp.h b/extra/readline/posixjmp.h index a2c89b83d4e01aa9fc7f8410d956c9ec1fdb751c..94af2bd11a8e3a0f1fd68bf33e2920c6476436c0 100644 --- a/extra/readline/posixjmp.h +++ b/extra/readline/posixjmp.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with Bash; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #ifndef _POSIXJMP_H_ #define _POSIXJMP_H_ diff --git a/extra/readline/posixstat.h b/extra/readline/posixstat.h index d3eca09b634939bf6032e467ddc8824a2ce8c0f5..e095726080649dea946cb384f7140fd96a145655 100644 --- a/extra/readline/posixstat.h +++ b/extra/readline/posixstat.h @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with Bash; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ /* This file should be included instead of . It relies on the local sys/stat.h to work though. */ diff --git a/extra/readline/readline.c b/extra/readline/readline.c index d2e710875dc01091280b373fb8b453aff5e6c09b..77e8e17c216dea13788694e49242b6fb9cb387e3 100644 --- a/extra/readline/readline.c +++ b/extra/readline/readline.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/readline.h b/extra/readline/readline.h index 867b2e71641010fcf9c38c6b16245aa1b7d78211..ace11f7c96e477137143ac239c1beb51fdb69f56 100644 --- a/extra/readline/readline.h +++ b/extra/readline/readline.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_READLINE_H_) #define _READLINE_H_ diff --git a/extra/readline/rlconf.h b/extra/readline/rlconf.h index 4aacbb9e7f41e8c8450d17f3b3440c2b69edf07d..57103da7dc1caf03d08a53ed09d36fc6083c5b49 100644 --- a/extra/readline/rlconf.h +++ b/extra/readline/rlconf.h @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RLCONF_H_) #define _RLCONF_H_ diff --git a/extra/readline/rldefs.h b/extra/readline/rldefs.h index 732bd54baa9cb90f4e1ec18d051903b49df3e30e..f8334bd4566e3b3c76e8c31c4cc750d9579b40f6 100644 --- a/extra/readline/rldefs.h +++ b/extra/readline/rldefs.h @@ -21,7 +21,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RLDEFS_H_) #define _RLDEFS_H_ diff --git a/extra/readline/rlmbutil.h b/extra/readline/rlmbutil.h index 63c4055f9f440805ea074473fd7f535f0e3c70b8..3e8fa2221cf57cf5b542308b482d6b30d7d56540 100644 --- a/extra/readline/rlmbutil.h +++ b/extra/readline/rlmbutil.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RL_MBUTIL_H_) #define _RL_MBUTIL_H_ diff --git a/extra/readline/rlprivate.h b/extra/readline/rlprivate.h index a693bd988b6dda26a94a78398269dd9f61f40ca3..cf3d203819424ace77bc9e7df6a3e2bc95e87b8b 100644 --- a/extra/readline/rlprivate.h +++ b/extra/readline/rlprivate.h @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RL_PRIVATE_H_) #define _RL_PRIVATE_H_ diff --git a/extra/readline/rlshell.h b/extra/readline/rlshell.h index 629b0e03b46193d196be819a5759ccab3c7d5f55..8d5db8893b5ac466a2c3544ce38e8f03c8c58101 100644 --- a/extra/readline/rlshell.h +++ b/extra/readline/rlshell.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RL_SHELL_H_) #define _RL_SHELL_H_ diff --git a/extra/readline/rlstdc.h b/extra/readline/rlstdc.h index 2a2272895ce376f7c86e9515bab156ffbddc05bc..1bcaff3eef28e98901405206956683df494d15fb 100644 --- a/extra/readline/rlstdc.h +++ b/extra/readline/rlstdc.h @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with Bash; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RL_STDC_H_) #define _RL_STDC_H_ diff --git a/extra/readline/rltty.c b/extra/readline/rltty.c index ca8caee7de732a4925a2fd045bbf0642399d20ee..0efacf18ff243857398def6e9d6626ac7f80809c 100644 --- a/extra/readline/rltty.c +++ b/extra/readline/rltty.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/rltty.h b/extra/readline/rltty.h index 3a4770d25cba92753e102959a2bd1f29733d703c..3fa38bb9e40d4ceafcaad8f4983ceb004686d719 100644 --- a/extra/readline/rltty.h +++ b/extra/readline/rltty.h @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RLTTY_H_) #define _RLTTY_H_ diff --git a/extra/readline/rltypedefs.h b/extra/readline/rltypedefs.h index 2a0773b0672f2394e333b24ca9cf8b46700eefb3..2331662274bfb0ed2a7dd9ab66bb728821bf1d5c 100644 --- a/extra/readline/rltypedefs.h +++ b/extra/readline/rltypedefs.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #ifndef _RL_TYPEDEFS_H_ #define _RL_TYPEDEFS_H_ diff --git a/extra/readline/rlwinsize.h b/extra/readline/rlwinsize.h index ad671693c7bc8a9ecbacc62ebe717a889327f3fc..14a1f8bfafb6b520a5799da67f67d885c404c161 100644 --- a/extra/readline/rlwinsize.h +++ b/extra/readline/rlwinsize.h @@ -20,7 +20,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RLWINSIZE_H_) #define _RLWINSIZE_H_ diff --git a/extra/readline/savestring.c b/extra/readline/savestring.c index 9c431a0e8528be1e85af45c81cc26ef570b04530..2a9ad425c8efaca6b07f5d2aef6df053c79d216f 100644 --- a/extra/readline/savestring.c +++ b/extra/readline/savestring.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #include "config_readline.h" diff --git a/extra/readline/search.c b/extra/readline/search.c index cf50a7cc49939325962b98cb8771f629932fb466..9345be4f5bcfbb71da35ca6d65df40cb83cc495c 100644 --- a/extra/readline/search.c +++ b/extra/readline/search.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/shell.c b/extra/readline/shell.c index d67f3e650171cd8327840c5e67c1012bf5b1011a..3b331e927c8074df482866d9a50e9a700e7def33 100644 --- a/extra/readline/shell.c +++ b/extra/readline/shell.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/signals.c b/extra/readline/signals.c index db392b3dcc4e1734a9364664c1bbccb9b6eb55b4..cda33b7c7c21b87daa94163280211a933220232c 100644 --- a/extra/readline/signals.c +++ b/extra/readline/signals.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/tcap.h b/extra/readline/tcap.h index d1e212869cedbdd29b05145fce3ed16cb0f6d763..28ec669b356a8bdfd12f3e4717577985b141fbe0 100644 --- a/extra/readline/tcap.h +++ b/extra/readline/tcap.h @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_RLTCAP_H_) #define _RLTCAP_H_ diff --git a/extra/readline/terminal.c b/extra/readline/terminal.c index 43086d42e2df00093473a01d86fc038ac7692630..27397c8208ac338823ceac462700e227c2a00a9e 100644 --- a/extra/readline/terminal.c +++ b/extra/readline/terminal.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/text.c b/extra/readline/text.c index 90ad7787000f90764678abc20e0c194c843d5ee7..c9cceac96eb656d4798211a743a60d47592541da 100644 --- a/extra/readline/text.c +++ b/extra/readline/text.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/tilde.c b/extra/readline/tilde.c index 3d84fd4815a88522bbdb840f1faf033a021103ee..aace95d783e8b8d703847c46600b0b39ee7d4c79 100644 --- a/extra/readline/tilde.c +++ b/extra/readline/tilde.c @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with Readline; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if defined (HAVE_CONFIG_H) # include "config_readline.h" diff --git a/extra/readline/tilde.h b/extra/readline/tilde.h index 6060ec6506d6824d46c90f51fe9d430540822c25..56986c9741e20e31de669c0683a151d689138068 100644 --- a/extra/readline/tilde.h +++ b/extra/readline/tilde.h @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_TILDE_H_) # define _TILDE_H_ diff --git a/extra/readline/undo.c b/extra/readline/undo.c index 6b217e45e35235d7b87b7769cde0ee59ac1b30d9..f9931b4aabe135f8e25c924eaaf963c5c1125de2 100644 --- a/extra/readline/undo.c +++ b/extra/readline/undo.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/util.c b/extra/readline/util.c index 7c98bcaaefe05222c96173d9e77312d7ec822ec4..fafb5d8a1acf534e86c9fe1a481af7096a2011cf 100644 --- a/extra/readline/util.c +++ b/extra/readline/util.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/vi_keymap.c b/extra/readline/vi_keymap.c index 85a90fe7086aed17b5e3cbf64a995cfa849b64f8..89acdf22e67c5ffe12b30f1c17ebac30092b74b9 100644 --- a/extra/readline/vi_keymap.c +++ b/extra/readline/vi_keymap.c @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (BUFSIZ) #include diff --git a/extra/readline/vi_mode.c b/extra/readline/vi_mode.c index 7a7dda760dfc20bf5083b2576b3856def191956b..cae0b29e1ea20c2847f9a30752b2110d34827d4b 100644 --- a/extra/readline/vi_mode.c +++ b/extra/readline/vi_mode.c @@ -19,7 +19,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY /* **************************************************************** */ diff --git a/extra/readline/xmalloc.c b/extra/readline/xmalloc.c index 60a142ec1c3d132f04f162dd449d6142430e4b7e..73d760ae1c0d7e75daadafa3c104d31a83fbcfad 100644 --- a/extra/readline/xmalloc.c +++ b/extra/readline/xmalloc.c @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with Readline; see the file COPYING. If not, write to the Free - Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #define READLINE_LIBRARY #if defined (HAVE_CONFIG_H) diff --git a/extra/readline/xmalloc.h b/extra/readline/xmalloc.h index 58b17f39f3d32565dd53ed551a39602c2682fbdb..5a01449b32be2d69892caaf93f127e8175ac8760 100644 --- a/extra/readline/xmalloc.h +++ b/extra/readline/xmalloc.h @@ -18,7 +18,7 @@ The GNU General Public License is often shipped with GNU software, and is generally kept in a file called COPYING or LICENSE. If you do not have a copy of the license, write to the Free Software Foundation, - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #if !defined (_XMALLOC_H_) #define _XMALLOC_H_ diff --git a/extra/replace.c b/extra/replace.c index eabf953837b80e061b62a264ee9edd09e78e9a21..b1b1700e98fd1cb1439ac2df182f7ec1e9659be8 100644 --- a/extra/replace.c +++ b/extra/replace.c @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA */ + 02110-1335 USA */ /* Replace strings in textfile diff --git a/extra/resolve_stack_dump.c b/extra/resolve_stack_dump.c index 576710e0bdee3fc963dd1550c1773b81b6bf21cf..44c43eaeb9099686ecefab6b5d5a87197062f193 100644 --- a/extra/resolve_stack_dump.c +++ b/extra/resolve_stack_dump.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Resolve numeric stack dump produced by mysqld 3.23.30 and later versions into symbolic names. By Sasha Pachev diff --git a/extra/resolveip.c b/extra/resolveip.c index b6840d9d46338a3ac3935ed35e4dfe2ab52ee877..d3a33282c2ab49c82b75faf759b2965fc421f808 100644 --- a/extra/resolveip.c +++ b/extra/resolveip.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Resolves IP's to hostname and hostnames to IP's */ diff --git a/extra/yassl/CMakeLists.txt b/extra/yassl/CMakeLists.txt index c456af9be159b60a93dc66da1d005335147607d2..41408b01281e2dc399662e81e264babd7328e1ac 100644 --- a/extra/yassl/CMakeLists.txt +++ b/extra/yassl/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/include diff --git a/extra/yassl/COPYING b/extra/yassl/COPYING index d20476ee118525521333230e941d50541f24f371..98861a5402d67f0a31d624bc9a8552116b3d0ff7 100644 --- a/extra/yassl/COPYING +++ b/extra/yassl/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Also add information on how to contact you by electronic and paper mail. diff --git a/extra/yassl/examples/client/client.cpp b/extra/yassl/examples/client/client.cpp index 102ed61734c9945a36849ba1dd4152ab6a60a4a7..d2c07897f3cf473c914ae10958240aca4fe8e8f4 100644 --- a/extra/yassl/examples/client/client.cpp +++ b/extra/yassl/examples/client/client.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* client.cpp */ diff --git a/extra/yassl/examples/echoclient/echoclient.cpp b/extra/yassl/examples/echoclient/echoclient.cpp index fabcfbec29ef20e11f09893e1b077537e2939011..99a8b4d9c88565154a7b654414554b643b7249de 100644 --- a/extra/yassl/examples/echoclient/echoclient.cpp +++ b/extra/yassl/examples/echoclient/echoclient.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* echoclient.cpp */ diff --git a/extra/yassl/examples/echoserver/echoserver.cpp b/extra/yassl/examples/echoserver/echoserver.cpp index 82696568ace0f671a4770a1e5ba572c93c3216c8..3f63946989539046aa8d41199aaa520ff4dd7dbb 100644 --- a/extra/yassl/examples/echoserver/echoserver.cpp +++ b/extra/yassl/examples/echoserver/echoserver.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* echoserver.cpp */ diff --git a/extra/yassl/examples/server/server.cpp b/extra/yassl/examples/server/server.cpp index 1540f6d3689ffb1349e54d99e76890ec28fb8fc0..8a3a0a7db0ef14481db8f5daefc5dbbb57796967 100644 --- a/extra/yassl/examples/server/server.cpp +++ b/extra/yassl/examples/server/server.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* server.cpp */ diff --git a/extra/yassl/include/buffer.hpp b/extra/yassl/include/buffer.hpp index 77d2ed8193ca45ebecacda173c1b6aad3f7b7fda..71bea3c109add04467ffb01bb42f9c6fac65201f 100644 --- a/extra/yassl/include/buffer.hpp +++ b/extra/yassl/include/buffer.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/cert_wrapper.hpp b/extra/yassl/include/cert_wrapper.hpp index ad4c34d65c71846450b57060feb41a37f3ffb463..d32870fcfc1e1175ff9e782d6cf1938c202cce22 100644 --- a/extra/yassl/include/cert_wrapper.hpp +++ b/extra/yassl/include/cert_wrapper.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/crypto_wrapper.hpp b/extra/yassl/include/crypto_wrapper.hpp index 0472b304679f6d5290c359800ea3e2712fa42f88..97cd989b78d30447c527737fb21edb050805e187 100644 --- a/extra/yassl/include/crypto_wrapper.hpp +++ b/extra/yassl/include/crypto_wrapper.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/factory.hpp b/extra/yassl/include/factory.hpp index 5c60335fbc2ec4e1bbbea08f3c6d939c3aa89e2a..e0f420844fbe40f8d46a2620b1e14383e6891dd0 100644 --- a/extra/yassl/include/factory.hpp +++ b/extra/yassl/include/factory.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* The factory header defines an Object Factory, used by SSL message and diff --git a/extra/yassl/include/handshake.hpp b/extra/yassl/include/handshake.hpp index a8ed0545ae4efc143d86ae4439645a061fe1f56b..dc472690c73cc122b4d9d4087b553203a2a1208e 100644 --- a/extra/yassl/include/handshake.hpp +++ b/extra/yassl/include/handshake.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* The handshake header declares function prototypes for creating and reading diff --git a/extra/yassl/include/lock.hpp b/extra/yassl/include/lock.hpp index 5273f92f151c26a34afa67710884cd9a315c65ae..3f66ea145bfed8e1cff422f7d503d3eec2b0d89c 100644 --- a/extra/yassl/include/lock.hpp +++ b/extra/yassl/include/lock.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* lock.hpp provides an os specific Lock, locks mutex on entry and unlocks diff --git a/extra/yassl/include/log.hpp b/extra/yassl/include/log.hpp index faaf68e64a16c03e8ddd6aac22f95076a811ef82..8dc33684a43b8087579220fab26705f46cdc806c 100644 --- a/extra/yassl/include/log.hpp +++ b/extra/yassl/include/log.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/openssl/crypto.h b/extra/yassl/include/openssl/crypto.h index 103fcbb0e30e803e4daec888356a558fbb935e3d..f229f8b612c58eea079f9ba17131228db26fbd80 100644 --- a/extra/yassl/include/openssl/crypto.h +++ b/extra/yassl/include/openssl/crypto.h @@ -14,12 +14,12 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* crypto.h for openSSL */ -#ifndef ysSSL_crypto_h__ +#ifndef yaSSL_crypto_h__ #define yaSSL_crypto_h__ #ifdef YASSL_PREFIX diff --git a/extra/yassl/include/openssl/des.h b/extra/yassl/include/openssl/des.h index f7394b65634c0200f88185ed5559ef241b82188f..71cd7e9b1a951d69bf5e08a65f05c991298de8bb 100644 --- a/extra/yassl/include/openssl/des.h +++ b/extra/yassl/include/openssl/des.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* des.h for openssl */ diff --git a/extra/yassl/include/openssl/des_old.h b/extra/yassl/include/openssl/des_old.h index b6e2e3e969a91e66c65afebd9dcf44b3b8c5bad1..b24671854450fee8816baad07c45355286f71121 100644 --- a/extra/yassl/include/openssl/des_old.h +++ b/extra/yassl/include/openssl/des_old.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* des_old.h for openvn */ diff --git a/extra/yassl/include/openssl/engine.h b/extra/yassl/include/openssl/engine.h index 15ddcd146405c72f089ceb3458e27e6346f1eedb..52c43f08010176e013f148891a83c7bb5ff2af3b 100644 --- a/extra/yassl/include/openssl/engine.h +++ b/extra/yassl/include/openssl/engine.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* engine.h for libcurl */ diff --git a/extra/yassl/include/openssl/err.h b/extra/yassl/include/openssl/err.h index 948474296faf0bc0c1e41f2586c27a8e27eb345a..fc96330e90e2070e137812541cf6e1d91099e18a 100644 --- a/extra/yassl/include/openssl/err.h +++ b/extra/yassl/include/openssl/err.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* err.h for openssl */ diff --git a/extra/yassl/include/openssl/evp.h b/extra/yassl/include/openssl/evp.h index 6aa7335dabc5f29b4eb2ce915fa94ae4d7d6471e..a57c4a9088b570fcc45cd3c6e4554578cd97dc9b 100644 --- a/extra/yassl/include/openssl/evp.h +++ b/extra/yassl/include/openssl/evp.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* evp.h for openSSL */ diff --git a/extra/yassl/include/openssl/generate_prefix_files.pl b/extra/yassl/include/openssl/generate_prefix_files.pl index 8fbfb146955294665473fd6b5b47d5fc9397e244..d7609aebaf30ca5f9b11890186d8ea429c56f537 100755 --- a/extra/yassl/include/openssl/generate_prefix_files.pl +++ b/extra/yassl/include/openssl/generate_prefix_files.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA # # This script generates defines for all functions diff --git a/extra/yassl/include/openssl/hmac.h b/extra/yassl/include/openssl/hmac.h index 5da6644e1de1aa10866313e3ddeaf3f2d8fc2e5c..0a3861c0937c4b792cbe1f6b59709272e01cdfec 100644 --- a/extra/yassl/include/openssl/hmac.h +++ b/extra/yassl/include/openssl/hmac.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* hmac.h for openvpn */ diff --git a/extra/yassl/include/openssl/lhash.h b/extra/yassl/include/openssl/lhash.h index 6d64df7d9d2c3cfdc4c4f75838be53aa2184cc25..bde2d3742b3342715a0337701b191190f27bfff2 100644 --- a/extra/yassl/include/openssl/lhash.h +++ b/extra/yassl/include/openssl/lhash.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* lhash.h for openSSL */ diff --git a/extra/yassl/include/openssl/md4.h b/extra/yassl/include/openssl/md4.h index 8a864993c9c5f2cdf15a6d796982d5579d78472e..360499018cbb217635dd4c867a8341e0d86d3fec 100644 --- a/extra/yassl/include/openssl/md4.h +++ b/extra/yassl/include/openssl/md4.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* md4.h for libcurl */ diff --git a/extra/yassl/include/openssl/md5.h b/extra/yassl/include/openssl/md5.h index b54ebcd910e5560e7a4b0643b8b39b0bac42eb59..abe6200a4cc6aece633a1019e82a0dd73553c8b9 100644 --- a/extra/yassl/include/openssl/md5.h +++ b/extra/yassl/include/openssl/md5.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* md5.h for openssl */ diff --git a/extra/yassl/include/openssl/objects.h b/extra/yassl/include/openssl/objects.h index ed2c02945272d64f65868688ac51999a16d8ae31..fb9a265a19c012008cc0d98f40b1f20ed2ea89e9 100644 --- a/extra/yassl/include/openssl/objects.h +++ b/extra/yassl/include/openssl/objects.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* objects.h for openvpn */ diff --git a/extra/yassl/include/openssl/opensslv.h b/extra/yassl/include/openssl/opensslv.h index 88b9ca6d26deed83f512179f381b7b157dfeed81..477d26566506794c519d852cc6042c0b6d4453c8 100644 --- a/extra/yassl/include/openssl/opensslv.h +++ b/extra/yassl/include/openssl/opensslv.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* opensslv.h compatibility */ diff --git a/extra/yassl/include/openssl/pem.h b/extra/yassl/include/openssl/pem.h index c467e461d7fb228401e504c9bd0c83584b1d1a38..4b308a58ad8c6671291319585eed68a2bfef15a1 100644 --- a/extra/yassl/include/openssl/pem.h +++ b/extra/yassl/include/openssl/pem.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* pem.h for libcurl */ diff --git a/extra/yassl/include/openssl/pkcs12.h b/extra/yassl/include/openssl/pkcs12.h index c3f8ee6796818fd11c555655585e3783876ccc25..4f848209cdb90d7a03dec9496df997fa858b2ac9 100644 --- a/extra/yassl/include/openssl/pkcs12.h +++ b/extra/yassl/include/openssl/pkcs12.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* pkcs12.h for libcurl */ diff --git a/extra/yassl/include/openssl/prefix_crypto.h b/extra/yassl/include/openssl/prefix_crypto.h index 895dd51a23f13a9abee34cf5983cbbb59efd7770..acf3e7bd7d3ec81b926860ac2726fea2af16b9ac 100644 --- a/extra/yassl/include/openssl/prefix_crypto.h +++ b/extra/yassl/include/openssl/prefix_crypto.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ #define SSLeay_version yaSSLeay_version diff --git a/extra/yassl/include/openssl/prefix_ssl.h b/extra/yassl/include/openssl/prefix_ssl.h index 19725206cf8dfeac7a2c8ef0b24411f581ecd21e..7698dcf73b50e133489bd8530cc581b531f7a6d2 100644 --- a/extra/yassl/include/openssl/prefix_ssl.h +++ b/extra/yassl/include/openssl/prefix_ssl.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ #define Copyright yaCopyright diff --git a/extra/yassl/include/openssl/rand.h b/extra/yassl/include/openssl/rand.h index 9e0cedf3e8653002241eb5266611b5d40eb7ab09..7f605915efd9a3c6fe8fcae9b3f1b6cce6fe9076 100644 --- a/extra/yassl/include/openssl/rand.h +++ b/extra/yassl/include/openssl/rand.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* rand.h for openSSL */ diff --git a/extra/yassl/include/openssl/rsa.h b/extra/yassl/include/openssl/rsa.h index 95305a84ba5967e28279941ee1a2df854f51ba69..453161a7c21f6910685415dc3e9b1e96856d4ed7 100644 --- a/extra/yassl/include/openssl/rsa.h +++ b/extra/yassl/include/openssl/rsa.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* rsa.h for openSSL */ diff --git a/extra/yassl/include/openssl/sha.h b/extra/yassl/include/openssl/sha.h index 5b7c6bd238a8556cb0b988295fdf0985f8fb0a6e..af0973098460f6a89aa5d0a8098e117dddf528d9 100644 --- a/extra/yassl/include/openssl/sha.h +++ b/extra/yassl/include/openssl/sha.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* sha.h for openvpn */ diff --git a/extra/yassl/include/openssl/ssl.h b/extra/yassl/include/openssl/ssl.h index a5ccef102b9b0a46f9e0eb676fdda1c7d067c89d..d9850b51c767ce545f5d5dcda06474fb04155303 100644 --- a/extra/yassl/include/openssl/ssl.h +++ b/extra/yassl/include/openssl/ssl.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* ssl.h defines openssl compatibility layer diff --git a/extra/yassl/include/openssl/transport_types.h b/extra/yassl/include/openssl/transport_types.h index 229d7c14eb3a8e2a74c6565a7e9449ec5f26201c..3c31eb3d822d7681132f56366f69e5ac26890dd2 100644 --- a/extra/yassl/include/openssl/transport_types.h +++ b/extra/yassl/include/openssl/transport_types.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ #ifndef yaSSL_transport_types_h__ diff --git a/extra/yassl/include/openssl/x509.h b/extra/yassl/include/openssl/x509.h index 74eb83eb13f7c0e0dc2a1b9cae3cb4e52aa3a868..dd79e6833ec1c9d7c48301af7d42d5dfe57f7adc 100644 --- a/extra/yassl/include/openssl/x509.h +++ b/extra/yassl/include/openssl/x509.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* x509.h for libcurl */ diff --git a/extra/yassl/include/openssl/x509v3.h b/extra/yassl/include/openssl/x509v3.h index b48e9b485d4eeb147780f9d7ddb8f6c63554591b..4a7a2175ebef80a7504b5294dc9cf269222b9824 100644 --- a/extra/yassl/include/openssl/x509v3.h +++ b/extra/yassl/include/openssl/x509v3.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* x509v3.h for libcurl */ diff --git a/extra/yassl/include/socket_wrapper.hpp b/extra/yassl/include/socket_wrapper.hpp index ee4c1fbc79a6a6ea5427c79d475aa6c995e11fad..3fc9c7ee95a6292efe0b48bff4088d53f299cdae 100644 --- a/extra/yassl/include/socket_wrapper.hpp +++ b/extra/yassl/include/socket_wrapper.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/timer.hpp b/extra/yassl/include/timer.hpp index 1587c079ba0829592ba35d2fa3bdd085cb1af5ff..57b4022484b255e7906a6f946befe96b75cf333f 100644 --- a/extra/yassl/include/timer.hpp +++ b/extra/yassl/include/timer.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* timer.hpp provides a high res and low res timers diff --git a/extra/yassl/include/yassl.hpp b/extra/yassl/include/yassl.hpp index e7b9a6f25267cdb7ed2a2b587f762b0cbb986e97..ff6869a3ec4abb3b63cadc5db99ac03a948fc4e7 100644 --- a/extra/yassl/include/yassl.hpp +++ b/extra/yassl/include/yassl.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/yassl_error.hpp b/extra/yassl/include/yassl_error.hpp index d63244dca90e35ab7f1c80ae607259e776f92254..bc97058d881ca5772bf51b4b8d5a75062cde0933 100644 --- a/extra/yassl/include/yassl_error.hpp +++ b/extra/yassl/include/yassl_error.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/yassl_imp.hpp b/extra/yassl/include/yassl_imp.hpp index a952da0d3d9a5c19d90b1f1689ab153f581d6e7d..fbd2ebb93a7283ddae3a13bb8ec5b70d7c03f28a 100644 --- a/extra/yassl/include/yassl_imp.hpp +++ b/extra/yassl/include/yassl_imp.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* yaSSL implementation header defines all strucutres from the SSL.v3 diff --git a/extra/yassl/include/yassl_int.hpp b/extra/yassl/include/yassl_int.hpp index 781eaa38dda40f662ad60e552b160c7da2c037c6..15fd99450f70291e0774a569c054079fdaeef031 100644 --- a/extra/yassl/include/yassl_int.hpp +++ b/extra/yassl/include/yassl_int.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/include/yassl_types.hpp b/extra/yassl/include/yassl_types.hpp index 129661c58ed2cc6ace8eedafca53fefcee1df233..3132d75a6ff57211af00d8241eae056ec3eae111 100644 --- a/extra/yassl/include/yassl_types.hpp +++ b/extra/yassl/include/yassl_types.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* yaSSL types header defines all constants, enums, and typedefs diff --git a/extra/yassl/src/buffer.cpp b/extra/yassl/src/buffer.cpp index 532da3875a7c967c95dd618c0b9b22e5eb3d7aa0..919aa9c7436d5992486e807bac6fdc6cf6320d32 100644 --- a/extra/yassl/src/buffer.cpp +++ b/extra/yassl/src/buffer.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/cert_wrapper.cpp b/extra/yassl/src/cert_wrapper.cpp index 1092e428351b28c084a8e6f82fc17f5cde01a0c9..bb2ab2953e18732c7c407668e8290891bbcd4210 100644 --- a/extra/yassl/src/cert_wrapper.cpp +++ b/extra/yassl/src/cert_wrapper.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/crypto_wrapper.cpp b/extra/yassl/src/crypto_wrapper.cpp index 031f75608017493dc3b6842c48a73ac72eb1df78..acafea5005e0c644d97bb36f74ba056180418ace 100644 --- a/extra/yassl/src/crypto_wrapper.cpp +++ b/extra/yassl/src/crypto_wrapper.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* The crypto wrapper source implements the policies for the cipher diff --git a/extra/yassl/src/handshake.cpp b/extra/yassl/src/handshake.cpp index 6e181a997bd95e3aa78147d09c62aae9965a2a3f..91d3d6b59148cfb95d6e15f60363cf64641ec7a7 100644 --- a/extra/yassl/src/handshake.cpp +++ b/extra/yassl/src/handshake.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/lock.cpp b/extra/yassl/src/lock.cpp index c74ea1c6b7641622c9b1e0ada8856d42e7f4df61..44cbcc1151fe4c3eccb534a1e863e77afe00230a 100644 --- a/extra/yassl/src/lock.cpp +++ b/extra/yassl/src/lock.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* Locking functions diff --git a/extra/yassl/src/log.cpp b/extra/yassl/src/log.cpp index c4be306a7b8bf2e254ccb7569db01ecf59ec5632..5adbe401d7a68c7bc2ea6ee7628a9c8cb61870cf 100644 --- a/extra/yassl/src/log.cpp +++ b/extra/yassl/src/log.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* Debug logging functions diff --git a/extra/yassl/src/make.bat b/extra/yassl/src/make.bat index cbe5f3f71b2def4decaf30196c811dca2aa1dbd4..da7cc315382f9ffc6a221cec63d3db5459ca7acf 100755 --- a/extra/yassl/src/make.bat +++ b/extra/yassl/src/make.bat @@ -11,7 +11,7 @@ REM GNU General Public License for more details. REM REM You should have received a copy of the GNU General Public License REM along with this program; if not, write to the Free Software -REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA REM quick and dirty build file for testing different MSDEVs setlocal diff --git a/extra/yassl/src/socket_wrapper.cpp b/extra/yassl/src/socket_wrapper.cpp index 9b099973578e084824d532af68ac7bb893c78aef..759a96600fef47a73d20285ed81db242c4ae911d 100644 --- a/extra/yassl/src/socket_wrapper.cpp +++ b/extra/yassl/src/socket_wrapper.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/ssl.cpp b/extra/yassl/src/ssl.cpp index 28927c41c5cc3298d756896e5458889109b331f4..b09a952dd819404de2b946c27d1a1e9a8c39d605 100644 --- a/extra/yassl/src/ssl.cpp +++ b/extra/yassl/src/ssl.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* SSL source implements all openssl compatibility API functions diff --git a/extra/yassl/src/timer.cpp b/extra/yassl/src/timer.cpp index 0c3f044c75f108c48c5fb68a7a849ab3e08ec28b..dadb3ebf378b7310f7b27da15394149aa0bda8d7 100644 --- a/extra/yassl/src/timer.cpp +++ b/extra/yassl/src/timer.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* timer.cpp implements a high res and low res timer diff --git a/extra/yassl/src/yassl.cpp b/extra/yassl/src/yassl.cpp index b6b9a87e09ad6e1ee982afce2b0a1983cc96470d..8960035940195422e7a667b0634133736afc4c56 100644 --- a/extra/yassl/src/yassl.cpp +++ b/extra/yassl/src/yassl.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/yassl_error.cpp b/extra/yassl/src/yassl_error.cpp index f339655be3d4fbc303669d86160df184c4e462ab..bb3825ca972e3f603a4e53a111e670c4de64f188 100644 --- a/extra/yassl/src/yassl_error.cpp +++ b/extra/yassl/src/yassl_error.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/src/yassl_imp.cpp b/extra/yassl/src/yassl_imp.cpp index 971a5b6654ee8d0c7a0aa418c527d548ce722366..a4b1b50e10f0003c362dea86ec7699c0bed886c6 100644 --- a/extra/yassl/src/yassl_imp.cpp +++ b/extra/yassl/src/yassl_imp.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* yaSSL source implements all SSL.v3 secification structures. diff --git a/extra/yassl/src/yassl_int.cpp b/extra/yassl/src/yassl_int.cpp index 884e8b5fa9ddfe2d2e11e045e80b7531c1b12631..78e541394710aeba35a5660aea967419df240e78 100644 --- a/extra/yassl/src/yassl_int.cpp +++ b/extra/yassl/src/yassl_int.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/CMakeLists.txt b/extra/yassl/taocrypt/CMakeLists.txt index 7d95348c6e76f0de312888e122a623c3eab4047b..ebfa70e8799f28a111b5f408eb156a309720471a 100644 --- a/extra/yassl/taocrypt/CMakeLists.txt +++ b/extra/yassl/taocrypt/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include) diff --git a/extra/yassl/taocrypt/COPYING b/extra/yassl/taocrypt/COPYING index d20476ee118525521333230e941d50541f24f371..98861a5402d67f0a31d624bc9a8552116b3d0ff7 100644 --- a/extra/yassl/taocrypt/COPYING +++ b/extra/yassl/taocrypt/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Also add information on how to contact you by electronic and paper mail. diff --git a/extra/yassl/taocrypt/benchmark/benchmark.cpp b/extra/yassl/taocrypt/benchmark/benchmark.cpp index 834f340b651e9dfcfecd2f5102d3ce316d778a4c..6afad32ed4149026888660020b0fdf31139be1b4 100644 --- a/extra/yassl/taocrypt/benchmark/benchmark.cpp +++ b/extra/yassl/taocrypt/benchmark/benchmark.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ // benchmark.cpp diff --git a/extra/yassl/taocrypt/benchmark/make.bat b/extra/yassl/taocrypt/benchmark/make.bat index f6971f72021d78cd41d744affb7203d1c06b178d..8f445986c7e771cfc6b5b484695ca505f60166db 100755 --- a/extra/yassl/taocrypt/benchmark/make.bat +++ b/extra/yassl/taocrypt/benchmark/make.bat @@ -11,7 +11,7 @@ REM GNU General Public License for more details. REM REM You should have received a copy of the GNU General Public License REM along with this program; if not, write to the Free Software -REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA REM quick and dirty build file for testing different MSDEVs setlocal diff --git a/extra/yassl/taocrypt/include/aes.hpp b/extra/yassl/taocrypt/include/aes.hpp index bccf6e73fc720f26b756a07307e142267e19ad1d..191f294b2b57d1132f0f4dfdfcdd9b6ca2f64ff0 100644 --- a/extra/yassl/taocrypt/include/aes.hpp +++ b/extra/yassl/taocrypt/include/aes.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* aes.hpp defines AES diff --git a/extra/yassl/taocrypt/include/algebra.hpp b/extra/yassl/taocrypt/include/algebra.hpp index e084172b93f770b8a58c1b88f2b660447abb471a..b216e5cccca828b47f6ac66a6340380a40fabc66 100644 --- a/extra/yassl/taocrypt/include/algebra.hpp +++ b/extra/yassl/taocrypt/include/algebra.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's algebra.h from CryptoPP */ diff --git a/extra/yassl/taocrypt/include/arc4.hpp b/extra/yassl/taocrypt/include/arc4.hpp index 333d057168f44c61dc8d86541b87681bae92b0ba..ed6a35e054acafe60768d67a5225a32a0dfc23dd 100644 --- a/extra/yassl/taocrypt/include/arc4.hpp +++ b/extra/yassl/taocrypt/include/arc4.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* arc4.hpp defines ARC4 diff --git a/extra/yassl/taocrypt/include/asn.hpp b/extra/yassl/taocrypt/include/asn.hpp index 999e853b941a5274032492b0c07c59b67121ed5e..e8a8820ed1ac3107ec8875f5b16b81a9736c8f88 100644 --- a/extra/yassl/taocrypt/include/asn.hpp +++ b/extra/yassl/taocrypt/include/asn.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* asn.hpp provides ASN1 BER, PublicKey, and x509v3 decoding diff --git a/extra/yassl/taocrypt/include/block.hpp b/extra/yassl/taocrypt/include/block.hpp index 1e4bd454b0684a931608b2dbca48f6c5e8cd9db3..b5958a06955f7e08f9153e48920483015f57b37c 100644 --- a/extra/yassl/taocrypt/include/block.hpp +++ b/extra/yassl/taocrypt/include/block.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/include/blowfish.hpp b/extra/yassl/taocrypt/include/blowfish.hpp index 347cf05de4b85f26edfb95527f811b2d38da9c43..74ea7f9948031114b4c3af1e149fbdcfef06cec4 100644 --- a/extra/yassl/taocrypt/include/blowfish.hpp +++ b/extra/yassl/taocrypt/include/blowfish.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* blowfish.hpp defines Blowfish diff --git a/extra/yassl/taocrypt/include/coding.hpp b/extra/yassl/taocrypt/include/coding.hpp index 8c30169c7651950b8786965663eeabfa29c339fb..758ac4526739b419e3d9fa94acf2c41d6bc88fcb 100644 --- a/extra/yassl/taocrypt/include/coding.hpp +++ b/extra/yassl/taocrypt/include/coding.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* coding.hpp defines hex and base64 encoding/decoing diff --git a/extra/yassl/taocrypt/include/des.hpp b/extra/yassl/taocrypt/include/des.hpp index d88e9ef2f4672126b4bfbc2492c579071c9b1ad9..074cc80d3dde81035b6dc638372154bde0f1d99e 100644 --- a/extra/yassl/taocrypt/include/des.hpp +++ b/extra/yassl/taocrypt/include/des.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* des.hpp defines DES, DES_EDE2, and DES_EDE3 diff --git a/extra/yassl/taocrypt/include/dh.hpp b/extra/yassl/taocrypt/include/dh.hpp index 2dff8dcd58e9789566c5687f36a079c36294f1ea..84c41004107d5df024ed5e1a8fdbeb483b8847bd 100644 --- a/extra/yassl/taocrypt/include/dh.hpp +++ b/extra/yassl/taocrypt/include/dh.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* dh.hpp provides Diffie-Hellman support diff --git a/extra/yassl/taocrypt/include/dsa.hpp b/extra/yassl/taocrypt/include/dsa.hpp index 9dffcbe446049ab9f2ae7926a98ac4eea1b35e38..e35b56a1d917f687a3272fd7489c3890c6b7c009 100644 --- a/extra/yassl/taocrypt/include/dsa.hpp +++ b/extra/yassl/taocrypt/include/dsa.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* dsa.hpp provides Digitial Signautre Algorithm see FIPS 186-2 diff --git a/extra/yassl/taocrypt/include/error.hpp b/extra/yassl/taocrypt/include/error.hpp index 49bc62e6e8dd2a461d491356d3ba7d5127105c79..a749c00d80d99b52a11f58052c0c87363a846ec6 100644 --- a/extra/yassl/taocrypt/include/error.hpp +++ b/extra/yassl/taocrypt/include/error.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* error.hpp provides a taocrypt error numbers diff --git a/extra/yassl/taocrypt/include/file.hpp b/extra/yassl/taocrypt/include/file.hpp index c340c4fa3ea34eaa4a4020f97af2d6ad13b60562..1e2955d8737d7eaae858b152db24cdf1c8c8f5e2 100644 --- a/extra/yassl/taocrypt/include/file.hpp +++ b/extra/yassl/taocrypt/include/file.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* file.hpp provies File Sources and Sinks diff --git a/extra/yassl/taocrypt/include/hash.hpp b/extra/yassl/taocrypt/include/hash.hpp index 4d2f7dd35a1ba05e3f71c0161e6f9b487b5733f0..4ffb305869a3e7fb82db746da7895ff32ad95bb6 100644 --- a/extra/yassl/taocrypt/include/hash.hpp +++ b/extra/yassl/taocrypt/include/hash.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* hash.hpp provides a base for digest types diff --git a/extra/yassl/taocrypt/include/hc128.hpp b/extra/yassl/taocrypt/include/hc128.hpp index 0449b28d8c73fcd59bcfbf715a1f1390ed47c652..e1ed337de6a03f9903efa7a80d4ecaa56e8b0cc1 100644 --- a/extra/yassl/taocrypt/include/hc128.hpp +++ b/extra/yassl/taocrypt/include/hc128.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* hc128.hpp defines HC128 diff --git a/extra/yassl/taocrypt/include/hmac.hpp b/extra/yassl/taocrypt/include/hmac.hpp index 16e208eeda15baef45b73992e8173a7acc10a9f6..a5b16cdaf38d07c4ddb837433d3f142c11903dae 100644 --- a/extra/yassl/taocrypt/include/hmac.hpp +++ b/extra/yassl/taocrypt/include/hmac.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* hamc.hpp implements HMAC, see RFC 2104 diff --git a/extra/yassl/taocrypt/include/integer.hpp b/extra/yassl/taocrypt/include/integer.hpp index 05fe189fd585f6500fb6dc42ac402f6d125c1e22..613ed44b13d950a4f31c42abd4ef18fee285709c 100644 --- a/extra/yassl/taocrypt/include/integer.hpp +++ b/extra/yassl/taocrypt/include/integer.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's integer.h from CryptoPP */ diff --git a/extra/yassl/taocrypt/include/kernelc.hpp b/extra/yassl/taocrypt/include/kernelc.hpp index 0840b3f2740f703b63a94fcbbf31807e3864d486..5d0ceadc4d0ca5482fc45a4c4050635c0e3c875d 100644 --- a/extra/yassl/taocrypt/include/kernelc.hpp +++ b/extra/yassl/taocrypt/include/kernelc.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* kernelc.hpp provides support for C std lib when compiled in kernel mode diff --git a/extra/yassl/taocrypt/include/md2.hpp b/extra/yassl/taocrypt/include/md2.hpp index 49fefa9a2732b663b8bb87e875308c700799e1c7..89226fc93a1b71147552b62be6d1f0a4108f80de 100644 --- a/extra/yassl/taocrypt/include/md2.hpp +++ b/extra/yassl/taocrypt/include/md2.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* md2.hpp provides MD2 digest support, see RFC 1319 diff --git a/extra/yassl/taocrypt/include/md4.hpp b/extra/yassl/taocrypt/include/md4.hpp index e27efbe82c3a5bf6d7f431691c3a436180443d05..a4e87b5ccf52a8cf8889fc92b6362b98a336cb78 100644 --- a/extra/yassl/taocrypt/include/md4.hpp +++ b/extra/yassl/taocrypt/include/md4.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* md4.hpp provides MD4 digest support diff --git a/extra/yassl/taocrypt/include/md5.hpp b/extra/yassl/taocrypt/include/md5.hpp index 49a411e869a9fd8959a1712322e0b45d6b201ca8..a065d3d6e5215e39888e376cfbb56fe5794bb552 100644 --- a/extra/yassl/taocrypt/include/md5.hpp +++ b/extra/yassl/taocrypt/include/md5.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* md5.hpp provides MD5 digest support, see RFC 1321 diff --git a/extra/yassl/taocrypt/include/misc.hpp b/extra/yassl/taocrypt/include/misc.hpp index cb4d26e70c6e807f3b18d6d354c73ed1ae28c8de..ebfb02a7190db2a8e3a5dd17233c1e7415a6fb2c 100644 --- a/extra/yassl/taocrypt/include/misc.hpp +++ b/extra/yassl/taocrypt/include/misc.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's misc.h from CryptoPP */ diff --git a/extra/yassl/taocrypt/include/modarith.hpp b/extra/yassl/taocrypt/include/modarith.hpp index 75bf9b475934ee6ce77a61b29330427cf6f4e7b6..e536b5722e361f52406ae0b31232bbdbebad4fab 100644 --- a/extra/yassl/taocrypt/include/modarith.hpp +++ b/extra/yassl/taocrypt/include/modarith.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/include/modes.hpp b/extra/yassl/taocrypt/include/modes.hpp index bfe8c6ec5d45bc6af6939220d0576e976d39b320..db192bf7b59d8c621da95c4b6f0e452a30cb28d0 100644 --- a/extra/yassl/taocrypt/include/modes.hpp +++ b/extra/yassl/taocrypt/include/modes.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* modes.hpp provides ECB and CBC modes for block cipher encryption/decryption diff --git a/extra/yassl/taocrypt/include/pwdbased.hpp b/extra/yassl/taocrypt/include/pwdbased.hpp index 32da429f7479acdb48a23a02f86ac2766ee4c465..57495d01b5020ddc02640b16c47ebdceefc843b8 100644 --- a/extra/yassl/taocrypt/include/pwdbased.hpp +++ b/extra/yassl/taocrypt/include/pwdbased.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/include/rabbit.hpp b/extra/yassl/taocrypt/include/rabbit.hpp index fb4e12c66bcb640d7df5b3c9f9634ad00ac12481..e9af478fedf5dcd97a071205ed9e4df7aea5651f 100644 --- a/extra/yassl/taocrypt/include/rabbit.hpp +++ b/extra/yassl/taocrypt/include/rabbit.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* rabbit.hpp defines Rabbit diff --git a/extra/yassl/taocrypt/include/random.hpp b/extra/yassl/taocrypt/include/random.hpp index b51b4c3c3697b8e9bf60d45148870ccdffa699a1..90d38de7943a8f08bb324c75161c1b5a492f8071 100644 --- a/extra/yassl/taocrypt/include/random.hpp +++ b/extra/yassl/taocrypt/include/random.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* random.hpp provides a crypto secure Random Number Generator using an OS diff --git a/extra/yassl/taocrypt/include/ripemd.hpp b/extra/yassl/taocrypt/include/ripemd.hpp index 0599bdc5ac5df0ee6f0dc02a2dcefe3d016770a8..d50a171423207c4930d8be340cac8f7e19c188e7 100644 --- a/extra/yassl/taocrypt/include/ripemd.hpp +++ b/extra/yassl/taocrypt/include/ripemd.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* ripemd.hpp provides RIPEMD digest support diff --git a/extra/yassl/taocrypt/include/rsa.hpp b/extra/yassl/taocrypt/include/rsa.hpp index ee3e378a69f00c02346dea709a2b368cd8fbfce2..446752c64b629c12287ee7e0765628e26502ab80 100644 --- a/extra/yassl/taocrypt/include/rsa.hpp +++ b/extra/yassl/taocrypt/include/rsa.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* rsa.hpp provides RSA ES encrypt/decrypt, SSL (block type 1) sign and verify diff --git a/extra/yassl/taocrypt/include/runtime.hpp b/extra/yassl/taocrypt/include/runtime.hpp index ef2facf32b05a073b7e15f8033644ecd7199f0e7..90f084320cb27349130fa5f6e9adb5f21a833db3 100644 --- a/extra/yassl/taocrypt/include/runtime.hpp +++ b/extra/yassl/taocrypt/include/runtime.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* runtime.hpp provides C++ runtime support functions when building a pure C diff --git a/extra/yassl/taocrypt/include/sha.hpp b/extra/yassl/taocrypt/include/sha.hpp index cf6d0d09a1d16b49c159f1e1bb228560e406a545..8b18b7a66ae66e0ff3e23f5ee7b4b68bad1ebab0 100644 --- a/extra/yassl/taocrypt/include/sha.hpp +++ b/extra/yassl/taocrypt/include/sha.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* sha.hpp provides SHA-1 digests, see RFC 3174 diff --git a/extra/yassl/taocrypt/include/twofish.hpp b/extra/yassl/taocrypt/include/twofish.hpp index 236daed5597b6c92d0cad3d8105a20589ed2b00f..c2b0e6f75ad46937c299ba76aebff2650a17f9c9 100644 --- a/extra/yassl/taocrypt/include/twofish.hpp +++ b/extra/yassl/taocrypt/include/twofish.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* twofish.hpp defines Twofish diff --git a/extra/yassl/taocrypt/include/type_traits.hpp b/extra/yassl/taocrypt/include/type_traits.hpp index 3383c23cd1ab30335bfcd14d1c01fb4ab75310c7..f85ae552c18ecdadc02a42bc7c63b306b938e87f 100644 --- a/extra/yassl/taocrypt/include/type_traits.hpp +++ b/extra/yassl/taocrypt/include/type_traits.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* type_traits defines fundamental types diff --git a/extra/yassl/taocrypt/include/types.hpp b/extra/yassl/taocrypt/include/types.hpp index 973e1d19893fd58e5c4e4e260865de2f3d783d3d..97136970e13971f0d549b8d1c6b622909d50e6fc 100644 --- a/extra/yassl/taocrypt/include/types.hpp +++ b/extra/yassl/taocrypt/include/types.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's misc.h from CryptoPP, basic crypt types */ diff --git a/extra/yassl/taocrypt/mySTL/algorithm.hpp b/extra/yassl/taocrypt/mySTL/algorithm.hpp index 02a7c8c07d0746b18725dcd58e1c4eb99c9986b9..06731525bf12ff1178f2dc86ec2866044dca7663 100644 --- a/extra/yassl/taocrypt/mySTL/algorithm.hpp +++ b/extra/yassl/taocrypt/mySTL/algorithm.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/helpers.hpp b/extra/yassl/taocrypt/mySTL/helpers.hpp index 10ebb0ac62b5b11a6d92487f71c1a198ebe08109..ec9266ddf2a672539446670481b5dd9333361a39 100644 --- a/extra/yassl/taocrypt/mySTL/helpers.hpp +++ b/extra/yassl/taocrypt/mySTL/helpers.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/list.hpp b/extra/yassl/taocrypt/mySTL/list.hpp index d3297db4418bcc38021a055580259635df146f95..c71ebc8def5099177d9de8fb55a3251c368a6e2d 100644 --- a/extra/yassl/taocrypt/mySTL/list.hpp +++ b/extra/yassl/taocrypt/mySTL/list.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/memory.hpp b/extra/yassl/taocrypt/mySTL/memory.hpp index 0c57620ff01e14edb10c44e88c96d3b372af5a69..fdd34cda1258c3e61fba244eba17073d48c460d7 100644 --- a/extra/yassl/taocrypt/mySTL/memory.hpp +++ b/extra/yassl/taocrypt/mySTL/memory.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/memory_array.hpp b/extra/yassl/taocrypt/mySTL/memory_array.hpp index cc49208e9f2f036df30cc1199adf184e60b40cfa..af4c2cdf2329f788bfde6ce9a94a33db0a6084d4 100644 --- a/extra/yassl/taocrypt/mySTL/memory_array.hpp +++ b/extra/yassl/taocrypt/mySTL/memory_array.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/pair.hpp b/extra/yassl/taocrypt/mySTL/pair.hpp index 1c9579fa0570d375b4bc83658dcba64139a88771..9dd97f63bfa7ba3aed8a872ab6d70ad6f233a194 100644 --- a/extra/yassl/taocrypt/mySTL/pair.hpp +++ b/extra/yassl/taocrypt/mySTL/pair.hpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/stdexcept.hpp b/extra/yassl/taocrypt/mySTL/stdexcept.hpp index 79ae6de3380c3fe3f8dbcf2e8f977eb7e34dc361..8c12b51e1307b162acabe75fd7e32c93852c66bd 100644 --- a/extra/yassl/taocrypt/mySTL/stdexcept.hpp +++ b/extra/yassl/taocrypt/mySTL/stdexcept.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/mySTL/vector.hpp b/extra/yassl/taocrypt/mySTL/vector.hpp index f3702b751259e486c37dc4d22daea655f0c3c494..0abcf910baf11456741de842e092ca7ed891cec0 100644 --- a/extra/yassl/taocrypt/mySTL/vector.hpp +++ b/extra/yassl/taocrypt/mySTL/vector.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/aes.cpp b/extra/yassl/taocrypt/src/aes.cpp index 2321c72554cdfd577f34796f65e58ec16db80888..4e4ea849c21cc990917685d5484266eb9ea3bbf3 100644 --- a/extra/yassl/taocrypt/src/aes.cpp +++ b/extra/yassl/taocrypt/src/aes.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* C++ based on Wei Dai's aes.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/aestables.cpp b/extra/yassl/taocrypt/src/aestables.cpp index 60795a549e48df95a8db5763e0db4eba636fbb89..7c6a53bdcd56877ecc1e9594c8e495450ac6b3e0 100644 --- a/extra/yassl/taocrypt/src/aestables.cpp +++ b/extra/yassl/taocrypt/src/aestables.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's aestables.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/algebra.cpp b/extra/yassl/taocrypt/src/algebra.cpp index 7dae7d6a917a7ef190ce00fdb1c1bd5debc38eb9..b24333befc9aaebd91890681ca3098634527768c 100644 --- a/extra/yassl/taocrypt/src/algebra.cpp +++ b/extra/yassl/taocrypt/src/algebra.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's algebra.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/arc4.cpp b/extra/yassl/taocrypt/src/arc4.cpp index 10a3a7d6ffcb6705c7df94b97669515bbdb79d77..6d11f5c113a3c94cc40a89741d857dbc3396b14a 100644 --- a/extra/yassl/taocrypt/src/arc4.cpp +++ b/extra/yassl/taocrypt/src/arc4.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's arc4.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/asn.cpp b/extra/yassl/taocrypt/src/asn.cpp index 80bcd612d27fc0d0a83d097b0f25c98794409316..0a677c4b0f80edb52d34b4311bcc947494022aa1 100644 --- a/extra/yassl/taocrypt/src/asn.cpp +++ b/extra/yassl/taocrypt/src/asn.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* asn.cpp implements ASN1 BER, PublicKey, and x509v3 decoding diff --git a/extra/yassl/taocrypt/src/bftables.cpp b/extra/yassl/taocrypt/src/bftables.cpp index 8e0bde1fed60295ff24ea91ba470cad19c3b75ce..088f9778da10b58971d491ed97e4cec03511c5cd 100644 --- a/extra/yassl/taocrypt/src/bftables.cpp +++ b/extra/yassl/taocrypt/src/bftables.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's bfinit.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/blowfish.cpp b/extra/yassl/taocrypt/src/blowfish.cpp index 87b0556755e15bc0053cc4fe1253c0fecd7dec5d..45f6fb793f8e405416bf8367e01ced3932dbec5a 100644 --- a/extra/yassl/taocrypt/src/blowfish.cpp +++ b/extra/yassl/taocrypt/src/blowfish.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* C++ code based on Wei Dai's blowfish.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/coding.cpp b/extra/yassl/taocrypt/src/coding.cpp index 8f317a484d84a476b494b0d8f8d7d3196e8fece8..85d657c352d8e120e681d087ca06d55264ab3dfd 100644 --- a/extra/yassl/taocrypt/src/coding.cpp +++ b/extra/yassl/taocrypt/src/coding.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* coding.cpp implements hex and base64 encoding/decoing diff --git a/extra/yassl/taocrypt/src/des.cpp b/extra/yassl/taocrypt/src/des.cpp index 673c21ed2071fcb42d19f99a47467f6b236837e4..f921cfcc9773b4a28694a5eab3fbb4a2935124d5 100644 --- a/extra/yassl/taocrypt/src/des.cpp +++ b/extra/yassl/taocrypt/src/des.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* C++ part based on Wei Dai's des.cpp from CryptoPP */ @@ -224,7 +224,7 @@ void BasicDES::SetKey(const byte* key, word32 /*length*/, CipherDir dir) byte *const pc1m = buffer; /* place to modify pc1 into */ byte *const pcr = pc1m + 56; /* place to rotate pc1 into */ byte *const ks = pcr + 56; - register int i,j,l; + int i,j,l; int m; for (j = 0; j < 56; j++) { /* convert pc1 to bits of key */ diff --git a/extra/yassl/taocrypt/src/dh.cpp b/extra/yassl/taocrypt/src/dh.cpp index b7f1d7e6d4af28f9d35cd31cfa45ed1117e5a93b..cc677cba4589fe47ae3ee0e680a437386ded3985 100644 --- a/extra/yassl/taocrypt/src/dh.cpp +++ b/extra/yassl/taocrypt/src/dh.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/dsa.cpp b/extra/yassl/taocrypt/src/dsa.cpp index fda01881df5b226b3bab1dd4c8620261e2613455..ccdefa460253cfa72e2416aa9d3f137882d4c523 100644 --- a/extra/yassl/taocrypt/src/dsa.cpp +++ b/extra/yassl/taocrypt/src/dsa.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/file.cpp b/extra/yassl/taocrypt/src/file.cpp index ab7a5c2b61b66e3d99783503f7c66d318a0b1398..5dfc19ca7bd6f452d1921e56523ea04bc163f2c6 100644 --- a/extra/yassl/taocrypt/src/file.cpp +++ b/extra/yassl/taocrypt/src/file.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* file.cpp implements File Sources and Sinks diff --git a/extra/yassl/taocrypt/src/hash.cpp b/extra/yassl/taocrypt/src/hash.cpp index c176e6a68d05e59e86441c1f4beb17b2f65d6d76..9fa65a36074577201f2dcd5b0d443e95df3e5c87 100644 --- a/extra/yassl/taocrypt/src/hash.cpp +++ b/extra/yassl/taocrypt/src/hash.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* hash.cpp implements a base for digest types diff --git a/extra/yassl/taocrypt/src/hc128.cpp b/extra/yassl/taocrypt/src/hc128.cpp index 8934c3187817e0cb1f66bc85129265a299a7d8e6..4e1542097d082cb5f4ebf1e1320eda1d5b630e91 100644 --- a/extra/yassl/taocrypt/src/hc128.cpp +++ b/extra/yassl/taocrypt/src/hc128.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/integer.cpp b/extra/yassl/taocrypt/src/integer.cpp index dd8425396eda240106222a10a885ba28f840af30..432a0ad20afa425480fed9cc661acbb4e6a52825 100644 --- a/extra/yassl/taocrypt/src/integer.cpp +++ b/extra/yassl/taocrypt/src/integer.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/make.bat b/extra/yassl/taocrypt/src/make.bat index f302db5106510ed4e29d2ac31136478f0b297dbf..6572d7f354a14a63eff7458355eef4d4ed79297f 100755 --- a/extra/yassl/taocrypt/src/make.bat +++ b/extra/yassl/taocrypt/src/make.bat @@ -11,7 +11,7 @@ REM GNU General Public License for more details. REM REM You should have received a copy of the GNU General Public License REM along with this program; if not, write to the Free Software -REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA REM quick and dirty build file for testing different MSDEVs setlocal diff --git a/extra/yassl/taocrypt/src/md2.cpp b/extra/yassl/taocrypt/src/md2.cpp index aefe30452799dcd9856dced54a2fabf853c3f2c7..b1a7190d1f8371324f6fe8f8b183f32fc08cb41d 100644 --- a/extra/yassl/taocrypt/src/md2.cpp +++ b/extra/yassl/taocrypt/src/md2.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/md4.cpp b/extra/yassl/taocrypt/src/md4.cpp index 9364a1c23b15b8bf86bd4bcb916b1bf85d26ac80..02613fcf1e3506f51bd587ce926d5184988fc322 100644 --- a/extra/yassl/taocrypt/src/md4.cpp +++ b/extra/yassl/taocrypt/src/md4.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/md5.cpp b/extra/yassl/taocrypt/src/md5.cpp index 45cfa8a3322c9f361b972e6cf611bf305a7f07f5..b68be738e835ff559a2e1f92c31015ec448888d6 100644 --- a/extra/yassl/taocrypt/src/md5.cpp +++ b/extra/yassl/taocrypt/src/md5.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/misc.cpp b/extra/yassl/taocrypt/src/misc.cpp index 198f1ba17be300627e07b18f85883ed39db5d1a2..41249bcf373ae69ff9953292c1610c0941b24f6c 100644 --- a/extra/yassl/taocrypt/src/misc.cpp +++ b/extra/yassl/taocrypt/src/misc.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's misc.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/rabbit.cpp b/extra/yassl/taocrypt/src/rabbit.cpp index 5e32f383493830c905f99cd5f41deb4ff60ccac4..d0d4b0ef3baceff83bc84d6f563e6da76bdf89c9 100644 --- a/extra/yassl/taocrypt/src/rabbit.cpp +++ b/extra/yassl/taocrypt/src/rabbit.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/random.cpp b/extra/yassl/taocrypt/src/random.cpp index 4b89b5b32c579dfb70ff9ac9446bd8cec01b4c7e..44ac324dfb50846ffb460cd2c8bce50a041295b0 100644 --- a/extra/yassl/taocrypt/src/random.cpp +++ b/extra/yassl/taocrypt/src/random.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/ripemd.cpp b/extra/yassl/taocrypt/src/ripemd.cpp index 5d03dc61cd619e7b734e88a6833e9b3a5b3dcf63..04b8f82ffcc28e54842db65c49adc840db27e690 100644 --- a/extra/yassl/taocrypt/src/ripemd.cpp +++ b/extra/yassl/taocrypt/src/ripemd.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ diff --git a/extra/yassl/taocrypt/src/rsa.cpp b/extra/yassl/taocrypt/src/rsa.cpp index 73f678e2674c270ff89284b34655f1c03c5854ea..e458a1adb214ca5d489ccd70db49ddb03ad77d12 100644 --- a/extra/yassl/taocrypt/src/rsa.cpp +++ b/extra/yassl/taocrypt/src/rsa.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's rsa.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/sha.cpp b/extra/yassl/taocrypt/src/sha.cpp index 4206f7f64eae7cd1c823e9f54d2e8b1e21877496..e7ba5582d38ae03c354e667cf6dfa5325bfda867 100644 --- a/extra/yassl/taocrypt/src/sha.cpp +++ b/extra/yassl/taocrypt/src/sha.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's sha.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/tftables.cpp b/extra/yassl/taocrypt/src/tftables.cpp index bf9be335b5257a3c72f55aa8b4067afb98f9b5aa..1dd4a846abd974be1f2ade582cd759864ff016b7 100644 --- a/extra/yassl/taocrypt/src/tftables.cpp +++ b/extra/yassl/taocrypt/src/tftables.cpp @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* based on Wei Dai's tftables.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/src/twofish.cpp b/extra/yassl/taocrypt/src/twofish.cpp index 8eb82210b0fb38291083d23af5257d0beebda835..2e28ae52cd30cf864d098d61ebd6684c1de6d613 100644 --- a/extra/yassl/taocrypt/src/twofish.cpp +++ b/extra/yassl/taocrypt/src/twofish.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ /* C++ based on Wei Dai's twofish.cpp from CryptoPP */ diff --git a/extra/yassl/taocrypt/test/make.bat b/extra/yassl/taocrypt/test/make.bat index 8f22226cade240ba362c719680ec4a27f5fc59f6..cfb762ce8473dbf0ffc0d784926cf3ad5922a5fb 100755 --- a/extra/yassl/taocrypt/test/make.bat +++ b/extra/yassl/taocrypt/test/make.bat @@ -11,7 +11,7 @@ REM GNU General Public License for more details. REM REM You should have received a copy of the GNU General Public License REM along with this program; if not, write to the Free Software -REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA REM quick and dirty build file for testing different MSDEVs setlocal diff --git a/extra/yassl/taocrypt/test/memory.cpp b/extra/yassl/taocrypt/test/memory.cpp index 053d79688a2776756d2562ec22f73e70ba3427eb..99f1fd646d47e60ef758e5eab2eb387b104c2895 100644 --- a/extra/yassl/taocrypt/test/memory.cpp +++ b/extra/yassl/taocrypt/test/memory.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ // memory.cpp diff --git a/extra/yassl/taocrypt/test/test.cpp b/extra/yassl/taocrypt/test/test.cpp index b07a9eb9f29d51db0fb5a119a67ea4013045cc52..cf1ec551fe3dac871a34cd3dd710d963c2a6742e 100644 --- a/extra/yassl/taocrypt/test/test.cpp +++ b/extra/yassl/taocrypt/test/test.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ // test.cpp diff --git a/extra/yassl/testsuite/make.bat b/extra/yassl/testsuite/make.bat index b2028e7bf460bd30c140144eaec0084988121b81..eddbe90c400ec829e25a67005fcdefde167e3dca 100755 --- a/extra/yassl/testsuite/make.bat +++ b/extra/yassl/testsuite/make.bat @@ -11,7 +11,7 @@ REM GNU General Public License for more details. REM REM You should have received a copy of the GNU General Public License REM along with this program; if not, write to the Free Software -REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA REM quick and dirty build file for testing different MSDEVs setlocal diff --git a/extra/yassl/testsuite/test.hpp b/extra/yassl/testsuite/test.hpp index a65a212cf995d4c5557b5c39c01298a7d2e1a0d9..12da450fffe770b2e713e2de2689650509bac14f 100644 --- a/extra/yassl/testsuite/test.hpp +++ b/extra/yassl/testsuite/test.hpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ // test.hpp diff --git a/extra/yassl/testsuite/testsuite.cpp b/extra/yassl/testsuite/testsuite.cpp index 7973a3704e1b9030169cde1e5df37df1f3f819de..1792a2a3d9ac5e7a435605250cfab26692c2d176 100644 --- a/extra/yassl/testsuite/testsuite.cpp +++ b/extra/yassl/testsuite/testsuite.cpp @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301 USA. + MA 02110-1335 USA. */ // testsuite.cpp diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt index d0c4768e88204d9c30cc919887ba44d81da196ee..26ac7f3a832444d1a978c1be5e3b39c5b2b907f3 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(HEADERS_GEN_CONFIGURE mysql_version.h diff --git a/include/atomic/gcc_builtins.h b/include/atomic/gcc_builtins.h index 56a0323aedfcb97da80f8431e3e9fbc2b472860b..dd19ccd9ed60a03de6457867e3465bbb765a1e8a 100644 --- a/include/atomic/gcc_builtins.h +++ b/include/atomic/gcc_builtins.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #define make_atomic_add_body(S) \ v= __sync_fetch_and_add(a, v); diff --git a/include/atomic/generic-msvc.h b/include/atomic/generic-msvc.h index 6c5272c98f405e650990eb1bfb351f6d240e6194..754f0bfa8b442f051bddc51bd8fec1a410041e6b 100644 --- a/include/atomic/generic-msvc.h +++ b/include/atomic/generic-msvc.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _atomic_h_cleanup_ #define _atomic_h_cleanup_ "atomic/generic-msvc.h" diff --git a/include/atomic/nolock.h b/include/atomic/nolock.h index 2137445a0759a592095a584d5754b00384140503..8bbc9ca447ee37b7c9417400ea1a4b3712c6cd6a 100644 --- a/include/atomic/nolock.h +++ b/include/atomic/nolock.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #if defined(__i386__) || defined(_MSC_VER) || defined(__x86_64__) \ || defined(HAVE_GCC_ATOMIC_BUILTINS) \ diff --git a/include/atomic/solaris.h b/include/atomic/solaris.h index 7b6f0561ff0fd26d283d925dfac0c4bbe0820f9c..cac34040993fb18c38ae4f688330d19a7e525110 100644 --- a/include/atomic/solaris.h +++ b/include/atomic/solaris.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _atomic_h_cleanup_ #define _atomic_h_cleanup_ "atomic/solaris.h" diff --git a/include/atomic/x86-gcc.h b/include/atomic/x86-gcc.h index 173e32e790c5421501f2b02223b55826e777ead5..679ecd3679e44243ee3787c03c8ea36c8a0afb87 100644 --- a/include/atomic/x86-gcc.h +++ b/include/atomic/x86-gcc.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* XXX 64-bit atomic operations can be implemented using diff --git a/include/big_endian.h b/include/big_endian.h index 021b6abc383e9faffa11b46fa9469668107493fc..6487f82924e658c3ae121455d073ae5a5addbce5 100644 --- a/include/big_endian.h +++ b/include/big_endian.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Data in big-endian format. diff --git a/include/byte_order_generic.h b/include/byte_order_generic.h index d4ac27eeb9c54b7973532e4a7c2d25ec814da842..451202be3b6e84f98da89b6b588a1337e735f806 100644 --- a/include/byte_order_generic.h +++ b/include/byte_order_generic.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Endianness-independent definitions for architectures other diff --git a/include/byte_order_generic_x86.h b/include/byte_order_generic_x86.h index a97dd0f43a37fb1a557ccd3828d4e2e914903029..4b2cbbe5584590c8dab5c28f2438e3923127c94d 100644 --- a/include/byte_order_generic_x86.h +++ b/include/byte_order_generic_x86.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Optimized function-like macros for the x86 architecture (_WIN32 included). diff --git a/include/byte_order_generic_x86_64.h b/include/byte_order_generic_x86_64.h index 8c7493965a9968d3e08d62ec58e06836e7367646..d235e8db3d8fc0f8f5dcbf0f08800a94f90007d6 100644 --- a/include/byte_order_generic_x86_64.h +++ b/include/byte_order_generic_x86_64.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Optimized function-like macros for the x86 architecture (_WIN32 included). diff --git a/include/decimal.h b/include/decimal.h index 2adeb82431891c309f4b4f90090f26576c1169c5..648e908f8001ab26836168112b302d966a99c4a4 100644 --- a/include/decimal.h +++ b/include/decimal.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _decimal_h #define _decimal_h diff --git a/include/errmsg.h b/include/errmsg.h index be4203b7f752149426d1edc6867615dd8f13714f..c0c4cfc58be18ac8fae6876d6f97e24bb3cd3234 100644 --- a/include/errmsg.h +++ b/include/errmsg.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Error messages numbers for MySQL clients. diff --git a/include/ft_global.h b/include/ft_global.h index aad3b4cb56eaefe539d49e7b3db4d3447706612b..725363c3aa8bbbf11d4cd5c7ae6a5688da1d07d0 100644 --- a/include/ft_global.h +++ b/include/ft_global.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Written by Sergei A. Golubchik, who has a shared copyright to this code */ diff --git a/include/handler_ername.h b/include/handler_ername.h index 50f7f535806e230b838f6ad84bb05b4c67a825fc..fe55062e6fb4ac66970162eb74f62d958fd8e9cf 100644 --- a/include/handler_ername.h +++ b/include/handler_ername.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Names of all handler error numbers. Used by mysqltest */ diff --git a/include/hash.h b/include/hash.h index fde7fc30d3825615e1049210d0432555c48bddd8..22bd6fc4f2263d71b5302c786560ad0197fd8fd4 100644 --- a/include/hash.h +++ b/include/hash.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Dynamic hashing of record with different key-length */ diff --git a/include/heap.h b/include/heap.h index e92f649b87bd73350a9b545aa7f016c2c98ba5c1..d0c907a48b4982b6c702134379cd0679812280ce 100644 --- a/include/heap.h +++ b/include/heap.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file should be included when using heap_database_functions */ @@ -217,7 +217,7 @@ extern int heap_write(HP_INFO *info,const uchar *buff); extern int heap_update(HP_INFO *info,const uchar *old,const uchar *newdata); extern int heap_rrnd(HP_INFO *info,uchar *buf,uchar *pos); extern int heap_scan_init(HP_INFO *info); -extern int heap_scan(register HP_INFO *info, uchar *record); +extern int heap_scan(HP_INFO *info, uchar *record); extern int heap_delete(HP_INFO *info,const uchar *buff); extern int heap_info(HP_INFO *info,HEAPINFO *x,int flag); extern int heap_create(const char *name, diff --git a/include/keycache.h b/include/keycache.h index 85937ebefb900c1240cc984b5d281541c49dbc4c..14fd9c80bc2bf8985943cd5016ce1d4e8a501930 100644 --- a/include/keycache.h +++ b/include/keycache.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Key cache variable structures */ diff --git a/include/lf.h b/include/lf.h index 19bdafce647b67c5c0276f805f296f2488f7c345..9d6f77da1a1f5de77ba5b4002e5d49c61ef28e59 100644 --- a/include/lf.h +++ b/include/lf.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef INCLUDE_LF_INCLUDED #define INCLUDE_LF_INCLUDED diff --git a/include/little_endian.h b/include/little_endian.h index 7223fea648f9c487bc4be8a7a6fc2e08fe21f9fd..dcddbdd9e27d28344445ddaa36ec7f7be24c91bc 100644 --- a/include/little_endian.h +++ b/include/little_endian.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Data in little-endian format. diff --git a/include/m_ctype.h b/include/m_ctype.h index 74dd2a299842be7a126f26d8ac6275794fba3d24..875ff95579ea16f685dda7e413bbdb16131819a3 100644 --- a/include/m_ctype.h +++ b/include/m_ctype.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* A better inplementation of the UNIX ctype(3) library. diff --git a/include/m_string.h b/include/m_string.h index d088b510de5ceac9176e888b8285747285549fde..e17bc697341a8328497da458a80e248926318327 100644 --- a/include/m_string.h +++ b/include/m_string.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* There may be prolems include all of theese. Try to test in configure with ones are needed? */ diff --git a/include/maria.h b/include/maria.h index ab8fc944c8c39e2e065470ee7149e81d4d016f25..cbc03687f1df9ce80c2c6b6cb1388b5f7a62b805 100644 --- a/include/maria.h +++ b/include/maria.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file should be included when using maria functions */ @@ -366,7 +366,7 @@ int maria_sort_index(HA_CHECK *param, MARIA_HA *info, char * name); int maria_zerofill(HA_CHECK *param, MARIA_HA *info, const char *name); int maria_repair_by_sort(HA_CHECK *param, MARIA_HA *info, const char *name, my_bool rep_quick); -int maria_repair_parallel(HA_CHECK *param, register MARIA_HA *info, +int maria_repair_parallel(HA_CHECK *param, MARIA_HA *info, const char *name, my_bool rep_quick); int maria_change_to_newfile(const char *filename, const char *old_ext, const char *new_ext, time_t backup_time, diff --git a/include/my_alarm.h b/include/my_alarm.h index 73bb6ab76cc6fce132ac692138efb054c2c64818..6010da6e2c365bd46ad347dbc4ee48011ba77fe9 100644 --- a/include/my_alarm.h +++ b/include/my_alarm.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* File to include when we want to use alarm or a loop_counter to display diff --git a/include/my_alloc.h b/include/my_alloc.h index 85ac75fc6666a91b616227ac179a5c181c4bcad1..52c04fe1b7d4cf9d0e0845030270427359b14b8c 100644 --- a/include/my_alloc.h +++ b/include/my_alloc.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Data structures for mysys/my_alloc.c (root memory allocator) diff --git a/include/my_atomic.h b/include/my_atomic.h index 855b781dfe3fe2c8af6e2054b4efcba27c43937b..e226f5c592609b0e9837d71f494c9978226d39ae 100644 --- a/include/my_atomic.h +++ b/include/my_atomic.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This header defines five atomic operations: diff --git a/include/my_attribute.h b/include/my_attribute.h index 14ed35cfe240ef37a8f981ab0b26c4e62f8e340a..0bdec175fb40f74dba75bb46937b94b90cd4a210 100644 --- a/include/my_attribute.h +++ b/include/my_attribute.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Helper macros used for setting different __attributes__ diff --git a/include/my_base.h b/include/my_base.h index 8b546edac43ad445b23dc51dfdd0fc27fd0b44f4..edd14e6a2f2edeb23eef8d174f7a06eeb81832de 100644 --- a/include/my_base.h +++ b/include/my_base.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file includes constants used with all databases */ @@ -622,6 +622,7 @@ typedef ulong ha_rows; #define HA_POS_ERROR (~ (ha_rows) 0) #define HA_OFFSET_ERROR (~ (my_off_t) 0) +#define HA_ROWS_MAX HA_POS_ERROR #if SYSTEM_SIZEOF_OFF_T == 4 #define MAX_FILE_SIZE INT_MAX32 diff --git a/include/my_bit.h b/include/my_bit.h index c571581f5e8af0901329c7c5752a751b6ab8da6b..aee5240ac56b507d69fe02ff0b5f90a406b6c3d1 100644 --- a/include/my_bit.h +++ b/include/my_bit.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MY_BIT_INCLUDED #define MY_BIT_INCLUDED diff --git a/include/my_bitmap.h b/include/my_bitmap.h index 9c9550e3141b2fec7574856167e8702d23f76a1b..da685ce19d19cad5796e93ac6ba1c9ce57c7ded4 100644 --- a/include/my_bitmap.h +++ b/include/my_bitmap.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_bitmap_h_ #define _my_bitmap_h_ diff --git a/include/my_byteorder.h b/include/my_byteorder.h index 1f29248bfb2f2adffa7b9b8a56a5c8ef19934227..c302781d9fcd892f1139243ad9fa43778dbc4d32 100644 --- a/include/my_byteorder.h +++ b/include/my_byteorder.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/include/my_check_opt.h b/include/my_check_opt.h index ccf003decab039126378b7da8a3e95a7e1794b0f..f5ec522ed787d3cf11bfbe63df2039055827b593 100644 --- a/include/my_check_opt.h +++ b/include/my_check_opt.h @@ -11,7 +11,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_check_opt_h #define _my_check_opt_h diff --git a/include/my_compare.h b/include/my_compare.h index 1c50ff937913f2cfbaa6994ef8e2ce99513ea1c6..38a024c445e9ccae27f587a903c2e3263d6a3f2c 100644 --- a/include/my_compare.h +++ b/include/my_compare.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_compare_h #define _my_compare_h diff --git a/include/my_compiler.h b/include/my_compiler.h index 000d4e42848d9ac9dfd75fd926e27c2e894a9f9a..86ba250da88995e9568a70d922520f6c996b6d6e 100644 --- a/include/my_compiler.h +++ b/include/my_compiler.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** Header for compiler-dependent features. diff --git a/include/my_cpu.h b/include/my_cpu.h index 026b92c1b745224bc162940207db206365d5c6a5..ebabe6c7202051914a23ac435682ea75e591b6b9 100644 --- a/include/my_cpu.h +++ b/include/my_cpu.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* instructions for specific cpu's */ diff --git a/include/my_crypt.h b/include/my_crypt.h index 719e349bfb9276a1cd30935cd28176a5d6593d80..eced2cd400f1f78bd65e865ce9efc94bc9676193 100644 --- a/include/my_crypt.h +++ b/include/my_crypt.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MY_CRYPT_INCLUDED #define MY_CRYPT_INCLUDED diff --git a/include/my_dbug.h b/include/my_dbug.h index d56033ab025258fd22892ff1d8ab2fc53f5305bc..866bc619ee6de2530f307bede817c4a1ffca6f0e 100644 --- a/include/my_dbug.h +++ b/include/my_dbug.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_dbug_h #define _my_dbug_h diff --git a/include/my_decimal_limits.h b/include/my_decimal_limits.h index 0aa247ff035174e27dc5a350ae3959605a6289d2..34117f8c5b07dca6f27c01255ebaf313679bfb0e 100644 --- a/include/my_decimal_limits.h +++ b/include/my_decimal_limits.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define DECIMAL_LONGLONG_DIGITS 22 #define DECIMAL_LONG_DIGITS 10 diff --git a/include/my_default.h b/include/my_default.h index bd3a21f03a89a732ec8b6ecb8c8aa16d1e9ec27e..865833de34ac2a34ade2d720189188138ac35867 100644 --- a/include/my_default.h +++ b/include/my_default.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Definitions for mysys/my_default.c */ diff --git a/include/my_dir.h b/include/my_dir.h index be988ae790c2bf83a5564492716f7a1834220255..c92c825414e09bdb993b1f723eb540381d8370cc 100644 --- a/include/my_dir.h +++ b/include/my_dir.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MY_DIR_H #define MY_DIR_H diff --git a/include/my_getopt.h b/include/my_getopt.h index 584c009464d1a64bca16aec46dcbefdfb28a55ab..c6aa21eda2e35a0565144a8d02c3fe630e56e2c4 100644 --- a/include/my_getopt.h +++ b/include/my_getopt.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_getopt_h #define _my_getopt_h diff --git a/include/my_global.h b/include/my_global.h index 36e4b5368fac9d795e439e363519cbeb119dffca..60249a153520966774b3b38b7aa34d57ebbd3756 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This is the include file that should be included 'first' in every C file. */ diff --git a/include/my_handler_errors.h b/include/my_handler_errors.h index 5af6a3593489b2913479bfa6666c27e854667a81..5e882da59987404b6832e700e4cc2b962080a61b 100644 --- a/include/my_handler_errors.h +++ b/include/my_handler_errors.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Errors a handler can give you diff --git a/include/my_libwrap.h b/include/my_libwrap.h index 9a017611408285bf6af0b2813ba99a99e21b5501..b5200804170985ba30f038a5e9b3ce9db9ff8319 100644 --- a/include/my_libwrap.h +++ b/include/my_libwrap.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef HAVE_LIBWRAP #include diff --git a/include/my_list.h b/include/my_list.h index 294be663d0e1e47dcc15b93b95a7ee96b6ed9e0a..0bb785bdbf32f9b93374af5f3960a03bd23ccf84 100644 --- a/include/my_list.h +++ b/include/my_list.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _list_h_ #define _list_h_ diff --git a/include/my_md5.h b/include/my_md5.h index 141ea309cae361085982d4dd079dfd6d0e54154c..c3919bf158fb9c640e738c4e8e5fbd88d6e51173 100644 --- a/include/my_md5.h +++ b/include/my_md5.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "m_string.h" diff --git a/include/my_net.h b/include/my_net.h index 91d780a276d26e6cccd0731c1ac203c273781410..bd42ccf63367a8fab4ac10a2562f9940a35ec2c4 100644 --- a/include/my_net.h +++ b/include/my_net.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file is also used to make handling of sockets and ioctl() diff --git a/include/my_nosys.h b/include/my_nosys.h index 97f36d00c57701d6010642bbd8fcc0f3f3a4905b..ff13a04d27b3b2d34749a906aa92e62e2e983a11 100644 --- a/include/my_nosys.h +++ b/include/my_nosys.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Header to remove use of my_functions in functions where we need speed and diff --git a/include/my_pthread.h b/include/my_pthread.h index 2b3edb735283eafa5fa0bc8fc3e69728607db3c4..778123976fa97e34a98f537d6312314d192dd0f4 100644 --- a/include/my_pthread.h +++ b/include/my_pthread.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Defines to make different thread packages compatible */ diff --git a/include/my_rdtsc.h b/include/my_rdtsc.h index d24e21167335e286d01d2fc24ed2ed71f219fd7d..df421225f4f068f0a6bb57d1acdbb7dd6021a69e 100644 --- a/include/my_rdtsc.h +++ b/include/my_rdtsc.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* rdtsc3 -- multi-platform timer code diff --git a/include/my_rnd.h b/include/my_rnd.h index ab8b3e10d239bd3dbfbbf32a028160f1a981a7fd..a3e3788085d319fe172f43faacd3723df4e9fbe4 100644 --- a/include/my_rnd.h +++ b/include/my_rnd.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_rnd_h #define _my_rnd_h diff --git a/include/my_service_manager.h b/include/my_service_manager.h index 4d88e992b5e336e76d4a62c7df8cbaac3beb1834..c8d634e498fc5418e3a209231177dca1adaf433f 100644 --- a/include/my_service_manager.h +++ b/include/my_service_manager.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ diff --git a/include/my_stacktrace.h b/include/my_stacktrace.h index fad6e532de9cf235bbd01ccd100148f076d5e82c..6aaf6728c729055e4eb7fcef2e5e10eadbdc6683 100644 --- a/include/my_stacktrace.h +++ b/include/my_stacktrace.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_stacktrace_h_ #define _my_stacktrace_h_ diff --git a/include/my_sys.h b/include/my_sys.h index c30580a8c060395845dabe637b7246d24d8d3182..1cb9572429a14feba8320af4cf575eea36b5a1ed 100644 --- a/include/my_sys.h +++ b/include/my_sys.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_sys_h #define _my_sys_h diff --git a/include/my_time.h b/include/my_time.h index 557dcdd5670a9d2284ac7eae1a4a113497df73a4..6e4a625f2c03989d2682e0b30bf00b2f74199bc1 100644 --- a/include/my_time.h +++ b/include/my_time.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This is a private header of sql-common library, containing diff --git a/include/my_tree.h b/include/my_tree.h index 59d02218a21e196f1c68a9c8fef8a8698c725075..d0c898f7659ef73f0d468ec0a5cc5adeaffd3b9b 100644 --- a/include/my_tree.h +++ b/include/my_tree.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _tree_h #define _tree_h diff --git a/include/my_uctype.h b/include/my_uctype.h index 80ef01c079ac6936ba3134a3f945acc506dc0e3e..82949ffe2ae90bec53c090978d559fe9c837342d 100644 --- a/include/my_uctype.h +++ b/include/my_uctype.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Unicode ctype data diff --git a/include/my_user.h b/include/my_user.h index 404996e996c63d6c49e55a6d374994172e293393..a4b39edad77cb0c37e8f3067eaccef262396929e 100644 --- a/include/my_user.h +++ b/include/my_user.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This is a header for libraries containing functions used in both server and diff --git a/include/my_valgrind.h b/include/my_valgrind.h index 78e5cf1ba34044c8b7ddff97a7c92c27069e932f..ad22f0cad407e051748878d4ca420764d61c7680 100644 --- a/include/my_valgrind.h +++ b/include/my_valgrind.h @@ -11,7 +11,10 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ + +#ifndef MY_VALGRIND_INCLUDED +#define MY_VALGRIND_INCLUDED /* clang -> gcc */ #ifndef __has_feature @@ -33,6 +36,7 @@ # define MEM_NOACCESS(a,len) VALGRIND_MAKE_MEM_NOACCESS(a,len) # define MEM_CHECK_ADDRESSABLE(a,len) VALGRIND_CHECK_MEM_IS_ADDRESSABLE(a,len) # define MEM_CHECK_DEFINED(a,len) VALGRIND_CHECK_MEM_IS_DEFINED(a,len) +# define REDZONE_SIZE 8 #elif defined(__SANITIZE_ADDRESS__) # include /* How to do manual poisoning: @@ -41,11 +45,13 @@ # define MEM_NOACCESS(a,len) ASAN_POISON_MEMORY_REGION(a,len) # define MEM_CHECK_ADDRESSABLE(a,len) ((void) 0) # define MEM_CHECK_DEFINED(a,len) ((void) 0) +# define REDZONE_SIZE 8 #else # define MEM_UNDEFINED(a,len) ((void) (a), (void) (len)) # define MEM_NOACCESS(a,len) ((void) 0) # define MEM_CHECK_ADDRESSABLE(a,len) ((void) 0) # define MEM_CHECK_DEFINED(a,len) ((void) 0) +# define REDZONE_SIZE 0 #endif /* HAVE_VALGRIND */ #ifndef DBUG_OFF @@ -55,3 +61,5 @@ #endif #define TRASH_ALLOC(A,B) do { TRASH_FILL(A,B,0xA5); MEM_UNDEFINED(A,B); } while(0) #define TRASH_FREE(A,B) do { TRASH_FILL(A,B,0x8F); MEM_NOACCESS(A,B); } while(0) + +#endif /* MY_VALGRIND_INCLUDED */ diff --git a/include/my_xml.h b/include/my_xml.h index cd7665df9dab134708f73466291c5057d82b9382..846448a06d97bdced9093b011bb636491cb52716 100644 --- a/include/my_xml.h +++ b/include/my_xml.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_xml_h diff --git a/include/myisam.h b/include/myisam.h index f7a3ae8cc8aa40940cc5284b0b6d454a557c16c7..2a3444f78f6bed216d9e182ec65151fcf7cc4f52 100644 --- a/include/myisam.h +++ b/include/myisam.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file should be included when using myisam_funktions */ @@ -373,7 +373,7 @@ typedef struct st_mi_sort_param int (*key_read)(struct st_mi_sort_param *,void *); int (*key_write)(struct st_mi_sort_param *, const void *); void (*lock_in_memory)(HA_CHECK *); - int (*write_keys)(struct st_mi_sort_param *, register uchar **, + int (*write_keys)(struct st_mi_sort_param *, uchar **, ulonglong , struct st_buffpek *, IO_CACHE *); my_off_t (*read_to_buffer)(IO_CACHE *,struct st_buffpek *, uint); int (*write_key)(struct st_mi_sort_param *, IO_CACHE *,uchar *, @@ -383,16 +383,16 @@ typedef struct st_mi_sort_param /* functions in mi_check */ void myisamchk_init(HA_CHECK *param); int chk_status(HA_CHECK *param, MI_INFO *info); -int chk_del(HA_CHECK *param, register MI_INFO *info, ulonglong test_flag); +int chk_del(HA_CHECK *param, MI_INFO *info, ulonglong test_flag); int chk_size(HA_CHECK *param, MI_INFO *info); int chk_key(HA_CHECK *param, MI_INFO *info); int chk_data_link(HA_CHECK *param, MI_INFO *info, my_bool extend); -int mi_repair(HA_CHECK *param, register MI_INFO *info, +int mi_repair(HA_CHECK *param, MI_INFO *info, char * name, int rep_quick); -int mi_sort_index(HA_CHECK *param, register MI_INFO *info, char * name); -int mi_repair_by_sort(HA_CHECK *param, register MI_INFO *info, +int mi_sort_index(HA_CHECK *param, MI_INFO *info, char * name); +int mi_repair_by_sort(HA_CHECK *param, MI_INFO *info, const char * name, int rep_quick); -int mi_repair_parallel(HA_CHECK *param, register MI_INFO *info, +int mi_repair_parallel(HA_CHECK *param, MI_INFO *info, const char * name, int rep_quick); int change_to_newfile(const char * filename, const char * old_ext, const char * new_ext, time_t backup_time, myf myflags); diff --git a/include/myisamchk.h b/include/myisamchk.h index 3520cff7d8078e64c2b4fcce2b9a9eccbab6f5a0..4ff8a86c56a7312b081f0d3ca727ed9f217993f0 100644 --- a/include/myisamchk.h +++ b/include/myisamchk.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Definitions needed for myisamchk/mariachk.c */ diff --git a/include/myisammrg.h b/include/myisammrg.h index 89293537989376751faeef52e68dcc320af3b15f..a1b921bbbc3a4d7f0888e16464e817bb5016ce57 100644 --- a/include/myisammrg.h +++ b/include/myisammrg.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file should be included when using merge_isam_funktions */ diff --git a/include/myisampack.h b/include/myisampack.h index 0795455dc3e340286c5aa2c830bdd80cf82654f5..22820ca7158c748db99bbfec9c904fb36c2de2d6 100644 --- a/include/myisampack.h +++ b/include/myisampack.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Storing of values in high byte first order. diff --git a/include/mysql.h b/include/mysql.h index c538614c5ee3bb22b61faf5d9c5857e547a8f33a..1ab727de7884db6f227d8c6c1a49e48302866037 100644 --- a/include/mysql.h +++ b/include/mysql.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file defines the client API to MySQL and also the ABI of the diff --git a/include/mysql/auth_dialog_client.h b/include/mysql/auth_dialog_client.h index 5cbafcc22cca46a8d9cd34cdf738bbf9e0936ef6..f1ad3e6983da916e83b2445955786e8367def793 100644 --- a/include/mysql/auth_dialog_client.h +++ b/include/mysql/auth_dialog_client.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/client_plugin.h b/include/mysql/client_plugin.h index 84fb3c6798d2bc03fb50bae890024b4c4e7fa051..990cecc9773dec271df0242b13b43cb13a325d01 100644 --- a/include/mysql/client_plugin.h +++ b/include/mysql/client_plugin.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/plugin.h b/include/mysql/plugin.h index 47a3b9b43e13525900fa1df4ab5b97f81cf5b279..b098439d2c78d31d62eba85c5739fdd4584a72a4 100644 --- a/include/mysql/plugin.h +++ b/include/mysql/plugin.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_PLUGIN_INCLUDED #define MYSQL_PLUGIN_INCLUDED diff --git a/include/mysql/plugin_audit.h b/include/mysql/plugin_audit.h index cbdd6591b70ffeed25ea0beb23dd035edb5763de..b90d8d664ebcf9bc089ac87203b044c003142f7c 100644 --- a/include/mysql/plugin_audit.h +++ b/include/mysql/plugin_audit.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_audit_h #define _my_audit_h diff --git a/include/mysql/plugin_auth.h b/include/mysql/plugin_auth.h index 807bfd4e65234073bd71bb2363db248774f45e32..561acbf22265f4b741f2be6b1df4813862bff72c 100644 --- a/include/mysql/plugin_auth.h +++ b/include/mysql/plugin_auth.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/plugin_auth_common.h b/include/mysql/plugin_auth_common.h index 9d7dd2a08bfe89df674b303ffd0575e6b5c05504..8edd71287546156929c436f20f675784b4959452 100644 --- a/include/mysql/plugin_auth_common.h +++ b/include/mysql/plugin_auth_common.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef _WIN32 #include diff --git a/include/mysql/plugin_encryption.h b/include/mysql/plugin_encryption.h index 5d08f6d30675f486c8f52f5dce5fdc21819f8e17..3c574aa436c65442fbadb83ff6710c914a467185 100644 --- a/include/mysql/plugin_encryption.h +++ b/include/mysql/plugin_encryption.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/plugin_ftparser.h b/include/mysql/plugin_ftparser.h index 4dace4ef3a6936fb6adc21e758eec69e52e9369d..99bb6b24f3f2ce619ba5e3fd58fefb60850a3583 100644 --- a/include/mysql/plugin_ftparser.h +++ b/include/mysql/plugin_ftparser.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_plugin_ftparser_h #define _my_plugin_ftparser_h diff --git a/include/mysql/plugin_password_validation.h b/include/mysql/plugin_password_validation.h index 18c643e877b9a2209df6b9c5318197dd19aab53a..894d17cba0fadc86660d340c5e3818043b4e326a 100644 --- a/include/mysql/plugin_password_validation.h +++ b/include/mysql/plugin_password_validation.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/psi/mysql_file.h b/include/mysql/psi/mysql_file.h index be9d7116b9b023941d0adbff8c1705d0f9f49f4d..0b7d73e5953b442378316067dc5ac6a7ebe78bf0 100644 --- a/include/mysql/psi/mysql_file.h +++ b/include/mysql/psi/mysql_file.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_FILE_H #define MYSQL_FILE_H diff --git a/include/mysql/psi/mysql_idle.h b/include/mysql/psi/mysql_idle.h index 5c72b715b7a21f33308b8d36598c408871b5b3c4..1d054e644ac03de73e61af833e781810bf0112a1 100644 --- a/include/mysql/psi/mysql_idle.h +++ b/include/mysql/psi/mysql_idle.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_IDLE_H #define MYSQL_IDLE_H diff --git a/include/mysql/psi/mysql_socket.h b/include/mysql/psi/mysql_socket.h index fc0a3ce2eb00f22fd1799435c74ae5bf1b2356c5..bf057c661bc03e4c57ab2f959e7d09a5c422951c 100644 --- a/include/mysql/psi/mysql_socket.h +++ b/include/mysql/psi/mysql_socket.h @@ -13,7 +13,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -02110-1301 USA +02110-1335 USA */ #ifndef MYSQL_SOCKET_H diff --git a/include/mysql/psi/mysql_stage.h b/include/mysql/psi/mysql_stage.h index 91a5c12f82ec5cf6959d8f1fd16ee3a17c620114..b6ab09fef5524acadb7064020c9be6e60cd950a0 100644 --- a/include/mysql/psi/mysql_stage.h +++ b/include/mysql/psi/mysql_stage.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_STAGE_H #define MYSQL_STAGE_H diff --git a/include/mysql/psi/mysql_statement.h b/include/mysql/psi/mysql_statement.h index 3d5943fa55ade1794ff4d9091d05ceaa4389051c..767337dac9d3493d2c1acc9616105efccf69ddf9 100644 --- a/include/mysql/psi/mysql_statement.h +++ b/include/mysql/psi/mysql_statement.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_STATEMENT_H #define MYSQL_STATEMENT_H diff --git a/include/mysql/psi/mysql_table.h b/include/mysql/psi/mysql_table.h index 74217a32b13533b807213e892a6e7da9d420fc70..7b9ebcedd938099c55dafbe83e421ee0fbd8e6fb 100644 --- a/include/mysql/psi/mysql_table.h +++ b/include/mysql/psi/mysql_table.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_TABLE_H #define MYSQL_TABLE_H diff --git a/include/mysql/psi/mysql_thread.h b/include/mysql/psi/mysql_thread.h index 08dfeac37f15005b1d72a943676f22c95fcc8b2f..bea43943bb15bd4313de7e11e9458798e08c9942 100644 --- a/include/mysql/psi/mysql_thread.h +++ b/include/mysql/psi/mysql_thread.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_THREAD_H #define MYSQL_THREAD_H diff --git a/include/mysql/psi/psi.h b/include/mysql/psi/psi.h index 3f43445e08a4bde3c90a4b0e589ebe37cc319abf..6feb1f87fa73b74bddf90b6ae70c40f7c9e76dcd 100644 --- a/include/mysql/psi/psi.h +++ b/include/mysql/psi/psi.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_PERFORMANCE_SCHEMA_INTERFACE_H #define MYSQL_PERFORMANCE_SCHEMA_INTERFACE_H diff --git a/include/mysql/psi/psi_abi_v0.h b/include/mysql/psi/psi_abi_v0.h index c896f15a53265684f4e4c2707c9019440837fbf6..0601b61a5c7fd578c43c0632ad6c558ab92cda42 100644 --- a/include/mysql/psi/psi_abi_v0.h +++ b/include/mysql/psi/psi_abi_v0.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file mysql/psi/psi_abi_v0.h diff --git a/include/mysql/psi/psi_abi_v1.h b/include/mysql/psi/psi_abi_v1.h index 54c49f0c51886bc3af3c034f3b160b0d0875b8bb..2d5e81f5972230d88952a8b7af49a2b47489490d 100644 --- a/include/mysql/psi/psi_abi_v1.h +++ b/include/mysql/psi/psi_abi_v1.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file mysql/psi/psi_abi_v1.h diff --git a/include/mysql/psi/psi_abi_v2.h b/include/mysql/psi/psi_abi_v2.h index d2e6f2527b06678d51678e7e12a4353bc085f213..420cc63fc13b7575c19b919ffca963181092ce7b 100644 --- a/include/mysql/psi/psi_abi_v2.h +++ b/include/mysql/psi/psi_abi_v2.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file mysql/psi/psi_abi_v1.h diff --git a/include/mysql/service_base64.h b/include/mysql/service_base64.h index 6020daed6cbb867a9431aa520a235a3551a28267..271cf9d4f448d5b509cf051c59703560024e28d2 100644 --- a/include/mysql/service_base64.h +++ b/include/mysql/service_base64.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_debug_sync.h b/include/mysql/service_debug_sync.h index eee8e6bbe9655e988320094db7fcb2fd1deac563..0bd49a13458baf4c1eb9bea27554c0a478797bab 100644 --- a/include/mysql/service_debug_sync.h +++ b/include/mysql/service_debug_sync.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_encryption.h b/include/mysql/service_encryption.h index 77afc0473723a8ac755cdfa08a49369648bb6892..a4e908f9aff7113c4d64a161cd5815942fa29018 100644 --- a/include/mysql/service_encryption.h +++ b/include/mysql/service_encryption.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_encryption_scheme.h b/include/mysql/service_encryption_scheme.h index 195c7aa4a5c472fcf22c0085677ec511de36eb69..bcd4d646d9e9267fdd452776dd749a37f9b59706 100644 --- a/include/mysql/service_encryption_scheme.h +++ b/include/mysql/service_encryption_scheme.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_kill_statement.h b/include/mysql/service_kill_statement.h index bfb222301eb241c571f6155dc55fe7dec94de94c..9f3415a7de5ccbfaf0404d8560835e4aba16eac4 100644 --- a/include/mysql/service_kill_statement.h +++ b/include/mysql/service_kill_statement.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_SERVICE_KILL_STATEMENT_INCLUDED #define MYSQL_SERVICE_KILL_STATEMENT_INCLUDED diff --git a/include/mysql/service_logger.h b/include/mysql/service_logger.h index aa2c1b335e3cd2816cdbc5b95a62594a49633f92..5979901bdd0c377a5532de8aadd58857f65ad219 100644 --- a/include/mysql/service_logger.h +++ b/include/mysql/service_logger.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_SERVICE_LOGGER_INCLUDED #define MYSQL_SERVICE_LOGGER_INCLUDED diff --git a/include/mysql/service_md5.h b/include/mysql/service_md5.h index 5e589e574159897cea339cd086c863d4c78b6c77..336cf70f85ec4f765f5b8d3dc03f51d62ba3db88 100644 --- a/include/mysql/service_md5.h +++ b/include/mysql/service_md5.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_my_crypt.h b/include/mysql/service_my_crypt.h index 83de0378e4a5fee3857ec179bc3668df6f60eda4..de4a8bb69daa73c566c1a03460bcccf67d29c80f 100644 --- a/include/mysql/service_my_crypt.h +++ b/include/mysql/service_my_crypt.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_my_print_error.h b/include/mysql/service_my_print_error.h index 636151655e53ebca46d6351894ec959360088564..4026233ea5b5776e5054e5f3eaa1a30e496d8124 100644 --- a/include/mysql/service_my_print_error.h +++ b/include/mysql/service_my_print_error.h @@ -11,7 +11,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_SERVICE_MY_PRINT_ERROR_INCLUDED #define MYSQL_SERVICE_MY_PRINT_ERROR_INCLUDED diff --git a/include/mysql/service_my_snprintf.h b/include/mysql/service_my_snprintf.h index 4a99561dd00e8c2bfb2ab60ac808fd1f3cf30ccd..bd1f069c5277b6adbcb684bc31be64ba0b82f09c 100644 --- a/include/mysql/service_my_snprintf.h +++ b/include/mysql/service_my_snprintf.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_progress_report.h b/include/mysql/service_progress_report.h index fc935b6bd0ccffdd34d612bc9d6c918721f40372..11fc24dc3b8b7ace2f7f7ba113ec1a043f9b8f48 100644 --- a/include/mysql/service_progress_report.h +++ b/include/mysql/service_progress_report.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_sha1.h b/include/mysql/service_sha1.h index e000c898dd70471c1d47972818901a2c87925ef4..d864e23fa849d290eeef35fad4c9cb7f7510b17f 100644 --- a/include/mysql/service_sha1.h +++ b/include/mysql/service_sha1.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_sha2.h b/include/mysql/service_sha2.h index ee4975f7f244523bfdc1dd694e03109a9e8f7dff..00834a9b8f43251ab53bbb4d39bd6d6f06917335 100644 --- a/include/mysql/service_sha2.h +++ b/include/mysql/service_sha2.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_alloc.h b/include/mysql/service_thd_alloc.h index e92f81b52c3cc263cc366177dd5e67ced4397ac8..98785b90264cdc884c69f00310b85a3a69ef976d 100644 --- a/include/mysql/service_thd_alloc.h +++ b/include/mysql/service_thd_alloc.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_autoinc.h b/include/mysql/service_thd_autoinc.h index a4e336ab232e484e36743e7a567117279f3842df..28bd2bb1a5eaf8575c5615a182cab1d684182971 100644 --- a/include/mysql/service_thd_autoinc.h +++ b/include/mysql/service_thd_autoinc.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_error_context.h b/include/mysql/service_thd_error_context.h index 7619aa44082b6d8edf731138d4404032a7b9cb62..0b9082dd314cbdc52ab818bbb70a3ea6aa3f066b 100644 --- a/include/mysql/service_thd_error_context.h +++ b/include/mysql/service_thd_error_context.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_rnd.h b/include/mysql/service_thd_rnd.h index 21133c7889ff69d8ffacf7c6df233c3611b1a690..78a93fe172a34681b61136eb22c6e70a07a86947 100644 --- a/include/mysql/service_thd_rnd.h +++ b/include/mysql/service_thd_rnd.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_specifics.h b/include/mysql/service_thd_specifics.h index 161385c387ee9325da9b1b03900f4e9072034a9d..a4078bd5cc0383e2437dcfe7d3ef14afe3617453 100644 --- a/include/mysql/service_thd_specifics.h +++ b/include/mysql/service_thd_specifics.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_timezone.h b/include/mysql/service_thd_timezone.h index f44f011b89165db4c91336f1c8cab165a8149f07..89e75274cf0a8f05448961053010a11fb6fc03e0 100644 --- a/include/mysql/service_thd_timezone.h +++ b/include/mysql/service_thd_timezone.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/service_thd_wait.h b/include/mysql/service_thd_wait.h index c35b35df8202afa2ca6e91e53d8e78757ae3dfe1..c20878fd85b24c3c37e4a46dcae85326fca7097b 100644 --- a/include/mysql/service_thd_wait.h +++ b/include/mysql/service_thd_wait.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_SERVICE_THD_WAIT_INCLUDED #define MYSQL_SERVICE_THD_WAIT_INCLUDED diff --git a/include/mysql/service_wsrep.h b/include/mysql/service_wsrep.h index 267c8cb4e90683f95dba0276ab320fc4872ec3f4..499fbf2c1733189f5fc5f67ac8a7314dceedb565 100644 --- a/include/mysql/service_wsrep.h +++ b/include/mysql/service_wsrep.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/include/mysql/services.h b/include/mysql/services.h index 6168c5ed8dc2575b4e6bd0d12f2a51401f566838..986d430dbf1e5c3721021348144646b7af3da0d6 100644 --- a/include/mysql/services.h +++ b/include/mysql/services.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef __cplusplus extern "C" { diff --git a/include/mysql_async.h b/include/mysql_async.h index 04b975211db09882f3e5d94af9ec5f1a42220ff1..89f263560ac4ba281d0b8e4a41e9b1e2fae3bff3 100644 --- a/include/mysql_async.h +++ b/include/mysql_async.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Common definitions for MariaDB non-blocking client library. */ diff --git a/include/mysql_com.h b/include/mysql_com.h index dd55daf77aa584c133faf181f8ac9fb818629be6..bdbdc4246adda6ed2d43b5b2369b8a9f73116363 100644 --- a/include/mysql_com.h +++ b/include/mysql_com.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* ** Common definition between mysql server & client diff --git a/include/mysql_com_server.h b/include/mysql_com_server.h index 1ea040207d46267d4e9d4d39a645e1f79631dabd..d8bf531c1056ddf1abbece67ec2094e145794ab5 100644 --- a/include/mysql_com_server.h +++ b/include/mysql_com_server.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Definitions private to the server, diff --git a/include/mysql_embed.h b/include/mysql_embed.h index 12b18ff965e4052ca039a0d0f2200cb86369ed3f..e9cbdb6a2755d1890f4b852e9eedf916dcabe1c9 100644 --- a/include/mysql_embed.h +++ b/include/mysql_embed.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Defines that are unique to the embedded version of MySQL */ diff --git a/include/mysql_time.h b/include/mysql_time.h index 24fd7ed61023a66a58371a64d1b483ec6e86ea84..ef78441ba40e18a0cd354c0ed7c04f7603f1a993 100644 --- a/include/mysql_time.h +++ b/include/mysql_time.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _mysql_time_h_ #define _mysql_time_h_ diff --git a/include/mysys_err.h b/include/mysys_err.h index f173ccd7a832bdfcb6e43ca2c146839d875c9030..e313d82eedfe5b907b51604fb92a68f4f7330170 100644 --- a/include/mysys_err.h +++ b/include/mysys_err.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _mysys_err_h #define _mysys_err_h diff --git a/include/password.h b/include/password.h index 082f917e7c02f3696e64b691800ad91bb8fc83f9..917ec1acc00fd7a1fe7d87acb103cccc7ee793a8 100644 --- a/include/password.h +++ b/include/password.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef PASSWORD_INCLUDED #define PASSWORD_INCLUDED diff --git a/include/probes_mysql.d.base b/include/probes_mysql.d.base index 02eb9ec1a6b02fbfc4a0e02256e61aa859576b99..68daa5d7fc610365be562afff312d70e3de81c80 100644 --- a/include/probes_mysql.d.base +++ b/include/probes_mysql.d.base @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* The actual probe names in DTrace scripts will replace '__' by '-'. Thus diff --git a/include/probes_mysql.h b/include/probes_mysql.h index 6d44b972cb3ef8748a44d19ced22c6592cef6597..ce5be041714604442babdd3a7e58495e2cef372b 100644 --- a/include/probes_mysql.h +++ b/include/probes_mysql.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef PROBES_MYSQL_H diff --git a/include/rijndael.h b/include/rijndael.h index 474b3250dcbfdabc7837c70ee051770115ddcaa2..552430ae8031870984f772526fd13f7284ab3f0e 100644 --- a/include/rijndael.h +++ b/include/rijndael.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/include/service_versions.h b/include/service_versions.h index 3bbf2a9a6258ccd2093d59da9519375cfd26b3c8..a614cd715fcb4acc4a18bd3caa41180787647442 100644 --- a/include/service_versions.h +++ b/include/service_versions.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef _WIN32 #define SERVICE_VERSION __declspec(dllexport) void * diff --git a/include/sql_common.h b/include/sql_common.h index 34b2a093e43ab8b25528cdba9906da16f2e1f02b..c30ca4b10310f9889ad190a639e0fd04be4b5f41 100644 --- a/include/sql_common.h +++ b/include/sql_common.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef __cplusplus extern "C" { diff --git a/include/sslopt-case.h b/include/sslopt-case.h index 4a8c65948cb629b3c56a3a44a8654c0ea959ce79..fe53088e89b977848a7b50ab7131f4e0b67f6553 100644 --- a/include/sslopt-case.h +++ b/include/sslopt-case.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #if defined(HAVE_OPENSSL) && !defined(EMBEDDED_LIBRARY) case OPT_SSL_KEY: diff --git a/include/sslopt-longopts.h b/include/sslopt-longopts.h index e605d0134e74fd256b5e54e2d386dfb41cc4bda2..be64e7f65903a85452e03eb5491f9d987bb190d3 100644 --- a/include/sslopt-longopts.h +++ b/include/sslopt-longopts.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #if defined(HAVE_OPENSSL) && !defined(EMBEDDED_LIBRARY) diff --git a/include/sslopt-vars.h b/include/sslopt-vars.h index 8e669760faf9029d6b66e23041df89bf50b9b02d..c65aa693b76d1e025f661fefdfd2e8db8ac1ef47 100644 --- a/include/sslopt-vars.h +++ b/include/sslopt-vars.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #if defined(HAVE_OPENSSL) && !defined(EMBEDDED_LIBRARY) #ifdef SSL_VARS_NOT_STATIC diff --git a/include/t_ctype.h b/include/t_ctype.h index 7db3b7bbf71fe1cb30f38e971a12ba35c752fac5..9164c6222bd36ece80bb51f9781b9dfa46824202 100644 --- a/include/t_ctype.h +++ b/include/t_ctype.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Copyright (C) 1998, 1999 by Pruet Boonma, all rights reserved. diff --git a/include/thr_alarm.h b/include/thr_alarm.h index 8de70d4cdb8d717c90fb2bbca88ab89c6b81e8aa..250590a0e2f65b2059184d6ede8f97a3862c9d3c 100644 --- a/include/thr_alarm.h +++ b/include/thr_alarm.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Prototypes when using thr_alarm library functions */ diff --git a/include/thr_lock.h b/include/thr_lock.h index bc916b8ec9c72a201fd1f9d3dd410d8e7f317594..f596e0fa4374b53ae54de62776403ac123ed8a73 100644 --- a/include/thr_lock.h +++ b/include/thr_lock.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* For use with thr_lock:s */ diff --git a/include/thr_timer.h b/include/thr_timer.h index 724fdac41c8c3354506f5aa14ae47aea678d3a8d..4f0c4f08660fbcd584c239a2fa7ae286eb7cdbb1 100644 --- a/include/thr_timer.h +++ b/include/thr_timer.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Prototypes when using thr_timer functions */ diff --git a/include/thread_pool_priv.h b/include/thread_pool_priv.h index 4270c32c826861a9564c4973fa5dc73cf2f2561d..d8cdc58f0f69a1df52d504701291bf03be17485b 100644 --- a/include/thread_pool_priv.h +++ b/include/thread_pool_priv.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef THREAD_POOL_PRIV_INCLUDED diff --git a/include/typelib.h b/include/typelib.h index ab5a0f0d2582aed79cf32db27793037c67194566..8cfb5c6bea8ff5a99085364f5354287108fc0415 100644 --- a/include/typelib.h +++ b/include/typelib.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _typelib_h diff --git a/include/violite.h b/include/violite.h index a7165ca91a98611ac290a99ba3e76bcf4b572ff8..589350a826de6222861654987b065fb165c0e288 100644 --- a/include/violite.h +++ b/include/violite.h @@ -11,8 +11,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + along with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* * Vio Lite. diff --git a/include/waiting_threads.h b/include/waiting_threads.h index cd4db35701c1bccf77fe70e5df77ea8e332c44cf..217b49bd8b2dd575a1c20c0325352acaf4ab0e2c 100644 --- a/include/waiting_threads.h +++ b/include/waiting_threads.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _waiting_threads_h #define _waiting_threads_h diff --git a/include/welcome_copyright_notice.h b/include/welcome_copyright_notice.h index 1b4b17cfc0d51f5706cd99fede6649472b7a67ea..22d8d2042682217daed44d21af16e2f2f876d38c 100644 --- a/include/welcome_copyright_notice.h +++ b/include/welcome_copyright_notice.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _welcome_copyright_notice_h_ #define _welcome_copyright_notice_h_ diff --git a/include/wqueue.h b/include/wqueue.h index 69cb715a97d46d3b1139afd8499ec49340a9a7fd..ce7fe4e4057e16551fc07513aa3f7ccce238dc5b 100644 --- a/include/wqueue.h +++ b/include/wqueue.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef WQUEUE_INCLUDED #define WQUEUE_INCLUDED diff --git a/include/wsrep.h b/include/wsrep.h index d9800b7014f315ae23dd3bd9bb917b73a47998e2..f0d42265ec5788e922d71e1b0384b0f41773f2fa 100644 --- a/include/wsrep.h +++ b/include/wsrep.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/libmysql/CMakeLists.txt b/libmysql/CMakeLists.txt index 001bd884865a8e494144adb9e9f27635310b5247..9e2f8c50fca271bf2da7d3919b48abf4fc992089 100644 --- a/libmysql/CMakeLists.txt +++ b/libmysql/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/include diff --git a/libmysql/client_settings.h b/libmysql/client_settings.h index b233614fa1e8e052b14d9b4d247d207fc7746b47..8a5990f72b0512d451ad2921231984bc8787b00a 100644 --- a/libmysql/client_settings.h +++ b/libmysql/client_settings.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef CLIENT_SETTINGS_INCLUDED #define CLIENT_SETTINGS_INCLUDED diff --git a/libmysql/conf_to_src.c b/libmysql/conf_to_src.c index 0e92388c93c1baaa33099404fd50dd19c7595930..57d3ee864ac6b14de5ca62f356c7bb180d13f382 100644 --- a/libmysql/conf_to_src.c +++ b/libmysql/conf_to_src.c @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* can't use -lmysys because this prog is used to create -lstrings */ diff --git a/libmysql/errmsg.c b/libmysql/errmsg.c index e30cdc9762b3c7979dd9fd95558b026ef8cbd74a..50f25fc167b423fd4cc93c6eb10f6d44fb1c28a5 100644 --- a/libmysql/errmsg.c +++ b/libmysql/errmsg.c @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Error messages for MySQL clients */ /* (Error messages for the daemon are in share/language/errmsg.sys) */ diff --git a/libmysql/get_password.c b/libmysql/get_password.c index 36f8f9b08454ec068c23d119af8ce5971edf8f08..3f4bc374099d213564de7b8f5b1d1be04facbd85 100644 --- a/libmysql/get_password.c +++ b/libmysql/get_password.c @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* ** Ask for a password from tty diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index 9b884ebbd201ec6b39e46942f38c14c7f9f24139..e9a3feefd7198a8ad3f224a50aa28fc27d737c5d 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/libmysqld/CMakeLists.txt b/libmysqld/CMakeLists.txt index 4621670c28ca3be5a45d478982fb87281fbf36f6..98410b805b5db663feff830dc8d0255adc770da9 100644 --- a/libmysqld/CMakeLists.txt +++ b/libmysqld/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ADD_DEFINITIONS(-DMYSQL_SERVER -DEMBEDDED_LIBRARY ${SSL_DEFINES}) diff --git a/libmysqld/emb_qcache.cc b/libmysqld/emb_qcache.cc index a1a66421db82c6af1a73cbbd9c5a77a6e3f69c69..edb5ee913594c7156de8683200f895aee17ae0ed 100644 --- a/libmysqld/emb_qcache.cc +++ b/libmysqld/emb_qcache.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "my_global.h" // HAVE_* #include "sql_priv.h" diff --git a/libmysqld/emb_qcache.h b/libmysqld/emb_qcache.h index 8fd166df88dfe359062426f6026e3febd3ea7c77..fc60194d7f548b73599cea986a78dca492932753 100644 --- a/libmysqld/emb_qcache.h +++ b/libmysqld/emb_qcache.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_cache.h" /* Query_cache_block */ diff --git a/libmysqld/embedded_priv.h b/libmysqld/embedded_priv.h index c096954a46014afe9ec7e76b9bc4528dc67d38f3..77955ea499eba86885c5fe4be1798c255725d523 100644 --- a/libmysqld/embedded_priv.h +++ b/libmysqld/embedded_priv.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Prototypes for the embedded version of MySQL */ diff --git a/libmysqld/examples/CMakeLists.txt b/libmysqld/examples/CMakeLists.txt index 1eb07a2adf87c7262cf236849a1403aad95a292c..52fbe42aaa2219352ef356082f05f7e480175fe2 100644 --- a/libmysqld/examples/CMakeLists.txt +++ b/libmysqld/examples/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/libmysqld/include diff --git a/libmysqld/examples/builder-sample/emb_sample.bpr b/libmysqld/examples/builder-sample/emb_sample.bpr index 100e5b98dfdbdae47a2d8a6cff4af82e55b9c5ff..ab66dce87888420412b5d6cf4a2a29b70c880790 100644 --- a/libmysqld/examples/builder-sample/emb_sample.bpr +++ b/libmysqld/examples/builder-sample/emb_sample.bpr @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # --------------------------------------------------------------------------- !if !$d(BCB) diff --git a/libmysqld/examples/builder-sample/emb_sample.cpp b/libmysqld/examples/builder-sample/emb_sample.cpp index 0c8f4fa0598ddfdd0aeeb479fb4543ca8c9112ed..61b867c91e0b8c90b6e74058864e7b0cc1bf6ada 100644 --- a/libmysqld/examples/builder-sample/emb_sample.cpp +++ b/libmysqld/examples/builder-sample/emb_sample.cpp @@ -12,7 +12,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA //--------------------------------------------------------------------------- #include diff --git a/libmysqld/examples/builder-sample/emb_samples.cpp b/libmysqld/examples/builder-sample/emb_samples.cpp index aab1385f6e68615dd4bdf511c48dc71684eca64f..94787d587f188c2789483e82a1ef18f58d4177c0 100644 --- a/libmysqld/examples/builder-sample/emb_samples.cpp +++ b/libmysqld/examples/builder-sample/emb_samples.cpp @@ -12,7 +12,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA //--------------------------------------------------------------------------- #include diff --git a/libmysqld/examples/builder-sample/emb_samples.h b/libmysqld/examples/builder-sample/emb_samples.h index 3024e75d53332842533152786b4d7ed66bac4304..310f051af6353352f9b739a1e19268a96a9a6a74 100644 --- a/libmysqld/examples/builder-sample/emb_samples.h +++ b/libmysqld/examples/builder-sample/emb_samples.h @@ -12,7 +12,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA //--------------------------------------------------------------------------- #ifndef emb_samplesH diff --git a/libmysqld/examples/test-run b/libmysqld/examples/test-run index 3b1cff2ddd8e8b27a295f6bed5806251b877342f..7c221ad9b4f75d6bdcf47b91b781fbdb115a2d1f 100755 --- a/libmysqld/examples/test-run +++ b/libmysqld/examples/test-run @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA # This is slapped together as a quick way to run the tests and # is not meant for prime time. Please hack at it and submit diff --git a/libmysqld/libmysqld.c b/libmysqld/libmysqld.c index 543ab86643ee3743862db28138e4cd9cd8d40a43..8f3680a49d54cc52546df894cdfc83d8d5fdf149 100644 --- a/libmysqld/libmysqld.c +++ b/libmysqld/libmysqld.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/libservices/CMakeLists.txt b/libservices/CMakeLists.txt index e20be6d7a7ccde69fdb85380fabab02e708744cf..819775371d39068af17e6062c644532b457b1d66 100644 --- a/libservices/CMakeLists.txt +++ b/libservices/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) diff --git a/libservices/base64_service.c b/libservices/base64_service.c index af35ccd2a1cba72596738e221f402d39e68c7722..d892f39f2ef82013c05abd6a1d2f397df9989118 100644 --- a/libservices/base64_service.c +++ b/libservices/base64_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION base64_service= (void*)VERSION_base64; diff --git a/libservices/debug_sync_service.c b/libservices/debug_sync_service.c index 3afa088dee7581ec0b97015abb1fffad40891e63..364e753af5d85823aa2769c279558c82ad3dde34 100644 --- a/libservices/debug_sync_service.c +++ b/libservices/debug_sync_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/libservices/encryption_scheme_service.c b/libservices/encryption_scheme_service.c index 87d85df16b4a0964d99dd08b72ee668400612d75..a27fe1621a08bc58ad628f478cb4cd77e9f16eac 100644 --- a/libservices/encryption_scheme_service.c +++ b/libservices/encryption_scheme_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION encryption_scheme_service= (void*)VERSION_encryption_scheme; diff --git a/libservices/encryption_service.c b/libservices/encryption_service.c index f57575ae3e86106e34bcec2dc93db1bd80219b2b..bf31aacdc90de011c68894e818649ed5b6c1e76e 100644 --- a/libservices/encryption_service.c +++ b/libservices/encryption_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION encryption_service= (void*)VERSION_encryption; diff --git a/libservices/kill_statement_service.c b/libservices/kill_statement_service.c index 4c7cacb241d61e30624743e9923ddb2d88ae736d..c3d1e31736a7e91942c937e766a6996dbb34ed52 100644 --- a/libservices/kill_statement_service.c +++ b/libservices/kill_statement_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_kill_statement_service= (void*)VERSION_kill_statement; diff --git a/libservices/logger_service.c b/libservices/logger_service.c index 7d2ab40a7c5aaf3abf351ee8745d60ccb3c7090b..36ba00916c0c4ca8f8fe1f21383fee6922024f18 100644 --- a/libservices/logger_service.c +++ b/libservices/logger_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/libservices/my_md5_service.c b/libservices/my_md5_service.c index f993751a9a53fa68120cfb579276052f917541e5..3937f6c97d370c796f6a47ed9f40979aa812a88e 100644 --- a/libservices/my_md5_service.c +++ b/libservices/my_md5_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION my_md5_service= (void*)VERSION_my_md5; diff --git a/libservices/my_print_error_service.c b/libservices/my_print_error_service.c index 7642668d470caa76fb1590c7fb33e5b91f8aa1ed..85ab4b7424a3fe6b655d2bc4828ed307bf3ed0f6 100644 --- a/libservices/my_print_error_service.c +++ b/libservices/my_print_error_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION my_print_error_service= (void*)VERSION_my_print_error; \ No newline at end of file diff --git a/libservices/my_sha1_service.c b/libservices/my_sha1_service.c index 196c1939082e7f0d197253775cd3bedf9d0a85c3..7a8c3c698b742cc03b83cc68e5df3bcca0ca5554 100644 --- a/libservices/my_sha1_service.c +++ b/libservices/my_sha1_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION my_sha1_service= (void*)VERSION_my_sha1; diff --git a/libservices/my_sha2_service.c b/libservices/my_sha2_service.c index aa174e7d1f00ba54d57d0e1829c62b46d4a7fdd4..040deb6e3908bc84c3ee6959610ed1da49751c3a 100644 --- a/libservices/my_sha2_service.c +++ b/libservices/my_sha2_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION my_sha2_service= (void*)VERSION_my_sha2; diff --git a/libservices/my_snprintf_service.c b/libservices/my_snprintf_service.c index 8ac507394b0e41306b5dbbfe1d278f1045ebd6bc..6609cd144a63a95f9c399e806db109384e8a8a3b 100644 --- a/libservices/my_snprintf_service.c +++ b/libservices/my_snprintf_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION my_snprintf_service= (void*)VERSION_my_snprintf; diff --git a/libservices/progress_report_service.c b/libservices/progress_report_service.c index cbae2d67426ab4a77e270bb2e6a7aa1708be6951..02e8c7dc410f4e96ed25b980211d3f394f3d7172 100644 --- a/libservices/progress_report_service.c +++ b/libservices/progress_report_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION progress_report_service= (void*)VERSION_progress_report; diff --git a/libservices/thd_alloc_service.c b/libservices/thd_alloc_service.c index 54e498c6cd1b19d44f19f763bc06a04627edb45f..cf8f514e76583fc63c623aa8e77fd11f40e3253a 100644 --- a/libservices/thd_alloc_service.c +++ b/libservices/thd_alloc_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_alloc_service= (void*)VERSION_thd_alloc; diff --git a/libservices/thd_autoinc_service.c b/libservices/thd_autoinc_service.c index cb859a70e55b73d18f3330800fe993f47e6da635..bfaec3438e5bdde77c1898f8296341a440428700 100644 --- a/libservices/thd_autoinc_service.c +++ b/libservices/thd_autoinc_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_autoinc_service= (void *) VERSION_thd_autoinc; diff --git a/libservices/thd_error_context_service.c b/libservices/thd_error_context_service.c index 80eb6263b5235c06389d226fa00cafe812933a52..3acb0ea7ef80cec10976ba0c442468d40cdfe2ce 100644 --- a/libservices/thd_error_context_service.c +++ b/libservices/thd_error_context_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_error_context_service= (void *) VERSION_thd_error_context; diff --git a/libservices/thd_rnd_service.c b/libservices/thd_rnd_service.c index fbba611a8ff4fe3429eeb2f34857d7a965f379c9..cc3a99ea6634f172b470659491a6ee3405d3b38e 100644 --- a/libservices/thd_rnd_service.c +++ b/libservices/thd_rnd_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_rnd_service= (void *) VERSION_thd_rnd; diff --git a/libservices/thd_specifics_service.c b/libservices/thd_specifics_service.c index 19d4eb28045e22203cb20c279f9650a2da1c42b4..f11381e82585fa5e6405140f31934bddae1b1c09 100644 --- a/libservices/thd_specifics_service.c +++ b/libservices/thd_specifics_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_specifics_service= (void *) VERSION_thd_specifics; diff --git a/libservices/thd_timezone_service.c b/libservices/thd_timezone_service.c index 2c93453f8caf91d472db5bfde00a9269b19d2e93..89d8c1a64ca41262b0957cd8f31dcc036d1b66c2 100644 --- a/libservices/thd_timezone_service.c +++ b/libservices/thd_timezone_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include SERVICE_VERSION thd_timezone_service= (void *) VERSION_thd_timezone; diff --git a/libservices/thd_wait_service.c b/libservices/thd_wait_service.c index 1f8c19ac55597cceac4b0dd9cd94b6fa2dca91e7..a8424ae06143ff37e8a7e518312bb97da46d4a32 100644 --- a/libservices/thd_wait_service.c +++ b/libservices/thd_wait_service.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/libservices/wsrep_service.c b/libservices/wsrep_service.c index cdd7e4005718e5758d18e9cb4ecb0eb99c42718c..ceb7ebf9d9a3b8a5126e14710b9f5c67b58b7d02 100644 --- a/libservices/wsrep_service.c +++ b/libservices/wsrep_service.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/man/CMakeLists.txt b/man/CMakeLists.txt index 75e5615a6a26b675af5eb69eb1104394ec2e91da..6580820a835d057011b6cf0f9ff2c8b374603531 100644 --- a/man/CMakeLists.txt +++ b/man/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(MAN1_SERVER innochecksum.1 my_print_defaults.1 myisam_ftdump.1 myisamchk.1 aria_chk.1 aria_dump_log.1 aria_ftdump.1 aria_pack.1 aria_read_log.1 diff --git a/man/comp_err.1 b/man/comp_err.1 index da1cf0316360bb47093cee689e84e890f18d0bb5..b3b3d684009f561802dcd0b4800f7cdfc59bbda6 100644 --- a/man/comp_err.1 +++ b/man/comp_err.1 @@ -253,7 +253,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/innochecksum.1 b/man/innochecksum.1 index c4c02647211417b497c7ad92de1e059063f60bde..1c04eb6f611896357823807d1ace8b5aaa53fd6c 100644 --- a/man/innochecksum.1 +++ b/man/innochecksum.1 @@ -231,7 +231,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/make_win_bin_dist.1 b/man/make_win_bin_dist.1 index a49641868b6209e9ba70e623d129fb5c169f5e58..6effde8a8a5554932accada3c73de84aa3d2e5f5 100644 --- a/man/make_win_bin_dist.1 +++ b/man/make_win_bin_dist.1 @@ -168,7 +168,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/msql2mysql.1 b/man/msql2mysql.1 index d7c37afe8308ac397e31a18e2989c799f729f9c3..b5b2e54d580e21601f17eb63cd29e0bd41881af4 100644 --- a/man/msql2mysql.1 +++ b/man/msql2mysql.1 @@ -59,7 +59,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/my_print_defaults.1 b/man/my_print_defaults.1 index 814db1db33624eda2f6a6905c201e349f984f779..9dff513d7d41013cbd17c9e4f5e6077896f9ee8e 100644 --- a/man/my_print_defaults.1 +++ b/man/my_print_defaults.1 @@ -212,7 +212,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/myisam_ftdump.1 b/man/myisam_ftdump.1 index fbcafd0b255241a586c6b2ad10084f8bdbd8a4cd..de00fca7afc3c9fd0691ae98465d8b2098eca971 100644 --- a/man/myisam_ftdump.1 +++ b/man/myisam_ftdump.1 @@ -241,7 +241,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/myisamchk.1 b/man/myisamchk.1 index 0582b92cdc07aac75a170023132074ffc43c9a41..b93f8c3ef5f14f90a262ad3e1e343c99cc3659b4 100644 --- a/man/myisamchk.1 +++ b/man/myisamchk.1 @@ -2513,7 +2513,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/myisamlog.1 b/man/myisamlog.1 index 043f974d53553f988a659ee074380d5476194cee..c5ba4bf233e06b32926854c1d5975a9016680424 100644 --- a/man/myisamlog.1 +++ b/man/myisamlog.1 @@ -224,7 +224,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/myisampack.1 b/man/myisampack.1 index a9a50d5b93952bc696d6ab89b2797345046a8cb4..b8a6e184834847ae9915b69fef404558cc2d187f 100644 --- a/man/myisampack.1 +++ b/man/myisampack.1 @@ -831,7 +831,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql-stress-test.pl.1 b/man/mysql-stress-test.pl.1 index 4f20384c0cf4a407d554316e42284faf3c7177fd..58c36ccedc487069877fde537c18875cae02c990 100644 --- a/man/mysql-stress-test.pl.1 +++ b/man/mysql-stress-test.pl.1 @@ -488,7 +488,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql-test-run.pl.1 b/man/mysql-test-run.pl.1 index 6292bd2ffcd4a20fb0e90cfe89a0ac8ceef87bdd..8b8eafd7bddd550743d99ba23b50cf637d9006e7 100644 --- a/man/mysql-test-run.pl.1 +++ b/man/mysql-test-run.pl.1 @@ -2318,7 +2318,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql.1 b/man/mysql.1 index ec11f050c7ebe129e56103995fe2673c6b7ad816..53cc1cd6c002f14fe64dd50685fd84e84ee8ae92 100644 --- a/man/mysql.1 +++ b/man/mysql.1 @@ -3098,7 +3098,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "NOTES" .IP " 1." 4 diff --git a/man/mysql.server.1 b/man/mysql.server.1 index 3aed4452eec57ed78f3435e959ab4509011efd50..1e6bd3fd855dec4b0705bc5f12fff956a29dba20 100644 --- a/man/mysql.server.1 +++ b/man/mysql.server.1 @@ -172,7 +172,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_client_test.1 b/man/mysql_client_test.1 index fc5f2a9d4e2c140dca3e6421cc911cae86347b18..d7ee025734cd10ba3f3e1b7d0803b882621b724b 100644 --- a/man/mysql_client_test.1 +++ b/man/mysql_client_test.1 @@ -325,7 +325,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_config.1 b/man/mysql_config.1 index 47e8a3a0ee4b2742cde9843c66ddc2d103dc171d..afe7a0fdbadb52c97831b645e626d6f24699403e 100644 --- a/man/mysql_config.1 +++ b/man/mysql_config.1 @@ -239,7 +239,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_convert_table_format.1 b/man/mysql_convert_table_format.1 index bd4ce64ea038e742a8e1ca379ad642bb8c8add66..2bd447053025daabe4f9e6265ce681363edcd46d 100644 --- a/man/mysql_convert_table_format.1 +++ b/man/mysql_convert_table_format.1 @@ -214,7 +214,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_find_rows.1 b/man/mysql_find_rows.1 index 8d42bffdc93fa43fce08e78bb2f453ac125f67fe..44232c2fd5b40cacde5cc3e9f87003d490263b99 100644 --- a/man/mysql_find_rows.1 +++ b/man/mysql_find_rows.1 @@ -150,7 +150,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_fix_extensions.1 b/man/mysql_fix_extensions.1 index c7057cce03aa36f9e8e5b53096469a31555980e9..297ab4e727ea333fbfbbe544ba1c599999ab30a4 100644 --- a/man/mysql_fix_extensions.1 +++ b/man/mysql_fix_extensions.1 @@ -60,7 +60,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_install_db.1 b/man/mysql_install_db.1 index 636c59740a55204a797f4669c742e2a20a6b1dad..cce89467ea25fae7f8f2ce4417dc2bcb0a8c9447 100644 --- a/man/mysql_install_db.1 +++ b/man/mysql_install_db.1 @@ -375,7 +375,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_plugin.1 b/man/mysql_plugin.1 index b3feb3f19ca95ab0d99c8ec67ba796382f6a9c4e..4f8bc7e6ff32ef91131c6853a48bfe62e9fb2596 100644 --- a/man/mysql_plugin.1 +++ b/man/mysql_plugin.1 @@ -367,7 +367,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_secure_installation.1 b/man/mysql_secure_installation.1 index 4009e1bee2fba19f55a1939a7bd59d8c38a018b9..788956cbaa7a3746a636cc5af2d5f2787ab71323 100644 --- a/man/mysql_secure_installation.1 +++ b/man/mysql_secure_installation.1 @@ -159,7 +159,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_setpermission.1 b/man/mysql_setpermission.1 index d3697c2c95f587649e7c938e424267933e9c0308..8ff12ab1624a2fce19538a6596f640a9d15818c2 100644 --- a/man/mysql_setpermission.1 +++ b/man/mysql_setpermission.1 @@ -160,7 +160,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_tzinfo_to_sql.1 b/man/mysql_tzinfo_to_sql.1 index 8f96d3f659a92d8cbaa8eb9eb6b9e6b88dc2d4a3..dcf7b8a1c29690c0ca849e739d4c65075acef095 100644 --- a/man/mysql_tzinfo_to_sql.1 +++ b/man/mysql_tzinfo_to_sql.1 @@ -111,7 +111,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_upgrade.1 b/man/mysql_upgrade.1 index f04fa12238339418b52448a08885543815b4a51c..0d4d15d84d24d7fea8dd945a7392cbc05b0dbebb 100644 --- a/man/mysql_upgrade.1 +++ b/man/mysql_upgrade.1 @@ -702,7 +702,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_waitpid.1 b/man/mysql_waitpid.1 index c5f0c9d0c93174441fa331d1743c2b73bc15a956..98539f140744bf0b72f84b056cb26613633bfe3c 100644 --- a/man/mysql_waitpid.1 +++ b/man/mysql_waitpid.1 @@ -119,7 +119,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysql_zap.1 b/man/mysql_zap.1 index ed9596cea452086a7fd67fe196d8aa926ea64511..980f03d68556219e575084cf97162b97f9c395b9 100644 --- a/man/mysql_zap.1 +++ b/man/mysql_zap.1 @@ -115,7 +115,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlaccess.1 b/man/mysqlaccess.1 index 0262870e68e1bdf849cd6674cb935da9ea31c79c..c13b118b11c74eeed16d8941ec1026e8d0bac7d8 100644 --- a/man/mysqlaccess.1 +++ b/man/mysqlaccess.1 @@ -421,7 +421,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqladmin.1 b/man/mysqladmin.1 index cfda6f1c4215e98c8898c344aad76813a820a729..f2eb9cc5fd2dc2606ab1e93a554284de2988863a 100644 --- a/man/mysqladmin.1 +++ b/man/mysqladmin.1 @@ -1483,7 +1483,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlbinlog.1 b/man/mysqlbinlog.1 index 12fc8925949d1f2548ec238bd42f135d8fe77f34..40e1e4467aee7375cdc3d30912fc3ec4cda2cef9 100644 --- a/man/mysqlbinlog.1 +++ b/man/mysqlbinlog.1 @@ -2068,7 +2068,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "NOTES" .IP " 1." 4 diff --git a/man/mysqlbug.1 b/man/mysqlbug.1 index 76572150ac23445ba1e4f074fa7aa577259e2239..204ad9556cda43ff64f954be2446809b0b440176 100644 --- a/man/mysqlbug.1 +++ b/man/mysqlbug.1 @@ -63,7 +63,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlcheck.1 b/man/mysqlcheck.1 index 914a6f8952e322211b47e5a129c095576ad9a07a..0f7199b2fb244dd007299dc6c5a1a47f56bcdfe4 100644 --- a/man/mysqlcheck.1 +++ b/man/mysqlcheck.1 @@ -1149,7 +1149,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqld.8 b/man/mysqld.8 index 37cdbb3e1f2be75149ace418b679f55b6876ab87..e28c3d620b4d7c1cd6be2509776ee52d018b06ac 100644 --- a/man/mysqld.8 +++ b/man/mysqld.8 @@ -51,7 +51,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqld_multi.1 b/man/mysqld_multi.1 index bb0da44bc7e70e2bc4ce794b584a76dc74d5a69a..4c5e85563258c54db711e062d3c7c45cd93c3e90 100644 --- a/man/mysqld_multi.1 +++ b/man/mysqld_multi.1 @@ -674,7 +674,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqld_safe.1 b/man/mysqld_safe.1 index a70fb0cd4397d23bc7a353fea0514f759685e63a..00dc9d17bcb57a46062ae0d8375864a7c2637724 100644 --- a/man/mysqld_safe.1 +++ b/man/mysqld_safe.1 @@ -876,7 +876,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqldump.1 b/man/mysqldump.1 index b5abf0a9574d48a9eaf7e76e9f24148b1ba8f09e..82aa4cddbdfe5dc9ba7fa3070920f939915c427d 100644 --- a/man/mysqldump.1 +++ b/man/mysqldump.1 @@ -2644,7 +2644,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "NOTES" .IP " 1." 4 diff --git a/man/mysqldumpslow.1 b/man/mysqldumpslow.1 index ee9daf5a15c3faf11eafa303e1adacddec84bac3..3beebbc9a9f64b66e3f7fecd5d33db791188321c 100644 --- a/man/mysqldumpslow.1 +++ b/man/mysqldumpslow.1 @@ -331,7 +331,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlhotcopy.1 b/man/mysqlhotcopy.1 index c06858b6fb35237732025c7e7eb98d636a5805ab..d11d798ca4da4803af39f68a6ec468b57bae8175 100644 --- a/man/mysqlhotcopy.1 +++ b/man/mysqlhotcopy.1 @@ -526,7 +526,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlimport.1 b/man/mysqlimport.1 index d14d6a03edf7af7a32a2fa3c2ef00ba22ced4136..61d270d705798d8b608cda343d3eae211f9dfc53 100644 --- a/man/mysqlimport.1 +++ b/man/mysqlimport.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLIMPORT\FR" "1" "14/12/2015" "MariaDB 10\&.1" "MariaDB Database System" +.TH "\FBMYSQLIMPORT\FR" "1" "21 May 2019" "MariaDB 10\&.1" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- @@ -346,6 +346,22 @@ option\&. .sp -1 .IP \(bu 2.3 .\} +.\" mysqlimport: ignore-foreign-keys option +.\" ignore-foreign-keys option: mysqlimport +\fB\-\-ignore\-foreign\-keys\fR, +\fB\-k\fR +.sp +Disable foreign key checks while importing the data\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} .\" mysqlimport: ignore-lines option .\" ignore-lines option: mysqlimport \fB\-\-ignore\-lines=\fR\fB\fIN\fR\fR @@ -853,7 +869,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlshow.1 b/man/mysqlshow.1 index c4ee9f40c45cda1287adc5c39425404c50934cfb..8208e84110e6ab436cdd31bd3ab5bd340f9bda97 100644 --- a/man/mysqlshow.1 +++ b/man/mysqlshow.1 @@ -711,7 +711,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqlslap.1 b/man/mysqlslap.1 index 7bf08e29122bc39c3a80fe05bd77af9434e085d1..81ad910314c7230ef2804da5bb89e132d8a5ebaa 100644 --- a/man/mysqlslap.1 +++ b/man/mysqlslap.1 @@ -1161,7 +1161,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/mysqltest.1 b/man/mysqltest.1 index 4e75c7450e465ef138f0b7390bf70629085df3ab..385196cf47cc554db8ffde678164788a0395eea9 100644 --- a/man/mysqltest.1 +++ b/man/mysqltest.1 @@ -1076,7 +1076,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/perror.1 b/man/perror.1 index 2108a6b76d3d49e6fed464295e5419856301a2b9..fe0d8f02d3a666456e820dc1eca16a855d83b825 100644 --- a/man/perror.1 +++ b/man/perror.1 @@ -149,7 +149,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/replace.1 b/man/replace.1 index f6bb858e67d6caca2e538ca36a39e45949d0a48d..9c1f84d68e0fc2fd55d9dd22ceabbad76de481ef 100644 --- a/man/replace.1 +++ b/man/replace.1 @@ -159,7 +159,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/resolve_stack_dump.1 b/man/resolve_stack_dump.1 index f12726d01f24948f5277ae269ee5c7450a9107f0..6fb78d99480b8e14ba7788976996cfc70d420e8d 100644 --- a/man/resolve_stack_dump.1 +++ b/man/resolve_stack_dump.1 @@ -116,7 +116,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/resolveip.1 b/man/resolveip.1 index 07f344ebcf304f359f2b3937f58997371db5eee9..de38cecf62e651e5a3a8b379e15b801cd3433c4b 100644 --- a/man/resolveip.1 +++ b/man/resolveip.1 @@ -98,7 +98,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/man/tokuftdump.1 b/man/tokuftdump.1 index d0a11a840a551c8d3858ca0fc5f0f5139eff8d29..5b293e54637211c981de0698cde01fc5cfa3df78 100644 --- a/man/tokuftdump.1 +++ b/man/tokuftdump.1 @@ -229,7 +229,7 @@ This documentation is free software; you can redistribute it and/or modify it on .PP This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP -You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. +You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/. .sp .SH "SEE ALSO" For more information, please refer to the MariaDB Knowledge Base, available online at https://mariadb.com/kb/ diff --git a/mysql-test/CMakeLists.txt b/mysql-test/CMakeLists.txt index c03f0c358386ef449500f4c6af6c83458077e800..f0a45d8496ac4210bb375ba7f39ffc82dbf02030 100644 --- a/mysql-test/CMakeLists.txt +++ b/mysql-test/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INSTALL_MYSQL_TEST("." ".") diff --git a/mysql-test/extra/binlog_tests/drop_temp_table.test b/mysql-test/extra/binlog_tests/drop_temp_table.test index c852ee4c8a07824c1ad3d9112da411fa964f12c3..9139ac76017d03309afcc0df783e44f931c564d9 100644 --- a/mysql-test/extra/binlog_tests/drop_temp_table.test +++ b/mysql-test/extra/binlog_tests/drop_temp_table.test @@ -1,3 +1,4 @@ +--source include/have_innodb.inc --disable_warnings DROP DATABASE IF EXISTS `drop-temp+table-test`; @@ -14,12 +15,8 @@ CREATE TEMPORARY TABLE `table:name` (a INT); CREATE TEMPORARY TABLE shortn2 (a INT); ############################################################################## -# BUG#46572 DROP TEMPORARY table IF EXISTS does not have a consistent behavior -# in ROW mode -# -# In RBR, 'DROP TEMPORARY TABLE ...' statement should never be binlogged no -# matter if the tables exist or not. In contrast, both in SBR and MBR, the -# statement should be always binlogged no matter if the tables exist or not. +# MDEV-20091: DROP TEMPORARY TABLE IF EXISTS statements will be written +# to binlog only if the corresponding temporary table exists. ############################################################################## CREATE TEMPORARY TABLE tmp(c1 int); CREATE TEMPORARY TABLE tmp1(c1 int); @@ -30,12 +27,12 @@ CREATE TABLE t(c1 int); DROP TEMPORARY TABLE IF EXISTS tmp; --disable_warnings -# Before fixing BUG#46572, 'DROP TEMPORARY TABLE IF EXISTS...' statement was -# binlogged when the table did not exist in RBR. +# Post MDEV-20091: Following DROP TEMPORARY TABLE statement should not be +# logged as the table is already dropped above. DROP TEMPORARY TABLE IF EXISTS tmp; -# In RBR, 'DROP TEMPORARY TABLE ...' statement is never binlogged no matter if -# the tables exist or not. +# Post MDEV-20091: Only DROP TEMPORARY TABLE statement should be written only +# for 'tmp1' table. DROP TEMPORARY TABLE IF EXISTS tmp, tmp1; DROP TEMPORARY TABLE tmp3; @@ -79,6 +76,12 @@ DROP DATABASE `drop-temp+table-test`; # if there are open temporary tables. As such the implicit drop # for temporary tables on session closing must be logged. # +# MDEV-20091: DROP TEMPORARY TABLE IF EXISTS statements will be written to +# binlog only if the corresponding temporary table exists. In row based +# replication temporary tables are not replicated hence their corresponding +# DROP TEMPORARY TABLE statement will be not be written to binary log upon +# session closure. +# RESET MASTER; @@ -92,11 +95,82 @@ SELECT @@session.binlog_format; --disconnect con1 -- connection default +if (!`SELECT @@BINLOG_FORMAT = 'ROW'`) { --let $wait_binlog_event= DROP --source include/wait_for_binlog_event.inc +} -- source include/show_binlog_events.inc RESET MASTER; DROP TABLE t1; # End of 4.1 tests + + +--echo # +--echo # BUG#28642318: POINT IN TIME RECOVERY USING MYSQLBINLOG BROKEN +--echo # WITH TEMPORARY TABLE -> ERRORS + +--echo # Test case for DELETE query. + +RESET MASTER; +connect (con1,localhost,root,,); + +--echo # Set up. +--connection default +--disable_warnings +SET @save_binlog_format= @@session.binlog_format; +SET @@session.binlog_format=STATEMENT; +let $MYSQLD_DATADIR= `select @@datadir`; +CREATE TABLE t1 (a INT) ENGINE=INNODB; + +--connection con1 +SET @@session.binlog_format=STATEMENT; +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; + +--connection default +DELETE d1, d2 FROM t1 AS d1, t1 AS d2 WHERE d1.a<>d2.a; + +--exec $MYSQL_BINLOG --force-if-open $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/bug28642318.sql + +--connection default +DROP TABLE t1; + +--echo # DELETE query fails with table re-open error without patch. +--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug28642318.sql + +--echo # Clean up. +--connection con1 +DROP TABLE IF EXISTS t1; + +--connection default +DROP TABLE IF EXISTS t1; +RESET MASTER; + +--echo # Test case for DROP query. + +--connection default +CREATE TABLE t1 (a INT) ENGINE=INNODB; + +--connection con1 +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; + +--connection default +DROP TABLE t1; + +--connection con1 +DROP TABLE t1; + +--connection default +--exec $MYSQL_BINLOG --force-if-open $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/bug28642318.sql + +--echo # DROP table query fails with unknown table error without patch. +--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug28642318.sql + +--echo # Clean up +--connection default +SET @@session.binlog_format= @save_binlog_format; +RESET MASTER; + +--disconnect con1 +--enable_warnings diff --git a/mysql-test/extra/rpl_tests/rpl_blackhole.test b/mysql-test/extra/rpl_tests/rpl_blackhole.test index 1a0eeb3cf15e9fe15c1fb1dc3eba9b2472897e6f..569a24e525264c6f01ba6acb873ec1d106069b45 100644 --- a/mysql-test/extra/rpl_tests/rpl_blackhole.test +++ b/mysql-test/extra/rpl_tests/rpl_blackhole.test @@ -11,7 +11,7 @@ # executing statement. If difference is >0, then something was # written to the binary log on the slave. -connection slave; +# On Connection Slave let $before = query_get_value("SHOW MASTER STATUS", Position, 1); --echo [on master] diff --git a/mysql-test/extra/rpl_tests/rpl_blackhole_basic.test b/mysql-test/extra/rpl_tests/rpl_blackhole_basic.test new file mode 100644 index 0000000000000000000000000000000000000000..f3fdc9150804c4eefe7440e707fd7233d97819d3 --- /dev/null +++ b/mysql-test/extra/rpl_tests/rpl_blackhole_basic.test @@ -0,0 +1,97 @@ +# PURPOSE. Test that blackhole works with replication in all three +# modes: STATEMENT, MIXED, and ROW. +# +# METHOD. We start by creating a table on the master and then change +# the engine to use blackhole on the slave. +# +# After insert/update/delete of one or more rows, the test the +# proceeds to check that replication is running after replicating an +# change, that the blackhole engine does not contain anything (which +# is just a check that the correct engine is used), and that something +# is written to the binary log. +# +# Whe check INSERT, UPDATE, and DELETE statement for tables with no +# key (forcing a range search on the slave), primary keys (using a +# primary key lookup), and index/key with multiple matches (forcing an +# index search). + +# We start with no primary key +CREATE TABLE t1 (a INT, b INT, c INT); +CREATE TABLE t2 (a INT, b INT, c INT); + +sync_slave_with_master; +ALTER TABLE t1 ENGINE=BLACKHOLE; + +connection master; +INSERT INTO t2 VALUES (1,9,1), (2,9,2), (3,9,3), (4,9,4); +sync_slave_with_master; + +# Test insert, no primary key +let $statement = INSERT INTO t1 VALUES (1,1,1),(2,1,2),(3,1,3),(4,1,4); +source extra/rpl_tests/rpl_blackhole.test; + +# Test update, no primary key +let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 1; +source extra/rpl_tests/rpl_blackhole.test; + +# Test delete, no primary key +let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 1; +source extra/rpl_tests/rpl_blackhole.test; + +# Test INSERT-SELECT into Blackhole, no primary key +let $statement = INSERT INTO t1 SELECT * FROM t2; +source extra/rpl_tests/rpl_blackhole.test; + +# +# The MASTER has MyISAM as the engine for both tables. The SLAVE has Blackhole +# on t1 (transactional engine) and MyISAM on t2 (non-transactional engine). +# +# In MIXED mode, the command "INSERT INTO t2 SELECT * FROM t1" is logged as +# statement on the master. On the slave, it is tagged as unsafe because the +# statement mixes both transactional and non-transactional engines and as such +# its changes are logged as rows. However, due to the nature of the blackhole +# engine, no rows are returned and thus any chain replication would make the +# next master on the chain diverge. +# +# Fo this reason, we have disabled the statement. +# +# Test INSERT-SELECT from Blackhole, no primary key +# let $statement = INSERT INTO t2 SELECT * FROM t1; +# source extra/rpl_tests/rpl_blackhole.test; +# + +connection master; +ALTER TABLE t1 ADD PRIMARY KEY pk_t1 (a,b); +sync_slave_with_master; + +# Test insert, primary key +let $statement = INSERT INTO t1 VALUES (1,2,1),(2,2,2),(3,2,3),(4,2,4); +source extra/rpl_tests/rpl_blackhole.test; + +# Test update, primary key +let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 2; +source extra/rpl_tests/rpl_blackhole.test; + +# Test delete, primary key +let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 2; +source extra/rpl_tests/rpl_blackhole.test; + +connection master; +ALTER TABLE t1 DROP PRIMARY KEY, ADD KEY key_t1 (a); +sync_slave_with_master; + +# Test insert, key +let $statement = INSERT INTO t1 VALUES (1,3,1),(2,3,2),(3,3,3),(4,3,4); +source extra/rpl_tests/rpl_blackhole.test; + +# Test update, key +let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 3; +source extra/rpl_tests/rpl_blackhole.test; + +# Test delete, key +let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 3; +source extra/rpl_tests/rpl_blackhole.test; + +connection master; +DROP TABLE t1,t2; +sync_slave_with_master; diff --git a/mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test b/mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test index ffd7fe1a5c4dab6b3bd7f04bfe94afa7d8aeb344..f8b521e3abf972afa538b13f195e6f8a400a4133 100644 --- a/mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test +++ b/mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test @@ -32,6 +32,10 @@ # is any # Drop-Temp-TT-Temp - Drops two temporary T-tables if there is any # Drop-Temp-NN-Temp - Drops two temporary N-tables if there is any +# +# Note: MDEV-20091: DROP TEMPORARY TABLE IF EXISTS statements will be written +# to binlog only if the corresponding temporary table exists. +# # Drop-Temp-Xe-Temp - Tries to drop a temporary table that does not exist # Drop-Temp-NXe-Temp - Drops a temporary N-table if there is any and # a temporary table that does not exist diff --git a/mysql-test/include/binlog_parallel_replication_marks.test b/mysql-test/include/binlog_parallel_replication_marks.test index ff35875aece3e6bae29c4219d1c4e524f057f250..4e673bd30c321b0400b182c43b776613a9e4a176 100644 --- a/mysql-test/include/binlog_parallel_replication_marks.test +++ b/mysql-test/include/binlog_parallel_replication_marks.test @@ -49,9 +49,16 @@ connection default; # We need to wait for the implicit DROP TEMPORARY TABLE to be logged after # tmp_con disconnect, otherwise we get sporadic test failures. +# MDEV-20091: DROP TEMPORARY TABLE IF EXISTS statements will be written to +# binlog only if the corresponding temporary table exists. In row based +# replication temporary tables are not replicated hence their corresponding +# DROP TEMPORARY TABLE statement will be not be written to binary log upon +# session closure. + +if (!`SELECT @@BINLOG_FORMAT = 'ROW'`) { --let $wait_condition= SELECT variable_value > $before_drop_pos FROM information_schema.global_status WHERE variable_name = 'binlog_snapshot_position' --source include/wait_condition.inc - +} --let $binlog_pos2=query_get_value(SHOW MASTER STATUS, Position, 1) --let $binlog_file= query_get_value(SHOW MASTER STATUS, File, 1) diff --git a/mysql-test/include/default_my.cnf b/mysql-test/include/default_my.cnf index 6b0493cdb08412663424ebeda3f0d6c589203043..a46e748daa084719ee1015e43bc2ae3343331bbd 100644 --- a/mysql-test/include/default_my.cnf +++ b/mysql-test/include/default_my.cnf @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Use default setting for mysqld processes !include default_mysqld.cnf diff --git a/mysql-test/include/default_mysqld.cnf b/mysql-test/include/default_mysqld.cnf index 44a7fd12d27a919e3b7884c034d61b066cdf46e4..568881ef57ed3e96b1c47101e65e0eb1c55db8cc 100644 --- a/mysql-test/include/default_mysqld.cnf +++ b/mysql-test/include/default_mysqld.cnf @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Default values that applies to all MySQL Servers [mysqld] diff --git a/mysql-test/include/have_perfschema.inc b/mysql-test/include/have_perfschema.inc index d932ce0f9bdd0a3ed61d6fd8250b22a5b91bf81e..6b68d717eb87689d77ab00b97e358157fa5e2c57 100644 --- a/mysql-test/include/have_perfschema.inc +++ b/mysql-test/include/have_perfschema.inc @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA if (!`SELECT count(*) FROM information_schema.engines WHERE (support = 'YES' OR support = 'DEFAULT') AND diff --git a/mysql-test/include/mtr_check.sql b/mysql-test/include/mtr_check.sql index 6b25c75276cbd0b34901fbacf517fabe36602b8c..c00e0f978bf8f68f2b424a3b77826c8167789ee4 100644 --- a/mysql-test/include/mtr_check.sql +++ b/mysql-test/include/mtr_check.sql @@ -12,7 +12,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, --- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +-- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA delimiter ||; diff --git a/mysql-test/include/mtr_warnings.sql b/mysql-test/include/mtr_warnings.sql index 535090b75ddb46f3c43b5a72e9be733150674d4b..40dcfadf12afdfcc666e79f58d3444f31b7fdbf6 100644 --- a/mysql-test/include/mtr_warnings.sql +++ b/mysql-test/include/mtr_warnings.sql @@ -11,7 +11,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, --- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +-- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA delimiter ||; diff --git a/mysql-test/include/set_binlog_format_mixed.sql b/mysql-test/include/set_binlog_format_mixed.sql index 65c779ef141d6b6f8a1bfb408d45d395e4277e18..9e127cfdab05d3b4bae1f76339aa5a6679a7c347 100644 --- a/mysql-test/include/set_binlog_format_mixed.sql +++ b/mysql-test/include/set_binlog_format_mixed.sql @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA SET GLOBAL BINLOG_FORMAT=MIXED; SET SESSION BINLOG_FORMAT=MIXED; diff --git a/mysql-test/include/set_binlog_format_row.sql b/mysql-test/include/set_binlog_format_row.sql index 0400ed48be976914c9ec5262eb2a9111a1fc1413..2fedf941c475f2e27c7715216e1beb99813f392c 100644 --- a/mysql-test/include/set_binlog_format_row.sql +++ b/mysql-test/include/set_binlog_format_row.sql @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA SET GLOBAL BINLOG_FORMAT=ROW; SET SESSION BINLOG_FORMAT=ROW; diff --git a/mysql-test/include/set_binlog_format_statement.sql b/mysql-test/include/set_binlog_format_statement.sql index b582230e648fdf9439792a51a822ad7f46dbe97e..624df1c898c4757ef2fa61905ca89d2597a3ff2c 100644 --- a/mysql-test/include/set_binlog_format_statement.sql +++ b/mysql-test/include/set_binlog_format_statement.sql @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA SET GLOBAL BINLOG_FORMAT=STATEMENT; SET SESSION BINLOG_FORMAT=STATEMENT; diff --git a/mysql-test/lib/My/Config.pm b/mysql-test/lib/My/Config.pm index 4af59a178de6f3b208edd37a2f7528dde0d16562..86bb7a5f961b71b251789770fcd7b9b55c3c75b2 100644 --- a/mysql-test/lib/My/Config.pm +++ b/mysql-test/lib/My/Config.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Config::Option; @@ -327,7 +327,13 @@ sub new { # Skip comment next; } - + # Correctly process Replication Filter when they are defined + # with connection name. + elsif ( $line =~ /^([\w]+.[\w]+)\s*=\s*(.*)\s*/){ + my $option= $1; + my $value= $2; + $self->insert($group_name, $option, $value); + } else { croak "Unexpected line '$line' found in '$path'"; } diff --git a/mysql-test/lib/My/ConfigFactory.pm b/mysql-test/lib/My/ConfigFactory.pm index 7584a99c0937f8140eba991944e6b5aab6077006..a137bb9ca89d5201d50f017758ba3cdcebc66360 100644 --- a/mysql-test/lib/My/ConfigFactory.pm +++ b/mysql-test/lib/My/ConfigFactory.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::ConfigFactory; diff --git a/mysql-test/lib/My/CoreDump.pm b/mysql-test/lib/My/CoreDump.pm index a421d51ec98dbae831893fac9e90032bc98bf510..1ba94223b681b1b4e9b6c5729894a2486fa49183 100644 --- a/mysql-test/lib/My/CoreDump.pm +++ b/mysql-test/lib/My/CoreDump.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::CoreDump; diff --git a/mysql-test/lib/My/File/Path.pm b/mysql-test/lib/My/File/Path.pm index 1b7982d6b36c7e0310b803b3d0169ff7e798ef93..d60027c909ec6514cf64e62582b080f8261c446b 100644 --- a/mysql-test/lib/My/File/Path.pm +++ b/mysql-test/lib/My/File/Path.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::File::Path; use strict; diff --git a/mysql-test/lib/My/Find.pm b/mysql-test/lib/My/Find.pm index 1d5e0f368bca82973eba5b55e97089374d99b942..b5a07ac86322f3249faf8e1daa09000b31788b52 100644 --- a/mysql-test/lib/My/Find.pm +++ b/mysql-test/lib/My/Find.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Find; diff --git a/mysql-test/lib/My/Handles.pm b/mysql-test/lib/My/Handles.pm index d120eb7b1d42919a38bfa20973f7d11ae25166fa..3c9513fec8f1b8740c57f1afc85f5bca7cdbff02 100644 --- a/mysql-test/lib/My/Handles.pm +++ b/mysql-test/lib/My/Handles.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Handles; diff --git a/mysql-test/lib/My/Options.pm b/mysql-test/lib/My/Options.pm index ff3992ecb2ee1373d4ee6c39c1d2995083d56239..6e0efe862e7a462e28dfb2962a3e109a8e64d49b 100644 --- a/mysql-test/lib/My/Options.pm +++ b/mysql-test/lib/My/Options.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Options; diff --git a/mysql-test/lib/My/Platform.pm b/mysql-test/lib/My/Platform.pm index 110cf8a20e0edebe5f17f93dbcd3dd3d3099e197..cb2ac3895e384358fe7cd5e133275eca0a6474ec 100644 --- a/mysql-test/lib/My/Platform.pm +++ b/mysql-test/lib/My/Platform.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Platform; diff --git a/mysql-test/lib/My/SafeProcess.pm b/mysql-test/lib/My/SafeProcess.pm index 2980992290c4c878c79e88a5d268a8f6200b68e6..926d17ed66e8bdc322eb0eda9f2e1c2aa1a07497 100644 --- a/mysql-test/lib/My/SafeProcess.pm +++ b/mysql-test/lib/My/SafeProcess.pm @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::SafeProcess; diff --git a/mysql-test/lib/My/SafeProcess/Base.pm b/mysql-test/lib/My/SafeProcess/Base.pm index c5ac2ab51c211f157f6611e2d4b6f2d447674084..818e6e34e115a6fd99122a35fdb59e0c02465797 100644 --- a/mysql-test/lib/My/SafeProcess/Base.pm +++ b/mysql-test/lib/My/SafeProcess/Base.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/My/SafeProcess/CMakeLists.txt b/mysql-test/lib/My/SafeProcess/CMakeLists.txt index 7d39129d0f5579911b10f5eb48de42c62152d3ca..543e1dfb8f1d67c678b76fa6d462f8337c58a8eb 100644 --- a/mysql-test/lib/My/SafeProcess/CMakeLists.txt +++ b/mysql-test/lib/My/SafeProcess/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA IF (NOT INSTALL_MYSQLTESTDIR) RETURN() diff --git a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc index 2ac29c61bc7c3755e76b835ab367c8fefb93dab6..a8c4011016b2bafcfaeccd84be1c375dfa7ef38f 100644 --- a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc +++ b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/mysql-test/lib/My/SafeProcess/safe_process.cc b/mysql-test/lib/My/SafeProcess/safe_process.cc index f8bed8001145bdcf37614657da009c68bc8c92d7..a63c156522820809e64f7462cee4d7bd89769773 100644 --- a/mysql-test/lib/My/SafeProcess/safe_process.cc +++ b/mysql-test/lib/My/SafeProcess/safe_process.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/mysql-test/lib/My/SafeProcess/safe_process_win.cc b/mysql-test/lib/My/SafeProcess/safe_process_win.cc index dca2faded717f95752521820886bb9d92ed1e3c2..7d81bf1a1b42d4466bdbc7dd8a865e597a703194 100644 --- a/mysql-test/lib/My/SafeProcess/safe_process_win.cc +++ b/mysql-test/lib/My/SafeProcess/safe_process_win.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/mysql-test/lib/My/SysInfo.pm b/mysql-test/lib/My/SysInfo.pm index 4cca116620e3002af2ca27050a0defc5cae56c63..1e5ac353deff09738e66b6030e7a6a662ce76fc5 100644 --- a/mysql-test/lib/My/SysInfo.pm +++ b/mysql-test/lib/My/SysInfo.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::SysInfo; diff --git a/mysql-test/lib/My/Test.pm b/mysql-test/lib/My/Test.pm index 806c90734fdb99053e497ea4ad6d4f5d196fe56c..49ce2fb5af9f67656af4c80a430a2ac7827b2d06 100644 --- a/mysql-test/lib/My/Test.pm +++ b/mysql-test/lib/My/Test.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # diff --git a/mysql-test/lib/mtr_cases.pm b/mysql-test/lib/mtr_cases.pm index d758b81c1c7ef8bab2108369a2bc8a737c53f137..8c94c281edf2b37919db66dc54e9fb02f2f407bb 100644 --- a/mysql-test/lib/mtr_cases.pm +++ b/mysql-test/lib/mtr_cases.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_gcov.pl b/mysql-test/lib/mtr_gcov.pl index a6e1f8efd5ffe961063f480e449a13efca53a3cd..bad4969f710181be3464843e7e337fe41dd2d026 100644 --- a/mysql-test/lib/mtr_gcov.pl +++ b/mysql-test/lib/mtr_gcov.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_gprof.pl b/mysql-test/lib/mtr_gprof.pl index 34e722a251f8c5566d96e9b95fe58a088da4becc..eb440e488f024505e374e1a0c8fcee526bf77c8f 100644 --- a/mysql-test/lib/mtr_gprof.pl +++ b/mysql-test/lib/mtr_gprof.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_io.pl b/mysql-test/lib/mtr_io.pl index 0de4d9612aceeb1825b4c83c5cda1c39904cafcd..0010c1627d40b97c486d2a341be047ff66f1ac07 100644 --- a/mysql-test/lib/mtr_io.pl +++ b/mysql-test/lib/mtr_io.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_match.pm b/mysql-test/lib/mtr_match.pm index 140885b62738a0ce2f560dd55a01f6ec9cd33210..73cdb3bdc2964b7be63e561cbb6a768f650a283e 100644 --- a/mysql-test/lib/mtr_match.pm +++ b/mysql-test/lib/mtr_match.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_misc.pl b/mysql-test/lib/mtr_misc.pl index 98f2c27ebce2c4cd9ad6799bd0b2f5e4730cec7a..24085f542f73c6a738f4d46b566fe6ab4caaa2cf 100644 --- a/mysql-test/lib/mtr_misc.pl +++ b/mysql-test/lib/mtr_misc.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_process.pl b/mysql-test/lib/mtr_process.pl index 4bb6be711f0baf4d8420bd4b7aa2f54dcde0ee51..cee9f2b6ed63fee00511c8bc75c6b91fe375796e 100644 --- a/mysql-test/lib/mtr_process.pl +++ b/mysql-test/lib/mtr_process.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_report.pm b/mysql-test/lib/mtr_report.pm index d93d8adf34ce303770b2704f9109ae87eed8be51..3701ad79b15d24bb3195494f8214caac869c3637 100644 --- a/mysql-test/lib/mtr_report.pm +++ b/mysql-test/lib/mtr_report.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the @@ -36,6 +36,21 @@ use POSIX qw[ _exit ]; use IO::Handle qw[ flush ]; use mtr_results; +use Term::ANSIColor; + +my %color_map = qw/pass green + retry-pass green + fail red + retry-fail red + disabled bright_black + skipped yellow + reset reset/; +sub xterm_color { + if (-t STDOUT and defined $ENV{TERM} and $ENV{TERM} =~ /xterm/) { + syswrite STDOUT, color($color_map{$_[0]}); + } +} + my $tot_real_time= 0; our $timestamp= 0; @@ -498,7 +513,16 @@ sub mtr_print (@) { sub mtr_report (@) { if (defined $verbose) { - print _name(). join(" ", @_). "\n"; + my @s = split /\[ (\S+) \]/, _name() . "@_\n"; + if (@s > 1) { + print $s[0]; + xterm_color($s[1]); + print "[ $s[1] ]"; + xterm_color('reset'); + print $s[2]; + } else { + print $s[0]; + } } } diff --git a/mysql-test/lib/mtr_results.pm b/mysql-test/lib/mtr_results.pm index 92b03756c041567bd0827cedb957c18efd167168..9438b936834b1b8cb14f39079c52643601b39e58 100644 --- a/mysql-test/lib/mtr_results.pm +++ b/mysql-test/lib/mtr_results.pm @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package mtr_results; use strict; diff --git a/mysql-test/lib/mtr_stress.pl b/mysql-test/lib/mtr_stress.pl index 6ab607e643958aeffc87c333fe1b56b5c8e602cd..3a9ca8fafccd37023086551e884f1864d65494bf 100644 --- a/mysql-test/lib/mtr_stress.pl +++ b/mysql-test/lib/mtr_stress.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/mtr_unique.pm b/mysql-test/lib/mtr_unique.pm index 8d719786283c05aac59d963d4569150205a79ba7..f276e6e10773b4f7c7eff7299d84034b7e8ffffb 100644 --- a/mysql-test/lib/mtr_unique.pm +++ b/mysql-test/lib/mtr_unique.pm @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package mtr_unique; diff --git a/mysql-test/lib/t/Base.t b/mysql-test/lib/t/Base.t index b540944f3a1f7922e99f93d867a75595786f6a25..d31670afcfed15e7dbdeb68f8c1828bece05d876 100644 --- a/mysql-test/lib/t/Base.t +++ b/mysql-test/lib/t/Base.t @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use Test::More qw(no_plan); use strict; diff --git a/mysql-test/lib/t/Find.t b/mysql-test/lib/t/Find.t index d609fd86dd9bb434e13bbad22c33632c1ee30011..e6b8f5a898bd89cf8b06ac99ddbc470424b1bb72 100644 --- a/mysql-test/lib/t/Find.t +++ b/mysql-test/lib/t/Find.t @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use Test::More qw(no_plan); use strict; diff --git a/mysql-test/lib/t/Options.t b/mysql-test/lib/t/Options.t index c832b885cb7b750a7c47874b2db20e8129dda526..d0a52e0c264ecf4c8b7793331828c56487e35299 100644 --- a/mysql-test/lib/t/Options.t +++ b/mysql-test/lib/t/Options.t @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use Test::More qw(no_plan); use strict; diff --git a/mysql-test/lib/t/Platform.t b/mysql-test/lib/t/Platform.t index c78c22ddb5a7b94082705fe9ac76004635a8dfa0..4a9df1a5f63a40f85733867500839e0ee52d262f 100644 --- a/mysql-test/lib/t/Platform.t +++ b/mysql-test/lib/t/Platform.t @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use Test::More qw(no_plan); use strict; diff --git a/mysql-test/lib/t/SafeProcess.t b/mysql-test/lib/t/SafeProcess.t index 0fab69b9088cfa4b913fc4eb1ee8be6460e7d2c7..e9f87d8837fe92754192be49584873a46e73e6dd 100644 --- a/mysql-test/lib/t/SafeProcess.t +++ b/mysql-test/lib/t/SafeProcess.t @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use FindBin; diff --git a/mysql-test/lib/t/SafeProcessStress.pl b/mysql-test/lib/t/SafeProcessStress.pl index a5dbeecfb4bac9f63803d862f91ab49272fc1c53..f591e9665ddf3e0439440b5c5b125407bfd9746b 100755 --- a/mysql-test/lib/t/SafeProcessStress.pl +++ b/mysql-test/lib/t/SafeProcessStress.pl @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use FindBin; diff --git a/mysql-test/lib/t/copytree.t b/mysql-test/lib/t/copytree.t index cdb99b851c496928bf5e3375d69a030369c45932..15a41081b24714585cad40d4b7fa686714d2ac29 100644 --- a/mysql-test/lib/t/copytree.t +++ b/mysql-test/lib/t/copytree.t @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; diff --git a/mysql-test/lib/t/dummyd.pl b/mysql-test/lib/t/dummyd.pl index fae747354d731e251a195b782d361fb80a6907b1..15164428b9557516b4777d7407341cfff3dd6781 100644 --- a/mysql-test/lib/t/dummyd.pl +++ b/mysql-test/lib/t/dummyd.pl @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use Getopt::Long; diff --git a/mysql-test/lib/t/rmtree.t b/mysql-test/lib/t/rmtree.t index 8c9863a1eddc7b5892eef9a958f6d96a1b41eddd..40c9e96eabddd9f2af3d30ef53085082ceb991b1 100644 --- a/mysql-test/lib/t/rmtree.t +++ b/mysql-test/lib/t/rmtree.t @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; diff --git a/mysql-test/lib/t/testMyConfig.t b/mysql-test/lib/t/testMyConfig.t index f79e87766767d40adbe2c2fab62ed985e36d49e9..9f7067f436bf04f31c2f90aa2bdc9ff4897b71c7 100755 --- a/mysql-test/lib/t/testMyConfig.t +++ b/mysql-test/lib/t/testMyConfig.t @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use warnings; diff --git a/mysql-test/lib/t/testMyConfigFactory.t b/mysql-test/lib/t/testMyConfigFactory.t index 9f43bed3d98902120886ced89b83ce3e6bd7d78c..f38f660e85a5efa8e5213062f69bc090c60aadad 100755 --- a/mysql-test/lib/t/testMyConfigFactory.t +++ b/mysql-test/lib/t/testMyConfigFactory.t @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use warnings; diff --git a/mysql-test/lib/t/test_child.pl b/mysql-test/lib/t/test_child.pl index 38d9f906738f9cc73b5f15b86e1bc7a1b96a0bf8..efbec4a9620a722302c4ae29421cace5ca3d106f 100755 --- a/mysql-test/lib/t/test_child.pl +++ b/mysql-test/lib/t/test_child.pl @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use strict; use Getopt::Long; diff --git a/mysql-test/lib/v1/My/Config.pm b/mysql-test/lib/v1/My/Config.pm index cc4c34b2d62300de0ded96ef4c4430089f17d6ad..13405dc283425293ee41b09c0d5b85495aa91ef0 100644 --- a/mysql-test/lib/v1/My/Config.pm +++ b/mysql-test/lib/v1/My/Config.pm @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA package My::Config::Option; diff --git a/mysql-test/lib/v1/mtr_cases.pl b/mysql-test/lib/v1/mtr_cases.pl index 067e7e5e4d1f67d45655816cd084f24ff9b673cc..faa673a93043260a4b08458a6616b14c1b26c018 100644 --- a/mysql-test/lib/v1/mtr_cases.pl +++ b/mysql-test/lib/v1/mtr_cases.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_gcov.pl b/mysql-test/lib/v1/mtr_gcov.pl index 56942be72a8c99050994299fd26efb4591f83e83..b5839fe4deceaac12c47612322e97d6106cff706 100644 --- a/mysql-test/lib/v1/mtr_gcov.pl +++ b/mysql-test/lib/v1/mtr_gcov.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_gprof.pl b/mysql-test/lib/v1/mtr_gprof.pl index 04c6eced28afab4a60ea7f60d8827ff37e28e88c..c794eb5f2fe9ab06dfbcd35c81dcf6e226cfe2c6 100644 --- a/mysql-test/lib/v1/mtr_gprof.pl +++ b/mysql-test/lib/v1/mtr_gprof.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_im.pl b/mysql-test/lib/v1/mtr_im.pl index c34acc9c82ff375f282dfa992aa61d1040a0647a..2aff160d4efeb29893a19a254146c58596bcb9eb 100644 --- a/mysql-test/lib/v1/mtr_im.pl +++ b/mysql-test/lib/v1/mtr_im.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_io.pl b/mysql-test/lib/v1/mtr_io.pl index 5769240bf7f780dbca6e048691b3526a4bfcd011..2176c07f5600850ac7ea0c08b6ff47e07866bd88 100644 --- a/mysql-test/lib/v1/mtr_io.pl +++ b/mysql-test/lib/v1/mtr_io.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_match.pl b/mysql-test/lib/v1/mtr_match.pl index 5cc74efb8c9059bb0fb2b12d0cfa393759edd798..f1933cd982c14aabb5be7b1a4a1b3d3a5bfbd043 100644 --- a/mysql-test/lib/v1/mtr_match.pl +++ b/mysql-test/lib/v1/mtr_match.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_misc.pl b/mysql-test/lib/v1/mtr_misc.pl index 07b50e865abbcc90250ae6fbae0e44269d553a99..e7c652b42818e262dc137f9c14081d7f64aa9a0e 100644 --- a/mysql-test/lib/v1/mtr_misc.pl +++ b/mysql-test/lib/v1/mtr_misc.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_process.pl b/mysql-test/lib/v1/mtr_process.pl index 3518b33839e8c867d165396db0830ef00328cbce..fd9f38176995fc973f279a76891f666a920c2629 100644 --- a/mysql-test/lib/v1/mtr_process.pl +++ b/mysql-test/lib/v1/mtr_process.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_report.pl b/mysql-test/lib/v1/mtr_report.pl index 738236a731e97138af7ac25869b58efd0f8d4193..e1f6bddb8a26ab0cbac9d83cdaa7fe490b2176e7 100644 --- a/mysql-test/lib/v1/mtr_report.pl +++ b/mysql-test/lib/v1/mtr_report.pl @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_stress.pl b/mysql-test/lib/v1/mtr_stress.pl index 7f92c417271b5c0a6f2f68a35d07019b4eea972e..c248b8089c64f19028286a90b3ea431d7ed822de 100644 --- a/mysql-test/lib/v1/mtr_stress.pl +++ b/mysql-test/lib/v1/mtr_stress.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_timer.pl b/mysql-test/lib/v1/mtr_timer.pl index 4fc68afa36445b6edb7b4dc44959f44b5394c781..630a93ca7dc50d82714e18f987705061138f8088 100644 --- a/mysql-test/lib/v1/mtr_timer.pl +++ b/mysql-test/lib/v1/mtr_timer.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a library file used by the Perl version of mysql-test-run, # and is part of the translation of the Bourne shell script with the diff --git a/mysql-test/lib/v1/mtr_unique.pl b/mysql-test/lib/v1/mtr_unique.pl index 4e4e720e6892f0b2818cdf75b7838374b12f94b7..b9ed9138d0488120d88898e3e875b5f23be6b81d 100644 --- a/mysql-test/lib/v1/mtr_unique.pl +++ b/mysql-test/lib/v1/mtr_unique.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # This file is used from mysql-test-run.pl when choosing diff --git a/mysql-test/lib/v1/mysql-test-run.pl b/mysql-test/lib/v1/mysql-test-run.pl index 01b4fd8688a2f0cfeca304b016591e2d515ca64b..b3d8f1e62fa8d2fb82463cd68029fe0184a2a271 100755 --- a/mysql-test/lib/v1/mysql-test-run.pl +++ b/mysql-test/lib/v1/mysql-test-run.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ############################################################################## # diff --git a/mysql-test/mysql-stress-test.pl b/mysql-test/mysql-stress-test.pl index 74394e2afbdb968be685a6bf13ff81bb4daf31a8..79511273e6fa07e6820847d714b817e7541047b3 100755 --- a/mysql-test/mysql-stress-test.pl +++ b/mysql-test/mysql-stress-test.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # ====================================================================== # MySQL server stress test system diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index b5d145f914bb155422cc33af3bea82b1894915a8..f9906a99b099fe7668dd67ca5c6fff7034a704fc 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # ############################################################################## @@ -1880,7 +1880,10 @@ sub collect_mysqld_features { if (/Copyright/ .. /^-{30,}/) { # here we want to detect all not mandatory plugins # they are listed in the --help output as - # --archive[=name] Enable or disable ARCHIVE plugin. Possible values are ON, OFF, FORCE (don't start if the plugin fails to load). + # --archive[=name] + # Enable or disable ARCHIVE plugin. Possible values are ON, OFF, + # FORCE (don't start if the plugin fails to load), + # FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not be uninstalled). push @optional_plugins, $1 if /^ --([-a-z0-9]+)\[=name\] +Enable or disable \w+ plugin. One of: ON, OFF, FORCE/; next; diff --git a/mysql-test/purify.supp b/mysql-test/purify.supp index 0bb31d00277853c17fc8acc11221815a5099f329..8960151c9a750c1ac409f8782489340b4c91a467 100644 --- a/mysql-test/purify.supp +++ b/mysql-test/purify.supp @@ -14,7 +14,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA suppress UMR rw_read_held; mi_open; ha_myisam::open64; handler::ha_open; openfrm suppress UMR my_end; main diff --git a/mysql-test/r/connect_debug.result b/mysql-test/r/connect_debug.result index 0452b238db9be1f68fc14fa3e4a7703e818d09e8..3151166a0e6ccbf284af43f06a2114495c0e702e 100644 --- a/mysql-test/r/connect_debug.result +++ b/mysql-test/r/connect_debug.result @@ -3,3 +3,8 @@ set global debug_dbug='+d,auth_disconnect'; create user 'bad' identified by 'worse'; set global debug_dbug=@old_dbug; drop user bad; +set global debug_dbug='+d,auth_invalid_plugin'; +create user 'bad' identified by 'worse'; +ERROR 2059 (HY000): Authentication plugin 'foo/bar' cannot be loaded: invalid plugin name +set global debug_dbug=@old_dbug; +drop user bad; diff --git a/mysql-test/r/ctype_utf8_def_upgrade.result b/mysql-test/r/ctype_utf8_def_upgrade.result new file mode 100644 index 0000000000000000000000000000000000000000..1b921289af60b862107f133299440ee8f2d74429 --- /dev/null +++ b/mysql-test/r/ctype_utf8_def_upgrade.result @@ -0,0 +1,99 @@ +# +# Start of 10.1 tests +# +# +# MDEV-19675 Wrong charset is chosen when opening a pre-4.1 table +# +# Test with a saved table from 3.23 +SELECT @@character_set_database; +@@character_set_database +utf8 +SET @@character_set_database="latin1"; +SELECT COUNT(*) FROM t1; +ERROR HY000: Got error 190 "Incompatible key or row definition between the MariaDB .frm file and the information in the storage engine. You have to dump an" from storage engine MyISAM +CHECK TABLE t1; +Table Op Msg_type Msg_text +test.t1 check Error Got error 190 "Incompatible key or row definition between the MariaDB .frm file and the information in the storage engine. You have to dump an" from storage engine MyISAM +test.t1 check error Corrupt +REPAIR TABLE t1; +Table Op Msg_type Msg_text +test.t1 repair Error Got error 190 "Incompatible key or row definition between the MariaDB .frm file and the information in the storage engine. You have to dump an" from storage engine MyISAM +test.t1 repair error Corrupt +REPAIR TABLE t1 USE_FRM; +Table Op Msg_type Msg_text +test.t1 repair status OK +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +CHECK TABLE t1; +Table Op Msg_type Msg_text +test.t1 check status OK +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `Host` char(60) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', + `Db` char(64) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', + `Select_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Insert_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Update_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Delete_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Create_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Drop_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Grant_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `References_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Index_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Alter_priv` enum('N','Y') NOT NULL DEFAULT 'N', + PRIMARY KEY (`Host`,`Db`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Host privileges; Merged with database privileges' +DROP TABLE t1; +SET @@character_set_database=DEFAULT; +# Now do the same, but doing 'ALTER DATABASE' to create the db.opt file, +# instead of setting variables directly. +# Emulate a pre-4.1 database without db.opt +SHOW CREATE DATABASE db1; +Database Create Database +db1 CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET utf8 */ +USE db1; +SELECT @@character_set_database, 'taken from defaults' AS comment; +@@character_set_database comment +utf8 taken from defaults +USE test; +ALTER DATABASE db1 DEFAULT CHARACTER SET latin1; +USE db1; +SELECT @@character_set_database, 'taken from db.opt' AS comment; +@@character_set_database comment +latin1 taken from db.opt +SELECT COUNT(*) FROM t1; +ERROR HY000: Got error 190 "Incompatible key or row definition between the MariaDB .frm file and the information in the storage engine. You have to dump an" from storage engine MyISAM +REPAIR TABLE t1 USE_FRM; +Table Op Msg_type Msg_text +db1.t1 repair status OK +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +CHECK TABLE t1; +Table Op Msg_type Msg_text +db1.t1 check status OK +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `Host` char(60) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', + `Db` char(64) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', + `Select_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Insert_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Update_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Delete_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Create_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Drop_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Grant_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `References_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Index_priv` enum('N','Y') NOT NULL DEFAULT 'N', + `Alter_priv` enum('N','Y') NOT NULL DEFAULT 'N', + PRIMARY KEY (`Host`,`Db`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Host privileges; Merged with database privileges' +DROP TABLE t1; +DROP DATABASE db1; +USE test; +# +# End of 10.1 tests +# diff --git a/mysql-test/r/derived.result b/mysql-test/r/derived.result index 6f786e34a9aeb195b78cbaae4b133b9017e3a691..be241c0e928c16d7c69c1a8497e879e60f7b8ec6 100644 --- a/mysql-test/r/derived.result +++ b/mysql-test/r/derived.result @@ -1,4 +1,3 @@ -drop table if exists t1,t2,t3; set @save_derived_optimizer_switch=@@optimizer_switch; set optimizer_switch='derived_merge=off,derived_with_keys=off'; select * from (select 2 from DUAL) b; @@ -602,6 +601,17 @@ select x.id, message from (select id from t1) x left join (select id, 1 as message from t2) y on x.id=y.id where coalesce(message,0) <> 0; id message +explain extended +select x.id, message from (select id from t1) x left join +(select id, 1 as message from t2) y on x.id=y.id +where message <> 0; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY ALL NULL NULL NULL NULL 3 100.00 +1 PRIMARY ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +3 DERIVED t2 ALL NULL NULL NULL NULL 3 100.00 +2 DERIVED t1 ALL NULL NULL NULL NULL 3 100.00 +Warnings: +Note 1003 select `x`.`id` AS `id`,`y`.`message` AS `message` from (select `test`.`t1`.`id` AS `id` from `test`.`t1`) `x` join (select `test`.`t2`.`id` AS `id`,1 AS `message` from `test`.`t2`) `y` where ((`y`.`id` = `x`.`id`) and (`y`.`message` <> 0)) drop table t1,t2; # # MDEV-7827: Assertion `!table || (!table->read_set || diff --git a/mysql-test/r/derived_view.result b/mysql-test/r/derived_view.result index 416d4e3aeb9dacf15ccd03e5365457618e38b9f1..83e58493a1ba4412f8867bdff772863c8c8972a3 100644 --- a/mysql-test/r/derived_view.result +++ b/mysql-test/r/derived_view.result @@ -1298,7 +1298,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 2 100.00 Using where Warnings: Note 1276 Field or reference 't.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (1,<`test`.`t1`.`a`>(exists(select 28 from `test`.`t3` where ('j' < `test`.`t1`.`a`)))) +Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (1,<`test`.`t1`.`a`>(exists(select 28 from `test`.`t3` where ('j' < `test`.`t1`.`a`) limit 1))) SELECT * FROM (SELECT * FROM t1) AS t WHERE EXISTS (SELECT t2.a FROM t3 RIGHT JOIN t2 ON (t3.a = t2.a) WHERE t2.b < t.a); @@ -2651,3 +2651,461 @@ Note 1003 select straight_join `test`.`t1`.`c1` AS `c1` from `test`.`t1` where < DROP TABLE t1, t2; set optimizer_switch=@exit_optimizer_switch; set join_cache_level=@exit_join_cache_level; +# +# Bug mdev-18479: EXPLAIN for query with many expensive derived +# +CREATE TABLE t1 +(id int auto_increment primary key, +uid int NOT NULL, +gp_id int NOT NULL, +r int NOT NULL +); +INSERT INTO t1(uid,gp_id,r) VALUES +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1); +CREATE TABLE t2 (id int) ; +INSERT INTO t2 VALUES (1); +explain SELECT 1 FROM t2 JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_1 ON gp_1.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_2 ON gp_2.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id +JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_3 ON gp_3.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id +JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_4 ON gp_4.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id +JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_5 ON gp_5.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id +JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_6 ON gp_6.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id +JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +WHERE p1.gp_id=7) gp_7 ON gp_7.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_8 ON gp_8.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_9 ON gp_9.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_14 ON gp_14.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_15 ON gp_15.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +) gp_16 ON gp_16.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +)gp_17 ON gp_17.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +)gp_18 ON gp_18.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id +JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id +)gp_19 ON gp_19.id=t2.id +JOIN +(SELECT t2.id +FROM t2 +JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id +JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id +JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id +JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id +JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id +) gp_20 ON gp_20.id=t2.id ; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY t2 system NULL NULL NULL NULL 1 +1 PRIMARY p4 ALL NULL NULL NULL NULL 550 Using where +1 PRIMARY p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +1 PRIMARY p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p1 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p3 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p1 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p3 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p1 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p3 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 50328437500000 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 27680640625000000 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 15224352343750000640 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using where; Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using where; Using join buffer (incremental, BNL join) +17 DERIVED t2 system NULL NULL NULL NULL 1 +17 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +17 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +17 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +17 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +17 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +16 DERIVED t2 system NULL NULL NULL NULL 1 +16 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +16 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +16 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +16 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +16 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +16 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +16 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +15 DERIVED t2 system NULL NULL NULL NULL 1 +15 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +15 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +15 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +15 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +15 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +15 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +15 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +14 DERIVED t2 system NULL NULL NULL NULL 1 +14 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +14 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +14 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +14 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +14 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +14 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +13 DERIVED t2 system NULL NULL NULL NULL 1 +13 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +13 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +13 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +13 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +13 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +13 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +13 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +12 DERIVED t2 system NULL NULL NULL NULL 1 +12 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +12 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +12 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +12 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +12 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +12 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +12 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +11 DERIVED t2 system NULL NULL NULL NULL 1 +11 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +11 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +11 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +11 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +11 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +11 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +11 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +10 DERIVED t2 system NULL NULL NULL NULL 1 +10 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +10 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +10 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +10 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +10 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +10 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +10 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +9 DERIVED t2 system NULL NULL NULL NULL 1 +9 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where +9 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +9 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +9 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +9 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +9 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +9 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED t2 system NULL NULL NULL NULL 1 +8 DERIVED p1 ALL NULL NULL NULL NULL 550 Using where +8 DERIVED p3 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +8 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +8 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED t2 system NULL NULL NULL NULL 1 +7 DERIVED p1 ALL NULL NULL NULL NULL 550 Using where +7 DERIVED p3 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (flat, BNL join) +7 DERIVED p4 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p5 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p6 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p7 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p8 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p9 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +7 DERIVED p10 ALL NULL NULL NULL NULL 550 Using where; Using join buffer (incremental, BNL join) +DROP TABLE t1, t2; +# +# MDEV-19778: equality condition for mergeable view returning constants +# in its columns and used as inner table of outer join +# +create table t1 (pk int, a int); +insert into t1 values (1,7), (2,3), (3,2), (4,3); +create table t2 (b int); +insert into t2 values (5), (1), (NULL), (3); +create table t3 (c int); +insert into t3 values (1), (8); +create view v1 as +select 3 as d, t2.b from t2; +select * from t1 left join v1 on t1.pk <= 2 where t1.a=v1.d; +pk a d b +2 3 3 5 +2 3 3 1 +2 3 3 NULL +2 3 3 3 +explain extended select * from t1 left join v1 on t1.pk <= 2 where t1.a=v1.d; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 4 100.00 Using where +1 SIMPLE t2 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (flat, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`pk` AS `pk`,`test`.`t1`.`a` AS `a`,3 AS `d`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`a` = 3) and (`test`.`t1`.`pk` <= 2)) +select * from t1 left join (select 3 as d, t2.b from t2) dt on t1.pk <= 2 +where t1.a=dt.d; +pk a d b +2 3 3 5 +2 3 3 1 +2 3 3 NULL +2 3 3 3 +explain extended select * from t1 left join (select 3 as d, t2.b from t2) dt on t1.pk <= 2 +where t1.a=dt.d; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 4 100.00 Using where +1 SIMPLE t2 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (flat, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`pk` AS `pk`,`test`.`t1`.`a` AS `a`,3 AS `d`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`a` = 3) and (`test`.`t1`.`pk` <= 2)) +select * from t1 left join (v1,t3) on t1.pk <= 2 where t1.a=v1.d; +pk a d b c +2 3 3 5 1 +2 3 3 5 8 +2 3 3 1 1 +2 3 3 1 8 +2 3 3 NULL 1 +2 3 3 NULL 8 +2 3 3 3 1 +2 3 3 3 8 +explain extended select * from t1 left join (v1,t3) on t1.pk <= 2 where t1.a=v1.d; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`pk` AS `pk`,`test`.`t1`.`a` AS `a`,3 AS `d`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`c` AS `c` from `test`.`t1` join `test`.`t2` join `test`.`t3` where ((`test`.`t1`.`a` = 3) and (`test`.`t1`.`pk` <= 2)) +drop view v1; +drop table t1,t2,t3; diff --git a/mysql-test/r/func_group.result b/mysql-test/r/func_group.result index b9875faacb6dc704b978654568f8635a82ab6d6b..06323f5b3bbf2dfa9a431deea55506a603e971a4 100644 --- a/mysql-test/r/func_group.result +++ b/mysql-test/r/func_group.result @@ -1981,6 +1981,7 @@ NULL Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'j' Warning 1292 Truncated incorrect DOUBLE value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' EXPLAIN SELECT MIN(t2.pk) @@ -1995,6 +1996,7 @@ id select_type table type possible_keys key key_len ref rows Extra Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'j' Warning 1292 Truncated incorrect DOUBLE value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' # # 2) Test that subquery materialization is setup for query with diff --git a/mysql-test/r/information_schema_parameters.result b/mysql-test/r/information_schema_parameters.result index 93c7634a91024d7ca2d89624fd60fd31d1ebdf8b..1a17c7c3a5e8434dedf8526b5bcaed6ab81aed56 100644 --- a/mysql-test/r/information_schema_parameters.result +++ b/mysql-test/r/information_schema_parameters.result @@ -392,7 +392,7 @@ SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE P DROP DATABASE IF EXISTS i_s_parameters_test; CREATE DATABASE i_s_parameters_test; USE i_s_parameters_test; -CREATE PROCEDURE testproc (OUT param1 INT) +CREATE PROCEDURE testproc (IN param1 INT) BEGIN SELECT 2+2 as param1; END; @@ -400,7 +400,7 @@ END; SELECT * FROM INFORMATION_SCHEMA.PARAMETERS WHERE SPECIFIC_SCHEMA = 'i_s_parameters_test' AND SPECIFIC_NAME = 'testproc'; SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE PARAMETER_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME DTD_IDENTIFIER ROUTINE_TYPE -def i_s_parameters_test testproc 1 OUT param1 int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE +def i_s_parameters_test testproc 1 IN param1 int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE # ========== parameters.5 ========== DROP DATABASE IF EXISTS i_s_parameters_test; CREATE DATABASE i_s_parameters_test; diff --git a/mysql-test/r/join.result b/mysql-test/r/join.result index 8c529b27e92b208d289aa2a7b1827238e159e927..ff5d72eec74397f39511da37aae55dd20de0f35f 100644 --- a/mysql-test/r/join.result +++ b/mysql-test/r/join.result @@ -1137,7 +1137,7 @@ SELECT 1 FROM v1 right join v1 AS v2 ON RAND(); id select_type table type possible_keys key key_len ref rows filtered Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00 Using where -1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where 1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00 Using where Warnings: Note 1003 select 1 AS `1` from `test`.`t1` left join `test`.`t1` `t2` on((1 = 1)) left join (`test`.`t1` left join `test`.`t1` `t2` on((1 = 1))) on(rand()) where 1 @@ -1542,6 +1542,1390 @@ ERROR 23000: Column 'c' in field list is ambiguous DROP PROCEDURE p1; DROP TABLE t1,t2,t3,t4,t5; # +# MDEV-19421: Embedding inner joins +# +create table t1 (a int); +insert into t1 values (7), (5), (3); +create table s1 (b int); +insert into s1 values (7), (5), (3); +create table t2 (a int); +insert into t2 values (5), (1), (7); +create table s2 (b int); +insert into s2 values (5), (1), (7); +create table t3 (a int); +insert into t3 values (2), (7), (3); +create table t4 (a int); +insert into t4 values (4), (7), (9), (5); +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a on t1.a=t2.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where ((`test`.`t2`.`a` = `test`.`t1`.`a`) and (`test`.`t3`.`a` = `test`.`t1`.`a`)) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a on t1.a=t2.a; +t1_a t2_a t3_a +7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a on t1.a=t2.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t1`.`a`)) where (`test`.`t2`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a on t1.a=t2.a; +t1_a t2_a t3_a +7 7 7 +5 5 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a on t1.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t3` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t1`.`a`)) where (`test`.`t3`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a on t1.a=t3.a; +t1_a t2_a t3_a +7 7 7 +3 NULL 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 using(a) using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where ((`test`.`t2`.`a` = `test`.`t1`.`a`) and (`test`.`t3`.`a` = `test`.`t1`.`a`)) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 using(a) using(a); +t1_a t2_a t3_a +7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 using(a) using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t1`.`a`)) where (`test`.`t2`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 using(a) using(a); +t1_a t2_a t3_a +7 7 7 +5 5 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 using(a) using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t3` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t1`.`a`)) where (`test`.`t3`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 using(a) using(a); +t1_a t2_a t3_a +7 7 7 +3 NULL 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a; +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a; +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +7 5 NULL +5 5 NULL +3 5 NULL +7 1 NULL +5 1 NULL +3 1 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t3` left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a; +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +NULL NULL 2 +NULL NULL 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t1.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t1.a=t3.a; +t1_a t2_a t3_a +7 5 7 +7 1 7 +7 7 7 +3 5 3 +3 1 3 +3 7 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t1.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t1`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t1.a=t3.a; +t1_a t2_a t3_a +7 5 7 +7 1 7 +7 7 7 +3 5 3 +3 1 3 +3 7 3 +5 5 NULL +5 1 NULL +5 7 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t1.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t3` left join (`test`.`t1` join `test`.`t2`) on((`test`.`t1`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t1.a=t3.a; +t1_a t2_a t3_a +7 5 7 +3 5 3 +7 1 7 +3 1 3 +7 7 7 +3 7 3 +NULL NULL 2 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 join t3 on t2.a=t3.a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 join t3 on t2.a=t3.a); +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 left join t3 on t2.a=t3.a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 left join t3 on t2.a=t3.a); +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +7 5 NULL +5 5 NULL +3 5 NULL +7 1 NULL +5 1 NULL +3 1 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 right join t3 on t2.a=t3.a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t3` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 right join t3 on t2.a=t3.a); +t1_a t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +7 NULL 2 +5 NULL 2 +3 NULL 2 +7 NULL 3 +5 NULL 3 +3 NULL 3 +explain extended select * +from s1 join t2 join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`s1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select * +from s1 join t2 join t3 using(a); +a b +7 7 +7 5 +7 3 +explain extended select * +from s1 join t2 left join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`s1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select * +from s1 join t2 left join t3 using(a); +a b +7 7 +7 5 +7 3 +5 7 +5 5 +5 3 +1 7 +1 5 +1 3 +explain extended select * +from s1 join t2 right join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`t3` left join (`test`.`s1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select * +from s1 join t2 right join t3 using(a); +a b +7 7 +7 5 +7 3 +2 NULL +3 NULL +explain extended select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`s1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 join t3 using(a); +b t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +explain extended select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 left join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`s1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 left join t3 using(a); +b t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +7 5 NULL +5 5 NULL +3 5 NULL +7 1 NULL +5 1 NULL +3 1 NULL +explain extended select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 right join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t3` left join (`test`.`s1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 right join t3 using(a); +b t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +NULL NULL 2 +NULL NULL 3 +explain extended select s1.b, t2.a as t2_a, t3.a as t3_a +from (s1 join t2) right join t3 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t3` left join (`test`.`s1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select s1.b, t2.a as t2_a, t3.a as t3_a +from (s1 join t2) right join t3 using(a); +b t2_a t3_a +7 7 7 +5 7 7 +3 7 7 +NULL NULL 2 +NULL NULL 3 +explain extended select * +from s1 join t2 natural join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`s1` join `test`.`t2` join `test`.`t3` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select * +from s1 join t2 natural join t3; +a b +7 7 +7 5 +7 3 +explain extended select * +from s1 join t2 natural left join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`s1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select * +from s1 join t2 natural left join t3; +a b +7 7 +7 5 +7 3 +5 7 +5 5 +5 3 +1 7 +1 5 +1 3 +explain extended select * +from s1 join t2 natural right join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`s1`.`b` AS `b` from `test`.`t3` left join (`test`.`s1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select * +from s1 join t2 natural right join t3; +a b +7 7 +7 5 +7 3 +2 NULL +3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3; +t1_a t2_a t3_a +7 5 2 +5 5 2 +3 5 2 +7 1 2 +5 1 2 +3 1 2 +7 7 2 +5 7 2 +3 7 2 +7 5 7 +5 5 7 +3 5 7 +7 1 7 +5 1 7 +3 1 7 +7 7 7 +5 7 7 +3 7 7 +7 5 3 +5 5 3 +3 5 3 +7 1 3 +5 1 3 +3 1 3 +7 7 3 +5 7 3 +3 7 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 +where t1.a=t2.a and t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` where ((`test`.`t2`.`a` = `test`.`t1`.`a`) and (`test`.`t3`.`a` = `test`.`t1`.`a`)) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 +where t1.a=t2.a and t2.a=t3.a; +t1_a t2_a t3_a +7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where ((`test`.`t3`.`a` = `test`.`t2`.`a`) and (`test`.`t4`.`a` = `test`.`t2`.`a`)) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = `test`.`t2`.`a`) and (`test`.`t4`.`a` = `test`.`t2`.`a`))) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 NULL NULL +5 5 NULL NULL +3 5 NULL NULL +7 1 NULL NULL +5 1 NULL NULL +3 1 NULL NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` left join (`test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t2`.`a`))) on((`test`.`t3`.`a` = `test`.`t2`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 NULL NULL +5 5 NULL NULL +3 5 NULL NULL +7 1 NULL NULL +5 1 NULL NULL +3 1 NULL NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` left join (`test`.`t4` join `test`.`t3`) on(((`test`.`t3`.`a` = `test`.`t2`.`a`) and (`test`.`t4`.`a` = `test`.`t2`.`a`))) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 NULL NULL +5 5 NULL NULL +3 5 NULL NULL +7 1 NULL NULL +5 1 NULL NULL +3 1 NULL NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t3` join `test`.`t4` left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where (`test`.`t4`.`a` = `test`.`t3`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL 2 NULL +NULL NULL 3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t4`.`a`)) left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where (`test`.`t4`.`a` = `test`.`t3`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 left join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 left join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 2 NULL +5 5 2 NULL +3 5 2 NULL +7 1 2 NULL +5 1 2 NULL +3 1 2 NULL +7 7 2 NULL +5 7 2 NULL +3 7 2 NULL +7 5 3 NULL +5 5 3 NULL +3 5 3 NULL +7 1 3 NULL +5 1 3 NULL +3 1 3 NULL +7 7 3 NULL +5 7 3 NULL +3 7 3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 right join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`t1` join `test`.`t2` join `test`.`t3`) on((`test`.`t3`.`a` = `test`.`t4`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 right join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 join t4 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`s2` join `test`.`t3` join `test`.`t4` where (`test`.`t4`.`a` = `test`.`t3`.`a`) +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 join t4 using(a); +s1_b s2_b t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +explain extended select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 left join t4 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`s2` join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) where 1 +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 left join t4 using(a); +s1_b s2_b t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 2 NULL +5 5 2 NULL +3 5 2 NULL +7 1 2 NULL +5 1 2 NULL +3 1 2 NULL +7 7 2 NULL +5 7 2 NULL +3 7 2 NULL +7 5 3 NULL +5 5 3 NULL +3 5 3 NULL +7 1 3 NULL +5 1 3 NULL +3 1 3 NULL +7 7 3 NULL +5 7 3 NULL +3 7 3 NULL +explain extended select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 right join t4 using(a); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`s1` join `test`.`s2` join `test`.`t3`) on((`test`.`t3`.`a` = `test`.`t4`.`a`)) where 1 +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 right join t4 using(a); +s1_b s2_b t3_a t4_a +7 5 7 7 +5 5 7 7 +3 5 7 7 +7 1 7 7 +5 1 7 7 +3 1 7 7 +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 on t2.a=t3.a join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 on t2.a=t3.a join t4; +t1_a t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 on t2.a=t3.a join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) join `test`.`t4` where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 on t2.a=t3.a join t4; +t1_a t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 5 NULL 4 +5 5 NULL 4 +3 5 NULL 4 +7 1 NULL 4 +5 1 NULL 4 +3 1 NULL 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 NULL 7 +5 5 NULL 7 +3 5 NULL 7 +7 1 NULL 7 +5 1 NULL 7 +3 1 NULL 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 5 NULL 9 +5 5 NULL 9 +3 5 NULL 9 +7 1 NULL 9 +5 1 NULL 9 +3 1 NULL 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +7 5 NULL 5 +5 5 NULL 5 +3 5 NULL 5 +7 1 NULL 5 +5 1 NULL 5 +3 1 NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 on t2.a=t3.a join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t3` left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) join `test`.`t4` where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 on t2.a=t3.a join t4; +t1_a t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +NULL NULL 2 4 +NULL NULL 3 4 +NULL NULL 2 7 +NULL NULL 3 7 +NULL NULL 2 9 +NULL NULL 3 9 +NULL NULL 2 5 +NULL NULL 3 5 +explain extended select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 join t3 using(a) join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where (`test`.`t3`.`a` = `test`.`t2`.`a`) +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 join t3 using(a) join t4; +s1_b t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +explain extended select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 left join t3 using(a) join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`t2` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t2`.`a`)) join `test`.`t4` where 1 +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 left join t3 using(a) join t4; +s1_b t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 5 NULL 4 +5 5 NULL 4 +3 5 NULL 4 +7 1 NULL 4 +5 1 NULL 4 +3 1 NULL 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 5 NULL 7 +5 5 NULL 7 +3 5 NULL 7 +7 1 NULL 7 +5 1 NULL 7 +3 1 NULL 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 5 NULL 9 +5 5 NULL 9 +3 5 NULL 9 +7 1 NULL 9 +5 1 NULL 9 +3 1 NULL 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +7 5 NULL 5 +5 5 NULL 5 +3 5 NULL 5 +7 1 NULL 5 +5 1 NULL 5 +3 1 NULL 5 +explain extended select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 right join t3 using(a) join t4; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t3` left join (`test`.`s1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) join `test`.`t4` where 1 +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 right join t3 using(a) join t4; +s1_b t2_a t3_a t4_a +7 7 7 4 +5 7 7 4 +3 7 7 4 +7 7 7 7 +5 7 7 7 +3 7 7 7 +7 7 7 9 +5 7 7 9 +3 7 7 9 +7 7 7 5 +5 7 7 5 +3 7 7 5 +NULL NULL 2 4 +NULL NULL 3 4 +NULL NULL 2 7 +NULL NULL 3 7 +NULL NULL 2 9 +NULL NULL 3 9 +NULL NULL 2 5 +NULL NULL 3 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where ((`test`.`t4`.`a` = `test`.`t3`.`a`) and (`test`.`t2`.`a` = `test`.`t1`.`a`)) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` join `test`.`t2` join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) where (`test`.`t2`.`a` = `test`.`t1`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +5 5 2 NULL +7 7 2 NULL +5 5 3 NULL +7 7 3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`t1` join `test`.`t2` join `test`.`t3`) on(((`test`.`t3`.`a` = `test`.`t4`.`a`) and (`test`.`t2`.`a` = `test`.`t1`.`a`))) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t1`.`a`)) join `test`.`t3` join `test`.`t4` where (`test`.`t4`.`a` = `test`.`t3`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +3 NULL 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t1`.`a`)) join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +3 NULL 7 7 +5 5 2 NULL +7 7 2 NULL +3 NULL 2 NULL +5 5 3 NULL +7 7 3 NULL +3 NULL 3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t1`.`a`)) join `test`.`t3`) on((`test`.`t3`.`a` = `test`.`t4`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +5 5 7 7 +7 7 7 7 +3 NULL 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t2` left join `test`.`t1` on((`test`.`t1`.`a` = `test`.`t2`.`a`)) join `test`.`t3` join `test`.`t4` where (`test`.`t4`.`a` = `test`.`t3`.`a`) +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 5 7 7 +NULL 1 7 7 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t2` left join `test`.`t1` on((`test`.`t1`.`a` = `test`.`t2`.`a`)) join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 5 7 7 +NULL 1 7 7 +7 7 2 NULL +5 5 2 NULL +NULL 1 2 NULL +7 7 3 NULL +5 5 3 NULL +NULL 1 3 NULL +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`t2` left join `test`.`t1` on((`test`.`t1`.`a` = `test`.`t2`.`a`)) join `test`.`t3`) on((`test`.`t3`.`a` = `test`.`t4`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 5 7 7 +NULL 1 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 join t4 on t4.a=s1.b; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`s1`.`b`)) join `test`.`t3` join `test`.`t4` where (`test`.`t4`.`a` = `test`.`s1`.`b`) +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 join t4 on t4.a=s1.b; +s1_b t1_a t2_a t3_a t4_a +7 7 7 2 7 +7 5 7 2 7 +7 3 7 2 7 +7 7 7 7 7 +7 5 7 7 7 +7 3 7 7 7 +7 7 7 3 7 +7 5 7 3 7 +7 3 7 3 7 +5 7 5 2 5 +5 5 5 2 5 +5 3 5 2 5 +5 7 5 7 5 +5 5 5 7 5 +5 3 5 7 5 +5 7 5 3 5 +5 5 5 3 5 +5 3 5 3 5 +explain extended select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 left join t4 on t4.a=s1.b; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`s1` join `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`s1`.`b`)) join `test`.`t3` left join `test`.`t4` on((`test`.`t4`.`a` = `test`.`s1`.`b`)) where 1 +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 left join t4 on t4.a=s1.b; +s1_b t1_a t2_a t3_a t4_a +7 7 7 2 7 +7 5 7 2 7 +7 3 7 2 7 +7 7 7 7 7 +7 5 7 7 7 +7 3 7 7 7 +7 7 7 3 7 +7 5 7 3 7 +7 3 7 3 7 +5 7 5 2 5 +5 5 5 2 5 +5 3 5 2 5 +5 7 5 7 5 +5 5 5 7 5 +5 3 5 7 5 +5 7 5 3 5 +5 5 5 3 5 +5 3 5 3 5 +3 7 NULL 2 NULL +3 5 NULL 2 NULL +3 3 NULL 2 NULL +3 7 NULL 7 NULL +3 5 NULL 7 NULL +3 3 NULL 7 NULL +3 7 NULL 3 NULL +3 5 NULL 3 NULL +3 3 NULL 3 NULL +explain extended select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 right join t4 on t4.a=s1.b; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join (`test`.`s1` join `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`a` = `test`.`t4`.`a`)) join `test`.`t3`) on((`test`.`s1`.`b` = `test`.`t4`.`a`)) where 1 +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 right join t4 on t4.a=s1.b; +s1_b t1_a t2_a t3_a t4_a +5 7 5 2 5 +5 5 5 2 5 +5 3 5 2 5 +7 7 7 2 7 +7 5 7 2 7 +7 3 7 2 7 +5 7 5 7 5 +5 5 5 7 5 +5 3 5 7 5 +7 7 7 7 7 +7 5 7 7 7 +7 3 7 7 7 +5 7 5 3 5 +5 5 5 3 5 +5 3 5 3 5 +7 7 7 3 7 +7 5 7 3 7 +7 3 7 3 7 +NULL NULL NULL NULL 4 +NULL NULL NULL NULL 9 +explain extended select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t2` left join (`test`.`s1` join `test`.`s2` join `test`.`t1`) on(((`test`.`t1`.`a` = `test`.`t2`.`a`) and (`test`.`s2`.`b` = `test`.`s1`.`b`))) join `test`.`t3` where 1 +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +s1_b s2_b t1_a t2_a t3_a +5 5 7 7 2 +7 7 7 7 2 +5 5 5 5 2 +7 7 5 5 2 +5 5 7 7 7 +7 7 7 7 7 +5 5 5 5 7 +7 7 5 5 7 +5 5 7 7 3 +7 7 7 7 3 +5 5 5 5 3 +7 7 5 5 3 +NULL NULL NULL 1 2 +NULL NULL NULL 1 7 +NULL NULL NULL 1 3 +explain extended select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 left join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t2` left join (`test`.`s1` left join `test`.`s2` on((`test`.`s2`.`b` = `test`.`s1`.`b`)) join `test`.`t1`) on((`test`.`t1`.`a` = `test`.`t2`.`a`)) join `test`.`t3` where 1 +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 left join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +s1_b s2_b t1_a t2_a t3_a +5 5 7 7 2 +7 7 7 7 2 +3 NULL 7 7 2 +5 5 5 5 2 +7 7 5 5 2 +3 NULL 5 5 2 +5 5 7 7 7 +7 7 7 7 7 +3 NULL 7 7 7 +5 5 5 5 7 +7 7 5 5 7 +3 NULL 5 5 7 +5 5 7 7 3 +7 7 7 7 3 +3 NULL 7 7 3 +5 5 5 5 3 +7 7 5 5 3 +3 NULL 5 5 3 +NULL NULL NULL 1 2 +NULL NULL NULL 1 7 +NULL NULL NULL 1 3 +explain extended select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 right join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE s2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (flat, BNL join) +1 SIMPLE s1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`s1`.`b` AS `s1_b`,`test`.`s2`.`b` AS `s2_b`,`test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a` from `test`.`t2` left join (`test`.`s2` left join `test`.`s1` on((`test`.`s1`.`b` = `test`.`s2`.`b`)) join `test`.`t1`) on((`test`.`t1`.`a` = `test`.`t2`.`a`)) join `test`.`t3` where 1 +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 right join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +s1_b s2_b t1_a t2_a t3_a +7 7 7 7 2 +5 5 7 7 2 +NULL 1 7 7 2 +7 7 5 5 2 +5 5 5 5 2 +NULL 1 5 5 2 +7 7 7 7 7 +5 5 7 7 7 +NULL 1 7 7 7 +7 7 5 5 7 +5 5 5 5 7 +NULL 1 5 5 7 +7 7 7 7 3 +5 5 7 7 3 +NULL 1 7 7 3 +7 7 5 5 3 +5 5 5 5 3 +NULL 1 5 5 3 +NULL NULL NULL 1 2 +NULL NULL NULL 1 7 +NULL NULL NULL 1 3 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t4`.`a`)) left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1 join t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t4`.`a`)) left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1 join t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +explain extended select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1, t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t4 ALL NULL NULL NULL NULL 4 100.00 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using join buffer (incremental, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `t1_a`,`test`.`t2`.`a` AS `t2_a`,`test`.`t3`.`a` AS `t3_a`,`test`.`t4`.`a` AS `t4_a` from `test`.`t4` left join `test`.`t3` on((`test`.`t3`.`a` = `test`.`t4`.`a`)) left join (`test`.`t1` join `test`.`t2`) on((`test`.`t2`.`a` = `test`.`t3`.`a`)) where 1 +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1, t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +t1_a t2_a t3_a t4_a +7 7 7 7 +5 7 7 7 +3 7 7 7 +NULL NULL NULL 4 +NULL NULL NULL 9 +NULL NULL NULL 5 +drop table t1,t2,t3,t4,s1,s2; +# # End of MariaDB 5.5 tests # # diff --git a/mysql-test/r/join_cache.result b/mysql-test/r/join_cache.result index 01339f7c1914bb2976d4f0dab6bb808f53434b8d..cf23979b49a538ee754e96baea72936f39bebf41 100644 --- a/mysql-test/r/join_cache.result +++ b/mysql-test/r/join_cache.result @@ -2885,6 +2885,37 @@ Klaipeda Lithuania xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Panevezys Lithuania xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx set join_cache_level=default; set join_buffer_size=default; +# +# MDEV-17752: Plan changes from hash_index_merge to index_merge with new optimizer defaults +# +set @save_optimizer_use_condition_selectivity=@@optimizer_use_condition_selectivity; +set @save_use_stat_tables=@@use_stat_tables; +set optimizer_use_condition_selectivity=4; +set use_stat_tables='preferably'; +use world; +set join_cache_level=4; +CREATE INDEX City_Name ON City(Name); +ANALYZE TABLE City, Country; +EXPLAIN +SELECT Country.Name, Country.Population, City.Name, City.Population +FROM Country LEFT JOIN City +ON City.Country=Country.Code AND City.Population > 5000000 +WHERE Country.Name LIKE 'C%' AND Country.Population > 10000000; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE Country range Name Name 302 NULL 15 Using index condition; Using where; Rowid-ordered scan +1 SIMPLE City hash_range Population,Country #hash#Country:Population 3:4 world.Country.Code 25 Using where; Rowid-ordered scan; Using join buffer (flat, BNLH join) +EXPLAIN +SELECT Country.Name, Country.Population, City.Name, City.Population +FROM Country LEFT JOIN City +ON City.Country=Country.Code AND +(City.Population > 5000000 OR City.Name LIKE 'Za%') +WHERE Country.Name LIKE 'C%' AND Country.Population > 10000000; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE Country range Name Name 302 NULL 15 Using index condition; Using where; Rowid-ordered scan +1 SIMPLE City hash_index_merge Population,Country,City_Name #hash#Country:Population,City_Name 3:4,35 world.Country.Code 96 Using sort_union(Population,City_Name); Using where; Using join buffer (flat, BNLH join) +set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; +set @@use_stat_tables=@save_use_stat_tables; +set join_cache_level=default; DROP DATABASE world; use test; CREATE TABLE t1( diff --git a/mysql-test/r/join_nested.result b/mysql-test/r/join_nested.result index 6ddd39cbfecd2b5f74ff863873ab9de080afb162..d618f7c3ac8010099d195e364390c29e67e72e6f 100644 --- a/mysql-test/r/join_nested.result +++ b/mysql-test/r/join_nested.result @@ -1966,3 +1966,36 @@ Note 1003 select 1 AS `K1`,'T1Row1' AS `Name`,`t2a`.`K2` AS `K2`,`t2a`.`K1r` AS DROP VIEW v1; DROP TABLE t1,t2; set optimizer_search_depth= @tmp_mdev621; +# +# MDEV-19588: Nested left joins using optimized join cache +# +set optimizer_switch='optimize_join_buffer_size=on'; +set @save_join_cache_level= @@join_cache_level; +set join_cache_level=2; +CREATE TABLE t1 (i1 int, c1 varchar(20), pk int) engine=myisam; +CREATE TABLE t2 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t2 VALUES (7,'a',-912),(8,'a',5); +CREATE TABLE t3 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t3 VALUES +(1,'a',-145),(2,'a',6),(3,'a',1),(7,'a',NULL),(8,'a',889),(9,'a',146), +(10,'a',177),(16,'a',-433),(17,'a',NULL),(18,'a',2),(19,'a',3),(20,'a',5), +(21,'a',-484),(22,'a',369),(23,'a',-192),(24,'a',-163),(25,'a',5),(26,'a',NULL); +SELECT t3.* +FROM t3 LEFT JOIN t1 LEFT JOIN t2 ON t1.i1 = t2.i1 ON t3.i1 = t1.i1 +WHERE t2.pk < 13 OR t3.i1 IS NULL; +pk c1 i1 +7 a NULL +17 a NULL +26 a NULL +explain extended SELECT t3.* +FROM t3 LEFT JOIN t1 LEFT JOIN t2 ON t1.i1 = t2.i1 ON t3.i1 = t1.i1 +WHERE t2.pk < 13 OR t3.i1 IS NULL; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 18 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 0 0.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t3`.`pk` AS `pk`,`test`.`t3`.`c1` AS `c1`,`test`.`t3`.`i1` AS `i1` from `test`.`t3` left join (`test`.`t1` left join `test`.`t2` on((`test`.`t2`.`i1` = `test`.`t3`.`i1`))) on((`test`.`t1`.`i1` = `test`.`t3`.`i1`)) where ((`test`.`t2`.`pk` < 13) or isnull(`test`.`t3`.`i1`)) +DROP TABLE t1,t2,t3; +set join_cache_level= @save_join_cache_level; +set optimizer_switch=@save_optimizer_switch; diff --git a/mysql-test/r/join_nested_jcl6.result b/mysql-test/r/join_nested_jcl6.result index bac8e1cb7db3c2b9965a1427f6e91ede5962bec0..dff9feda635be86481105b70166b9eb4350fb636 100644 --- a/mysql-test/r/join_nested_jcl6.result +++ b/mysql-test/r/join_nested_jcl6.result @@ -1342,7 +1342,7 @@ EXPLAIN SELECT * FROM t1 LEFT JOIN (t2 LEFT JOIN t3 ON c21=c31) ON c11=c21; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 1 SIMPLE t2 hash_ALL NULL #hash#$hj 5 test.t1.c11 0 Using where; Using join buffer (flat, BNLH join) -1 SIMPLE t3 ALL NULL NULL NULL NULL 0 Using where; Using join buffer (incremental, BNL join) +1 SIMPLE t3 hash_ALL NULL #hash#$hj 5 test.t1.c11 0 Using where; Using join buffer (incremental, BNLH join) DROP TABLE t1,t2,t3; CREATE TABLE t1 (goods int(12) NOT NULL, price varchar(128) NOT NULL); INSERT INTO t1 VALUES (23, 2340), (26, 9900); @@ -1977,6 +1977,39 @@ Note 1003 select 1 AS `K1`,'T1Row1' AS `Name`,`t2a`.`K2` AS `K2`,`t2a`.`K1r` AS DROP VIEW v1; DROP TABLE t1,t2; set optimizer_search_depth= @tmp_mdev621; +# +# MDEV-19588: Nested left joins using optimized join cache +# +set optimizer_switch='optimize_join_buffer_size=on'; +set @save_join_cache_level= @@join_cache_level; +set join_cache_level=2; +CREATE TABLE t1 (i1 int, c1 varchar(20), pk int) engine=myisam; +CREATE TABLE t2 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t2 VALUES (7,'a',-912),(8,'a',5); +CREATE TABLE t3 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t3 VALUES +(1,'a',-145),(2,'a',6),(3,'a',1),(7,'a',NULL),(8,'a',889),(9,'a',146), +(10,'a',177),(16,'a',-433),(17,'a',NULL),(18,'a',2),(19,'a',3),(20,'a',5), +(21,'a',-484),(22,'a',369),(23,'a',-192),(24,'a',-163),(25,'a',5),(26,'a',NULL); +SELECT t3.* +FROM t3 LEFT JOIN t1 LEFT JOIN t2 ON t1.i1 = t2.i1 ON t3.i1 = t1.i1 +WHERE t2.pk < 13 OR t3.i1 IS NULL; +pk c1 i1 +7 a NULL +17 a NULL +26 a NULL +explain extended SELECT t3.* +FROM t3 LEFT JOIN t1 LEFT JOIN t2 ON t1.i1 = t2.i1 ON t3.i1 = t1.i1 +WHERE t2.pk < 13 OR t3.i1 IS NULL; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 18 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 0 0.00 Using where; Using join buffer (flat, BNL join) +1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (incremental, BNL join) +Warnings: +Note 1003 select `test`.`t3`.`pk` AS `pk`,`test`.`t3`.`c1` AS `c1`,`test`.`t3`.`i1` AS `i1` from `test`.`t3` left join (`test`.`t1` left join `test`.`t2` on((`test`.`t2`.`i1` = `test`.`t3`.`i1`))) on((`test`.`t1`.`i1` = `test`.`t3`.`i1`)) where ((`test`.`t2`.`pk` < 13) or isnull(`test`.`t3`.`i1`)) +DROP TABLE t1,t2,t3; +set join_cache_level= @save_join_cache_level; +set optimizer_switch=@save_optimizer_switch; CREATE TABLE t5 (a int, b int, c int, PRIMARY KEY(a), KEY b_i (b)); CREATE TABLE t6 (a int, b int, c int, PRIMARY KEY(a), KEY b_i (b)); CREATE TABLE t7 (a int, b int, c int, PRIMARY KEY(a), KEY b_i (b)); diff --git a/mysql-test/r/join_outer.result b/mysql-test/r/join_outer.result index 6bd12dbe1a6c1daad2a50123bfac9c54185bb291..739216b1938e9d50293cd2f4dc24880313610530 100644 --- a/mysql-test/r/join_outer.result +++ b/mysql-test/r/join_outer.result @@ -2447,7 +2447,7 @@ t1.b1+'0' t2.b2 + '0' 0 0 1 1 DROP TABLE t1, t2; -set @join_cache_level= @save_join_cache_level; +set @@join_cache_level= @save_join_cache_level; # # MDEV-14779: using left join causes incorrect results with materialization and derived tables # @@ -2512,5 +2512,176 @@ WHERE tb1.pk = 40 ORDER BY tb1.i1; v2 DROP TABLE t1,t2; +# +# MDEV-19790 : IS NOT TRUE / IS NOT FALSE predicates over +# inner tables of outer joins +# +create table t1 (a int); +create table t2 (b int); +insert into t1 values (3), (7), (1); +insert into t2 values (7), (4), (3); +select * from t1 left join t2 on a=b; +a b +3 3 +7 7 +1 NULL +select * from t1 left join t2 on a=b where (b > 3) is not true; +a b +3 3 +1 NULL +explain extended select * from t1 left join t2 on a=b where (b > 3) is not true; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`b` = `test`.`t1`.`a`)) where ((`test`.`t2`.`b` > 3) is not true) +select * from t1 left join t2 on a=b where (b > 3) is not false; +a b +7 7 +1 NULL +explain extended select * from t1 left join t2 on a=b where (b > 3) is not false; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`b` = `test`.`t1`.`a`)) where ((`test`.`t2`.`b` > 3) is not false) +drop table t1,t2; # end of 5.5 tests +# +# MDEV-19258: chained right joins all converted to inner joins +# +CREATE TABLE t1 ( +id int NOT NULL AUTO_INCREMENT, +timestamp bigint NOT NULL, +modifiedBy varchar(255) DEFAULT NULL, +PRIMARY KEY (id) +); +CREATE TABLE t2 ( +id int NOT NULL, +REV int NOT NULL, +REVTYPE tinyint DEFAULT NULL, +profile_id int DEFAULT NULL, +PRIMARY KEY (id,REV) +); +CREATE TABLE t3 ( +id int NOT NULL, +REV int NOT NULL, +person_id int DEFAULT NULL, +PRIMARY KEY (id,REV) +); +CREATE TABLE t4 ( +id int NOT NULL, +REV int NOT NULL, +PRIMARY KEY (id,REV) +); +INSERT INTO t1 VALUES +(1,1294391193890,'Cxqy$*9.kKeE'),(2,1294643906883,'rE4wqGV0gif@'), +(3,1294643927456,'L?3yt(%dY$Br'),(4,1294644343525,'WH&ObiZ$#2S4'), +(5,1294644616416,'YXnCbt?olUZ0'),(6,1294644954537,'8Npe4!(#lU@k'), +(7,1294645046659,'knc0GhXB1#ib'),(8,1294645183829,'w*oPpVfuS8^m'), +(9,1294645386701,'hwXR@3qVzrbU'),(10,1294645525982,'BeLW*Y9ndP0l'), +(11,1294645627723,'nTegib^)qZ$I'),(12,1294650860266,'u62C^Kzx3wH8'), +(13,1294657613745,'4&BkFjGa!qLg'),(14,1294660627161,')anpt312SCoh'), +(15,1294661023336,'LtJ2PX?*kTmx'),(16,1294662838066,'POGRr@?#ofpl'), +(17,1294663020989,'o.)1EOT2jnF7'),(18,1294663308065,'&TZ0F0LHE6.h'), +(19,1294664900039,'j)kSC%^In$9d'),(20,1294668904556,'97glN50)cAo.'), +(21,1294728056853,'lrKZxmw?I.Ek'),(22,1294728157174,'@P*SRg!pT.q?'), +(23,1294728327099,'W9gPrptF.)8n'),(24,1294728418481,'$q*c^sM&URd#'), +(25,1294728729620,'9*f4&bTPRtHo'),(26,1294728906014,')4VtTEnS7$oI'), +(27,1294732190003,'8dkNSPq2u3AQ'),(28,1294733205065,'SV2N6IoEf438'), +(29,1294741984927,'rBKj.0S^Ey%*'),(30,1294751748352,'j$2DvlBqk)Fw'), +(31,1294753902212,'C$N6OrEw8elz'),(32,1294758120598,'DCSVZw!rnxXq'), +(33,1294761769556,'OTS@QU8a6s5c'),(34,1294816845305,'IUE2stG0D3L5'), +(35,1294816966909,'Xd16yka.9nHe'),(36,1294817116302,'lOQHZpm%!8qb'), +(37,1294817374775,'^&pE3IhNf7ey'),(38,1294817538907,'oEn4#7C0Vhfp'), +(39,1294818482950,'bx54J*O0Va&?'),(40,1294819047024,'J%@a&1.qgdb?'), +(41,1294821826077,'C9kojr$L3Phz'),(42,1294825454458,'gG#BOnM80ZPi'), +(43,1294904129918,'F^!TrjM#zdvc'),(44,1294904254166,'Va&Tb)k0RvlM'), +(45,1294904414964,'dJjq0M6HvhR#'),(46,1294904505784,'nJmxg)ELqY(b'), +(47,1294904602835,'dhF#or$Vge!7'),(48,1294904684728,'?bIh5E3l!0em'), +(49,1294904877898,'Y*WflOdcxnk.'),(50,1294905002390,'*?H!lUgez5A.'), +(51,1294905096043,'wlEIY3n9uz!p'),(52,1294905404621,'T?qv3H6&hlQD'), +(53,1294905603922,'S@Bhys^Ti7bt'),(54,1294905788416,'KR?a5NVukz#l'), +(55,1294905993190,'A*&q4kWhED!o'),(56,1294906205254,'fT0%7z0DF6h*'), +(57,1294906319680,'LhzdW4?ivjR0'),(58,1294906424296,'h0KDlns%U*6T'), +(59,1294906623844,'b$CfB1noI6Ax'),(60,1294911258896,'#T1*LP!3$Oys'); +INSERT INTO t2 VALUES +(1,1,0,10209),(1,42480,1,10209),(1,61612,1,10209),(1,257545,1,10209), +(1,385332,1,10209),(1,1687999,1,10209),(3,1,0,10210),(3,617411,2,10210), +(4,11,0,14),(4,95149,1,10211),(4,607890,2,10211),(5,1,0,10212), +(6,1,0,10213),(6,93344,1,10213),(6,295578,1,10213),(6,295579,1,10213), +(6,295644,1,10213),(7,1,0,10214),(7,12,1,7),(7,688796,1,10214), +(7,1140433,1,10214),(7,1715227,1,10214),(8,1,0,10215),(8,74253,1,10215), +(8,93345,1,10215),(8,12,2,2),(9,1,0,10216),(9,93342,1,10216), +(9,122354,1,10216),(9,301499,2,10216),(10,11,0,5),(10,93343,1,10217), +(10,122355,1,10217),(10,123050,1,10217),(10,301500,2,10217),(11,1,0,10218), +(11,87852,1,10218),(11,605499,2,10218),(12,1,0,10219),(12,88024,1,10219), +(12,605892,2,10219),(13,1,0,10220); +INSERT INTO t3 VALUES +(1,1,300003),(1,117548,NULL),(2,1,300003),(2,117548,300006), +(3,1,300153),(3,117548,NULL),(4,1,300153),(4,117548,NULL), +(5,1,300153),(5,117548,NULL),(6,1,300182),(6,117548,NULL), +(7,1,300205),(7,117548,NULL),(8,1,300217),(8,117548,NULL), +(9,1,300290),(9,117548,NULL),(10,1,300290),(10,117548,NULL), +(11,1,300405),(11,117548,NULL),(12,1,300670),(12,117548,NULL), +(13,1,300670),(13,117548,NULL),(14,1,300006),(14,117548,NULL), +(15,1,300671),(15,117548,NULL),(16,1,300732),(16,117548,NULL); +INSERT INTO t4 VALUES +(300000,1),(300001,1),(300003,1),(300004,1), +(300005,1),(300005,688796),(300006,1),(300006,97697), +(300009,1),(300010,1),(300011,1),(300012,1),(300013,1), +(300014,1),(300015,1),(300016,1),(300017,1),(300018,1), +(300019,1),(300020,1),(300021,1),(300022,1),(300023,1), +(300024,1),(300025,1),(300026,1),(300027,1),(300028,1); +# This should have join order of t2,t3,t4,t1 +EXPLAIN EXTENDED SELECT * +FROM t1 INNER JOIN t2 ON t2.REV=t1.id +INNER JOIN t3 ON t3.id=t2.profile_id +INNER JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 AND +t2.REVTYPE=2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 42 100.00 Using where +1 SIMPLE t3 ref PRIMARY PRIMARY 4 test.t2.profile_id 1 100.00 Using where +1 SIMPLE t4 ref PRIMARY PRIMARY 4 test.t3.person_id 1 100.00 Using index +1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.REV 1 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`timestamp` AS `timestamp`,`test`.`t1`.`modifiedBy` AS `modifiedBy`,`test`.`t2`.`id` AS `id`,`test`.`t2`.`REV` AS `REV`,`test`.`t2`.`REVTYPE` AS `REVTYPE`,`test`.`t2`.`profile_id` AS `profile_id`,`test`.`t3`.`id` AS `id`,`test`.`t3`.`REV` AS `REV`,`test`.`t3`.`person_id` AS `person_id`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`REV` AS `REV` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where ((`test`.`t2`.`REVTYPE` = 2) and (`test`.`t4`.`id` = `test`.`t3`.`person_id`) and (`test`.`t3`.`id` = `test`.`t2`.`profile_id`) and (`test`.`t1`.`id` = `test`.`t2`.`REV`) and (`test`.`t1`.`timestamp` < 1294664900039) and (`test`.`t1`.`timestamp` > 1294644616416)) +SELECT * +FROM t1 INNER JOIN t2 ON t2.REV=t1.id +INNER JOIN t3 ON t3.id=t2.profile_id +INNER JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 AND +t2.REVTYPE=2; +id timestamp modifiedBy id REV REVTYPE profile_id id REV person_id id REV +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 1 300003 300003 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 97697 +# This should have join order of t2,t3,t4,t1 with the same plan as above +# because all RIGHT JOIN operations are converted into INNER JOIN +EXPLAIN EXTENDED SELECT * +FROM t1 RIGHT JOIN t2 ON t2.REV=t1.id +RIGHT JOIN t3 ON t3.id=t2.profile_id +RIGHT JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 +AND t2.REVTYPE=2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 42 100.00 Using where +1 SIMPLE t3 ref PRIMARY PRIMARY 4 test.t2.profile_id 1 100.00 Using where +1 SIMPLE t4 ref PRIMARY PRIMARY 4 test.t3.person_id 1 100.00 Using index +1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.REV 1 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`timestamp` AS `timestamp`,`test`.`t1`.`modifiedBy` AS `modifiedBy`,`test`.`t2`.`id` AS `id`,`test`.`t2`.`REV` AS `REV`,`test`.`t2`.`REVTYPE` AS `REVTYPE`,`test`.`t2`.`profile_id` AS `profile_id`,`test`.`t3`.`id` AS `id`,`test`.`t3`.`REV` AS `REV`,`test`.`t3`.`person_id` AS `person_id`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`REV` AS `REV` from `test`.`t4` join `test`.`t3` join `test`.`t2` join `test`.`t1` where ((`test`.`t2`.`REVTYPE` = 2) and (`test`.`t1`.`id` = `test`.`t2`.`REV`) and (`test`.`t3`.`id` = `test`.`t2`.`profile_id`) and (`test`.`t4`.`id` = `test`.`t3`.`person_id`) and (`test`.`t1`.`timestamp` < 1294664900039) and (`test`.`t1`.`timestamp` > 1294644616416)) +SELECT * +FROM t1 RIGHT JOIN t2 ON t2.REV=t1.id +RIGHT JOIN t3 ON t3.id=t2.profile_id +RIGHT JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 +AND t2.REVTYPE=2; +id timestamp modifiedBy id REV REVTYPE profile_id id REV person_id id REV +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 1 300003 300003 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 97697 +DROP TABLE t1,t2,t3,t4; +# end of 10.1 tests SET optimizer_switch=@save_optimizer_switch; diff --git a/mysql-test/r/join_outer_innodb.result b/mysql-test/r/join_outer_innodb.result index 339cc59ed699eb70acd8ad90a0b0ed39f29ba0ff..538f9763013ae6fe1743987265c1936255de1660 100644 --- a/mysql-test/r/join_outer_innodb.result +++ b/mysql-test/r/join_outer_innodb.result @@ -486,7 +486,7 @@ Note 1051 Unknown table 'test.t2' Note 1051 Unknown table 'test.t3' create table t2(a int,unique key (a)) engine=innodb; create table t3(b int) engine=innodb; -create table t1(a int,b int)engine=innodb; +create table t1(c int,b int)engine=innodb; set @mdev4270_opl= @@optimizer_prune_level; set @mdev4270_osd= @@optimizer_search_depth; set optimizer_prune_level=0; diff --git a/mysql-test/r/join_outer_jcl6.result b/mysql-test/r/join_outer_jcl6.result index faad87468c5d6e73ed2ab49e9266425af0917155..568b832f87460366464a869aeda3d76226e4612b 100644 --- a/mysql-test/r/join_outer_jcl6.result +++ b/mysql-test/r/join_outer_jcl6.result @@ -2458,7 +2458,7 @@ t1.b1+'0' t2.b2 + '0' 0 0 1 1 DROP TABLE t1, t2; -set @join_cache_level= @save_join_cache_level; +set @@join_cache_level= @save_join_cache_level; # # MDEV-14779: using left join causes incorrect results with materialization and derived tables # @@ -2523,7 +2523,178 @@ WHERE tb1.pk = 40 ORDER BY tb1.i1; v2 DROP TABLE t1,t2; +# +# MDEV-19790 : IS NOT TRUE / IS NOT FALSE predicates over +# inner tables of outer joins +# +create table t1 (a int); +create table t2 (b int); +insert into t1 values (3), (7), (1); +insert into t2 values (7), (4), (3); +select * from t1 left join t2 on a=b; +a b +7 7 +3 3 +1 NULL +select * from t1 left join t2 on a=b where (b > 3) is not true; +a b +3 3 +1 NULL +explain extended select * from t1 left join t2 on a=b where (b > 3) is not true; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`b` = `test`.`t1`.`a`)) where ((`test`.`t2`.`b` > 3) is not true) +select * from t1 left join t2 on a=b where (b > 3) is not false; +a b +7 7 +1 NULL +explain extended select * from t1 left join t2 on a=b where (b > 3) is not false; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer (flat, BNL join) +Warnings: +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` left join `test`.`t2` on((`test`.`t2`.`b` = `test`.`t1`.`a`)) where ((`test`.`t2`.`b` > 3) is not false) +drop table t1,t2; # end of 5.5 tests +# +# MDEV-19258: chained right joins all converted to inner joins +# +CREATE TABLE t1 ( +id int NOT NULL AUTO_INCREMENT, +timestamp bigint NOT NULL, +modifiedBy varchar(255) DEFAULT NULL, +PRIMARY KEY (id) +); +CREATE TABLE t2 ( +id int NOT NULL, +REV int NOT NULL, +REVTYPE tinyint DEFAULT NULL, +profile_id int DEFAULT NULL, +PRIMARY KEY (id,REV) +); +CREATE TABLE t3 ( +id int NOT NULL, +REV int NOT NULL, +person_id int DEFAULT NULL, +PRIMARY KEY (id,REV) +); +CREATE TABLE t4 ( +id int NOT NULL, +REV int NOT NULL, +PRIMARY KEY (id,REV) +); +INSERT INTO t1 VALUES +(1,1294391193890,'Cxqy$*9.kKeE'),(2,1294643906883,'rE4wqGV0gif@'), +(3,1294643927456,'L?3yt(%dY$Br'),(4,1294644343525,'WH&ObiZ$#2S4'), +(5,1294644616416,'YXnCbt?olUZ0'),(6,1294644954537,'8Npe4!(#lU@k'), +(7,1294645046659,'knc0GhXB1#ib'),(8,1294645183829,'w*oPpVfuS8^m'), +(9,1294645386701,'hwXR@3qVzrbU'),(10,1294645525982,'BeLW*Y9ndP0l'), +(11,1294645627723,'nTegib^)qZ$I'),(12,1294650860266,'u62C^Kzx3wH8'), +(13,1294657613745,'4&BkFjGa!qLg'),(14,1294660627161,')anpt312SCoh'), +(15,1294661023336,'LtJ2PX?*kTmx'),(16,1294662838066,'POGRr@?#ofpl'), +(17,1294663020989,'o.)1EOT2jnF7'),(18,1294663308065,'&TZ0F0LHE6.h'), +(19,1294664900039,'j)kSC%^In$9d'),(20,1294668904556,'97glN50)cAo.'), +(21,1294728056853,'lrKZxmw?I.Ek'),(22,1294728157174,'@P*SRg!pT.q?'), +(23,1294728327099,'W9gPrptF.)8n'),(24,1294728418481,'$q*c^sM&URd#'), +(25,1294728729620,'9*f4&bTPRtHo'),(26,1294728906014,')4VtTEnS7$oI'), +(27,1294732190003,'8dkNSPq2u3AQ'),(28,1294733205065,'SV2N6IoEf438'), +(29,1294741984927,'rBKj.0S^Ey%*'),(30,1294751748352,'j$2DvlBqk)Fw'), +(31,1294753902212,'C$N6OrEw8elz'),(32,1294758120598,'DCSVZw!rnxXq'), +(33,1294761769556,'OTS@QU8a6s5c'),(34,1294816845305,'IUE2stG0D3L5'), +(35,1294816966909,'Xd16yka.9nHe'),(36,1294817116302,'lOQHZpm%!8qb'), +(37,1294817374775,'^&pE3IhNf7ey'),(38,1294817538907,'oEn4#7C0Vhfp'), +(39,1294818482950,'bx54J*O0Va&?'),(40,1294819047024,'J%@a&1.qgdb?'), +(41,1294821826077,'C9kojr$L3Phz'),(42,1294825454458,'gG#BOnM80ZPi'), +(43,1294904129918,'F^!TrjM#zdvc'),(44,1294904254166,'Va&Tb)k0RvlM'), +(45,1294904414964,'dJjq0M6HvhR#'),(46,1294904505784,'nJmxg)ELqY(b'), +(47,1294904602835,'dhF#or$Vge!7'),(48,1294904684728,'?bIh5E3l!0em'), +(49,1294904877898,'Y*WflOdcxnk.'),(50,1294905002390,'*?H!lUgez5A.'), +(51,1294905096043,'wlEIY3n9uz!p'),(52,1294905404621,'T?qv3H6&hlQD'), +(53,1294905603922,'S@Bhys^Ti7bt'),(54,1294905788416,'KR?a5NVukz#l'), +(55,1294905993190,'A*&q4kWhED!o'),(56,1294906205254,'fT0%7z0DF6h*'), +(57,1294906319680,'LhzdW4?ivjR0'),(58,1294906424296,'h0KDlns%U*6T'), +(59,1294906623844,'b$CfB1noI6Ax'),(60,1294911258896,'#T1*LP!3$Oys'); +INSERT INTO t2 VALUES +(1,1,0,10209),(1,42480,1,10209),(1,61612,1,10209),(1,257545,1,10209), +(1,385332,1,10209),(1,1687999,1,10209),(3,1,0,10210),(3,617411,2,10210), +(4,11,0,14),(4,95149,1,10211),(4,607890,2,10211),(5,1,0,10212), +(6,1,0,10213),(6,93344,1,10213),(6,295578,1,10213),(6,295579,1,10213), +(6,295644,1,10213),(7,1,0,10214),(7,12,1,7),(7,688796,1,10214), +(7,1140433,1,10214),(7,1715227,1,10214),(8,1,0,10215),(8,74253,1,10215), +(8,93345,1,10215),(8,12,2,2),(9,1,0,10216),(9,93342,1,10216), +(9,122354,1,10216),(9,301499,2,10216),(10,11,0,5),(10,93343,1,10217), +(10,122355,1,10217),(10,123050,1,10217),(10,301500,2,10217),(11,1,0,10218), +(11,87852,1,10218),(11,605499,2,10218),(12,1,0,10219),(12,88024,1,10219), +(12,605892,2,10219),(13,1,0,10220); +INSERT INTO t3 VALUES +(1,1,300003),(1,117548,NULL),(2,1,300003),(2,117548,300006), +(3,1,300153),(3,117548,NULL),(4,1,300153),(4,117548,NULL), +(5,1,300153),(5,117548,NULL),(6,1,300182),(6,117548,NULL), +(7,1,300205),(7,117548,NULL),(8,1,300217),(8,117548,NULL), +(9,1,300290),(9,117548,NULL),(10,1,300290),(10,117548,NULL), +(11,1,300405),(11,117548,NULL),(12,1,300670),(12,117548,NULL), +(13,1,300670),(13,117548,NULL),(14,1,300006),(14,117548,NULL), +(15,1,300671),(15,117548,NULL),(16,1,300732),(16,117548,NULL); +INSERT INTO t4 VALUES +(300000,1),(300001,1),(300003,1),(300004,1), +(300005,1),(300005,688796),(300006,1),(300006,97697), +(300009,1),(300010,1),(300011,1),(300012,1),(300013,1), +(300014,1),(300015,1),(300016,1),(300017,1),(300018,1), +(300019,1),(300020,1),(300021,1),(300022,1),(300023,1), +(300024,1),(300025,1),(300026,1),(300027,1),(300028,1); +# This should have join order of t2,t3,t4,t1 +EXPLAIN EXTENDED SELECT * +FROM t1 INNER JOIN t2 ON t2.REV=t1.id +INNER JOIN t3 ON t3.id=t2.profile_id +INNER JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 AND +t2.REVTYPE=2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 42 100.00 Using where +1 SIMPLE t3 ref PRIMARY PRIMARY 4 test.t2.profile_id 1 100.00 Using where +1 SIMPLE t4 ref PRIMARY PRIMARY 4 test.t3.person_id 1 100.00 Using index +1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.REV 1 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`timestamp` AS `timestamp`,`test`.`t1`.`modifiedBy` AS `modifiedBy`,`test`.`t2`.`id` AS `id`,`test`.`t2`.`REV` AS `REV`,`test`.`t2`.`REVTYPE` AS `REVTYPE`,`test`.`t2`.`profile_id` AS `profile_id`,`test`.`t3`.`id` AS `id`,`test`.`t3`.`REV` AS `REV`,`test`.`t3`.`person_id` AS `person_id`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`REV` AS `REV` from `test`.`t1` join `test`.`t2` join `test`.`t3` join `test`.`t4` where ((`test`.`t2`.`REVTYPE` = 2) and (`test`.`t4`.`id` = `test`.`t3`.`person_id`) and (`test`.`t3`.`id` = `test`.`t2`.`profile_id`) and (`test`.`t1`.`id` = `test`.`t2`.`REV`) and (`test`.`t1`.`timestamp` < 1294664900039) and (`test`.`t1`.`timestamp` > 1294644616416)) +SELECT * +FROM t1 INNER JOIN t2 ON t2.REV=t1.id +INNER JOIN t3 ON t3.id=t2.profile_id +INNER JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 AND +t2.REVTYPE=2; +id timestamp modifiedBy id REV REVTYPE profile_id id REV person_id id REV +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 1 300003 300003 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 97697 +# This should have join order of t2,t3,t4,t1 with the same plan as above +# because all RIGHT JOIN operations are converted into INNER JOIN +EXPLAIN EXTENDED SELECT * +FROM t1 RIGHT JOIN t2 ON t2.REV=t1.id +RIGHT JOIN t3 ON t3.id=t2.profile_id +RIGHT JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 +AND t2.REVTYPE=2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 42 100.00 Using where +1 SIMPLE t3 ref PRIMARY PRIMARY 4 test.t2.profile_id 1 100.00 Using where +1 SIMPLE t4 ref PRIMARY PRIMARY 4 test.t3.person_id 1 100.00 Using index +1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.REV 1 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`timestamp` AS `timestamp`,`test`.`t1`.`modifiedBy` AS `modifiedBy`,`test`.`t2`.`id` AS `id`,`test`.`t2`.`REV` AS `REV`,`test`.`t2`.`REVTYPE` AS `REVTYPE`,`test`.`t2`.`profile_id` AS `profile_id`,`test`.`t3`.`id` AS `id`,`test`.`t3`.`REV` AS `REV`,`test`.`t3`.`person_id` AS `person_id`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`REV` AS `REV` from `test`.`t4` join `test`.`t3` join `test`.`t2` join `test`.`t1` where ((`test`.`t2`.`REVTYPE` = 2) and (`test`.`t1`.`id` = `test`.`t2`.`REV`) and (`test`.`t3`.`id` = `test`.`t2`.`profile_id`) and (`test`.`t4`.`id` = `test`.`t3`.`person_id`) and (`test`.`t1`.`timestamp` < 1294664900039) and (`test`.`t1`.`timestamp` > 1294644616416)) +SELECT * +FROM t1 RIGHT JOIN t2 ON t2.REV=t1.id +RIGHT JOIN t3 ON t3.id=t2.profile_id +RIGHT JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 +AND t2.REVTYPE=2; +id timestamp modifiedBy id REV REVTYPE profile_id id REV person_id id REV +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 1 300003 300003 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 1 +12 1294650860266 u62C^Kzx3wH8 8 12 2 2 2 117548 300006 300006 97697 +DROP TABLE t1,t2,t3,t4; +# end of 10.1 tests SET optimizer_switch=@save_optimizer_switch; set join_cache_level=default; show variables like 'join_cache_level'; diff --git a/mysql-test/r/mdev13607.result b/mysql-test/r/mdev13607.result index 08848bc645be3b9ae62d0658f0abc268e272f40c..f5edfa6a8d6c0a5b27aae165eb0c39920b236a1c 100644 --- a/mysql-test/r/mdev13607.result +++ b/mysql-test/r/mdev13607.result @@ -76,21 +76,21 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY p7 ALL NULL NULL NULL NULL 50 Using where; Using join buffer (incremental, BNL join) 1 PRIMARY p8 ALL NULL NULL NULL NULL 50 Using where; Using join buffer (incremental, BNL join) 1 PRIMARY p9 ALL NULL NULL NULL NULL 50 Using where; Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) -1 PRIMARY ALL NULL NULL NULL NULL -1127208515966861312 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) +1 PRIMARY ALL NULL NULL NULL NULL 18446744073709551615 Using join buffer (incremental, BNL join) 17 DERIVED r1 ALL NULL NULL NULL NULL 2 17 DERIVED d1 ALL NULL NULL NULL NULL 2 Using where; Using join buffer (flat, BNL join) 17 DERIVED r2 ALL NULL NULL NULL NULL 2 Using where; Using join buffer (incremental, BNL join) diff --git a/mysql-test/r/multi_update.result b/mysql-test/r/multi_update.result index f614ea1e497169f07705d58193d979cbe4d55ca8..ec8ba1c53d36bcae92808f6b7894cf4b19a8a8be 100644 --- a/mysql-test/r/multi_update.result +++ b/mysql-test/r/multi_update.result @@ -1039,7 +1039,27 @@ triggered triggered drop table t1,t2, t3; drop user foo; -end of 5.5 tests +create table t1 (a int, b int); +create table t2 (c int, d int); +insert t1 values (1,2),(3,4); +insert t2 values (5,6),(7,8); +create table t0 (x int); +insert t0 values (11), (22); +create trigger tr1 before update on t2 for each row insert t0 values (new.c); +lock table t0 write; +update t1 join t2 on (a=c+4) set b=d; +drop table t1, t2, t0; +create table t1 (a int, b varchar(50), c varchar(50)); +insert t1 (a,b) values (1,'1'), (2,'2'), (3,'3'); +create function f1() returns varchar(50) return 'result'; +create trigger tr before update on t1 for each row set new.c = (select f1()); +create table t2 select a, b from t1; +update t1 join t2 using (a) set t1.b = t2.b; +drop table t1, t2; +drop function f1; +# +# end of 5.5 tests +# # Bug mdev-5970 # Bug#13256831 - ERROR 1032 (HY000): CAN'T FIND RECORD diff --git a/mysql-test/r/multi_update_debug.result b/mysql-test/r/multi_update_debug.result new file mode 100644 index 0000000000000000000000000000000000000000..8bcd813e5b74238ed036991935cfe9785cbd099f --- /dev/null +++ b/mysql-test/r/multi_update_debug.result @@ -0,0 +1,13 @@ +create table t1 (a int, b int); +create table t2 (c int, d int); +insert t1 values (1,2),(3,4); +insert t2 values (5,6),(7,8); +create table t0 (x int); +insert t0 values (11), (22); +create trigger tr1 before update on t1 for each row insert t0 values (new.b); +set debug_sync='open_tables_after_open_and_process_table WAIT_FOR cont'; +update t1 join t2 on (a=c+4) set b=d; +set debug_sync='mdl_acquire_lock_wait SIGNAL cont'; +lock table t1 write, t0 write; +drop table t1, t2, t0; +set debug_sync='reset'; diff --git a/mysql-test/r/multi_update_innodb.result b/mysql-test/r/multi_update_innodb.result index 643287c3a9304a6bd9ab5f9c6485ac4b1b8df8fd..5da8cf46f5ac0309fa85b93fc7734d6add65b044 100644 --- a/mysql-test/r/multi_update_innodb.result +++ b/mysql-test/r/multi_update_innodb.result @@ -67,3 +67,20 @@ SELECT * FROM t2; col_int_key pk_1 pk_2 col_int 1 2 3 4 DROP TABLE t1,t2; +create table t1 (id serial, size int(11)) engine=innodb; +create table t2 (id serial, size int, account_id int) engine=innodb; +create table t3 (id serial, size int, article_id int) engine=innodb; +create table t4 (id serial, file_id int, article_id int) engine=innodb; +insert t1 values(null, 400); +insert t2 values(null, 0, 1), (null, 1, 1); +insert t3 values(null, 100, 1); +insert t4 values(null, 1, 2); +create trigger file_update_article before update on t3 for each row +update t2 set t2.size = new.size where t2.id = new.article_id; +create trigger article_update_account before update on t2 for each row +update t1 set t1.size = t1.size + new.size where t1.id = new.account_id; +update t3 join t4 on t4.file_id =t3.id and t4.article_id=2 set t3.size=t3.size + 2; +drop table t1, t2, t3, t4; +# +# end of 5.5 tests +# diff --git a/mysql-test/r/mysqld--help.result b/mysql-test/r/mysqld--help.result index 4ff44dcd251079e3db328ad5d1785a28eb9735d9..68aa84b6d18ebb64280210ad4ff89636cdb51717 100644 --- a/mysql-test/r/mysqld--help.result +++ b/mysql-test/r/mysqld--help.result @@ -1,4 +1,4 @@ -Windows bug: happens when a new line is exactly at the right offset. +Windows bug: new line disappears when it is exactly at the right offset. The following options may be given as the first argument: --print-defaults Print the program argument list and exit. --no-defaults Don't read default options from any option file. @@ -115,7 +115,9 @@ The following specify which files/extra groups are read (specified before remain that this is a limit per thread! --changed-page-bitmaps[=name] Enable or disable CHANGED_PAGE_BITMAPS plugin. One of: - ON, OFF, FORCE (don't start if the plugin fails to load). + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). --character-set-client-handshake Don't ignore client side character set value sent during handshake. diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result index 25c1931d0e070a21a5157a22303bbc5d09fbcfb6..8d8e3b7eda461bd717b28e279bcaf3aafa0f9839 100644 --- a/mysql-test/r/mysqldump.result +++ b/mysql-test/r/mysqldump.result @@ -5610,3 +5610,21 @@ DROP FUNCTION f; # DROP VIEW v1; DROP FUNCTION f; +# +# MDEV-788 New option to ignore foreign key contraints in mysqlimport +# +create table t1 ( +id int primary key +) engine=InnoDB; +create table t2 ( +t1_id int, +CONSTRAINT fk +FOREIGN KEY (t1_id) REFERENCES t1 (id) +) ENGINE = InnoDB; +select count(*) from t2; +count(*) +1 +select count(*) from t2; +count(*) +2 +drop tables t2, t1; diff --git a/mysql-test/r/plugin.result b/mysql-test/r/plugin.result index 3a141a25b5cede8c3b70996b18abbcf5b67c4257..93a150ae424de7d6f79286bf043cb868213df470 100644 --- a/mysql-test/r/plugin.result +++ b/mysql-test/r/plugin.result @@ -318,6 +318,15 @@ UNUSABLE uninstall soname 'ha_example'; select plugin_name from information_schema.plugins where plugin_library like 'ha_example%'; plugin_name +set names utf8; +select convert('admin𝌆' using utf8); +convert('admin𝌆' using utf8) +admin???? +Warnings: +Warning 1300 Invalid utf8 character string: '\xF0\x9D\x8C\x86' +install plugin foo soname 'admin𝌆'; +ERROR HY000: No paths allowed for shared library +# End of 5.5 test # # MDEV-5309 - RENAME TABLE does not check for existence of the table's # engine @@ -331,3 +340,4 @@ UNINSTALL PLUGIN example; RENAME TABLE t1 TO t2; ERROR 42S02: Table 'test.t1' doesn't exist DROP TABLE t1; +# End of 10.1 test diff --git a/mysql-test/r/plugin_not_embedded.result b/mysql-test/r/plugin_not_embedded.result index 8106abc497f2c1f27e647e1f680a3e613443f28b..b31eb80f1ae943bc0b54e0959ec86d740221d5ef 100644 --- a/mysql-test/r/plugin_not_embedded.result +++ b/mysql-test/r/plugin_not_embedded.result @@ -11,3 +11,6 @@ UNINSTALL PLUGIN example; DROP USER bug51770@localhost; INSTALL PLUGIN example SONAME '../ha_example.so'; ERROR HY000: No paths allowed for shared library +insert mysql.plugin values (); +delete from mysql.plugin where name = ''; +# End of 5.5 tests diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result index 0d305b37bd3df463e87124a06c5614ca18afdb45..a2d5f14c18defa22842da3886e6ba19210821709 100644 --- a/mysql-test/r/ps.result +++ b/mysql-test/r/ps.result @@ -4356,6 +4356,69 @@ LINE1 1 LINE2 2 LINE3 3 drop table t1; +# +# MDEV-17042: prepared statement does not return error with +# SQL_MODE STRICT_TRANS_TABLES. (Part 1) +# +set @save_sql_mode=@@sql_mode; +set sql_mode='STRICT_ALL_TABLES'; +CREATE TABLE t1 (id int, count int); +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id decimal(10,5), count int); +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id double, count int); +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id date, count int); +insert into t1 values ("2019-06-11",1),("2019-06-12",2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Incorrect datetime value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Incorrect datetime value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Incorrect datetime value: '1bad' +deallocate prepare stmt; +drop table t1; +set sql_mode=@save_sql_mode; # End of 5.5 tests # # Start of 10.1 tests diff --git a/mysql-test/r/ps_innodb.result b/mysql-test/r/ps_innodb.result new file mode 100644 index 0000000000000000000000000000000000000000..a4fa62e3f399e1e6577457b342e9bdcf15848f10 --- /dev/null +++ b/mysql-test/r/ps_innodb.result @@ -0,0 +1,64 @@ +# +# MDEV-17042: prepared statement does not return error with +# SQL_MODE STRICT_TRANS_TABLES. (Part 2) +# +set @save_sql_mode=@@sql_mode; +set sql_mode='STRICT_TRANS_TABLES'; +CREATE TABLE t1 (id int, count int) engine=innodb; +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id decimal(10,5), count int) engine=innodb; +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DECIMAL value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id double, count int) engine=innodb; +insert into t1 values (1,1),(0,2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Truncated incorrect DOUBLE value: '1bad' +deallocate prepare stmt; +drop table t1; +CREATE TABLE t1 (id date, count int) engine=innodb; +insert into t1 values ("2019-06-11",1),("2019-06-12",2); +update t1 set count = count + 1 where id = '1bad'; +ERROR 22007: Incorrect datetime value: '1bad' +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +execute stmt; +ERROR 22007: Incorrect datetime value: '1bad' +deallocate prepare stmt; +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +execute stmt using @a; +ERROR 22007: Incorrect datetime value: '1bad' +deallocate prepare stmt; +drop table t1; +set sql_mode=@save_sql_mode; +# End of 5.5 tests diff --git a/mysql-test/r/repair_symlink-5543.result b/mysql-test/r/repair_symlink-5543.result index c77e7162a5187756d7af995757f83276d1e82a6a..2024c9f568477ff526ad33ca6b6e3ae830e72d97 100644 --- a/mysql-test/r/repair_symlink-5543.result +++ b/mysql-test/r/repair_symlink-5543.result @@ -1,7 +1,7 @@ create table t1 (a int) engine=myisam data directory='MYSQL_TMP_DIR'; insert t1 values (1); -# Some systems fail with errcode 40, when doing openat, while others -# don't have openat and fail with errcode 20. +# Some systems fail with errcode 40, or 90 (MIPS) when doing openat, +# while others don't have openat and fail with errcode 20. repair table t1; Table Op Msg_type Msg_text test.t1 repair error 20 for record at pos 0 diff --git a/mysql-test/r/selectivity.result b/mysql-test/r/selectivity.result index 2e69f674ea359f1151b7bcd632976f36ea1c9e4e..ba7c9c59361644f12ebb3cd16faf9aea6793ad1d 100644 --- a/mysql-test/r/selectivity.result +++ b/mysql-test/r/selectivity.result @@ -400,7 +400,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 SUBQUERY customer ALL NULL NULL NULL NULL 150 100.00 Using where Warnings: Note 1276 Field or reference 'dbt3_s001.customer.c_custkey' of SELECT #4 was resolved in SELECT #2 -Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`)))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) +Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`) limit 1))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) select cntrycode, count(*) as numcust, sum(c_acctbal) as totacctbal from ( select substr(c_phone, 1, 2) as cntrycode, c_acctbal @@ -441,7 +441,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 SUBQUERY customer ALL NULL NULL NULL NULL 150 91.00 Using where Warnings: Note 1276 Field or reference 'dbt3_s001.customer.c_custkey' of SELECT #4 was resolved in SELECT #2 -Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`)))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) +Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`) limit 1))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) select cntrycode, count(*) as numcust, sum(c_acctbal) as totacctbal from ( select substr(c_phone, 1, 2) as cntrycode, c_acctbal @@ -985,7 +985,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 SUBQUERY t2 ALL NULL NULL NULL NULL 7 100.00 2 SUBQUERY t1 ALL NULL NULL NULL NULL 14 100.00 Using join buffer (flat, BNL join) Warnings: -Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((((1,exists(select 1 from `test`.`t1` join `test`.`t2`))) and (`test`.`t1`.`a` <> `test`.`t2`.`b`)) or (`test`.`t1`.`a` <= 4)) +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((((1,exists(select 1 from `test`.`t1` join `test`.`t2` limit 1))) and (`test`.`t1`.`a` <> `test`.`t2`.`b`)) or (`test`.`t1`.`a` <= 4)) set optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; DROP TABLE t1,t2; set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/r/selectivity_innodb.result b/mysql-test/r/selectivity_innodb.result index d3e71088f874eacec8fb9581ab0252fa8dc20389..9898acd1f0743d4d5dc6d6c1bd1abad7f3f54b36 100644 --- a/mysql-test/r/selectivity_innodb.result +++ b/mysql-test/r/selectivity_innodb.result @@ -403,7 +403,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 SUBQUERY customer ALL NULL NULL NULL NULL 150 100.00 Using where Warnings: Note 1276 Field or reference 'dbt3_s001.customer.c_custkey' of SELECT #4 was resolved in SELECT #2 -Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`)))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) +Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`) limit 1))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) select cntrycode, count(*) as numcust, sum(c_acctbal) as totacctbal from ( select substr(c_phone, 1, 2) as cntrycode, c_acctbal @@ -444,7 +444,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 SUBQUERY customer ALL NULL NULL NULL NULL 150 91.00 Using where Warnings: Note 1276 Field or reference 'dbt3_s001.customer.c_custkey' of SELECT #4 was resolved in SELECT #2 -Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`)))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) +Note 1003 select substr(`dbt3_s001`.`customer`.`c_phone`,1,2) AS `cntrycode`,count(0) AS `numcust`,sum(`dbt3_s001`.`customer`.`c_acctbal`) AS `totacctbal` from `dbt3_s001`.`customer` where ((substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25')) and (`dbt3_s001`.`customer`.`c_acctbal` > (select avg(`dbt3_s001`.`customer`.`c_acctbal`) from `dbt3_s001`.`customer` where ((`dbt3_s001`.`customer`.`c_acctbal` > 0.00) and (substr(`dbt3_s001`.`customer`.`c_phone`,1,2) in ('10','20','14','19','11','28','25'))))) and (not((1,exists(select 1 from `dbt3_s001`.`orders` where (`dbt3_s001`.`orders`.`o_custkey` = `dbt3_s001`.`customer`.`c_custkey`) limit 1))))) group by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) order by substr(`dbt3_s001`.`customer`.`c_phone`,1,2) select cntrycode, count(*) as numcust, sum(c_acctbal) as totacctbal from ( select substr(c_phone, 1, 2) as cntrycode, c_acctbal @@ -995,7 +995,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 SUBQUERY t2 ALL NULL NULL NULL NULL 7 100.00 2 SUBQUERY t1 ALL NULL NULL NULL NULL 14 100.00 Using join buffer (flat, BNL join) Warnings: -Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((((1,exists(select 1 from `test`.`t1` join `test`.`t2`))) and (`test`.`t1`.`a` <> `test`.`t2`.`b`)) or (`test`.`t1`.`a` <= 4)) +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where ((((1,exists(select 1 from `test`.`t1` join `test`.`t2` limit 1))) and (`test`.`t1`.`a` <> `test`.`t2`.`b`)) or (`test`.`t1`.`a` <= 4)) set optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; DROP TABLE t1,t2; set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result index e39754159fb67210da3733c70381dd0d97938d2f..1704e7cd214bb343bd8051206fed812b1568392d 100644 --- a/mysql-test/r/sp.result +++ b/mysql-test/r/sp.result @@ -8319,4 +8319,18 @@ UNION SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS; DROP FUNCTION f; DROP VIEW v; +# +# MDEV-17963: Assertion `field_pos < field_count' failed in Protocol_text::store, +# Assertion `field_handlers == 0 || field_pos < field_count' +# +CREATE TABLE t1 (ct time); +INSERT INTO t1 VALUES ('16:11:28'); +CREATE FUNCTION f1 () RETURNS varchar(100) +BEGIN +DECLARE xxx varchar(100); +ANALYZE SELECT sum(ct) FROM t1 INTO xxx ; +RETURN xxx; +END| +ERROR 0A000: Not allowed to return a result set from a function +drop table t1; #End of 10.1 tests diff --git a/mysql-test/r/stat_tables.result b/mysql-test/r/stat_tables.result index bd3e9ed7a40dedb48bcda456459f52f08ee2ad63..d26221b5f8dbd6556baf33295edb8f537f2c0e85 100644 --- a/mysql-test/r/stat_tables.result +++ b/mysql-test/r/stat_tables.result @@ -692,5 +692,53 @@ DROP DATABASE dbt3_s001; delete from mysql.table_stats; delete from mysql.column_stats; delete from mysql.index_stats; +# +# MDEV-19352: Server crash in alloc_histograms_for_table_share upon query from information schema +# +use test; +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; +CREATE TABLE t1 (a INT); +CREATE TABLE t2 (b INT); +CREATE VIEW v AS SELECT * FROM t1 JOIN t2; +INSERT INTO t2 SELECT * FROM x; +ERROR 42S02: Table 'test.x' doesn't exist +select * from information_schema.tables where table_name='v'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT +def test v VIEW NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL VIEW +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; +drop table t1,t2; +drop view v; +# +# MDEV-19407: Assertion `field->table->stats_is_read' failed in is_eits_usable +# +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 1; +set @@use_stat_tables='never'; +create table t1(pk int); +insert into t1 values (4),(3); +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; +INSERT INTO t1 SELECT * FROM x; +ERROR 42S02: Table 'test.x' doesn't exist +CREATE TABLE t2 SELECT pk FROM t1 WHERE pk>2; +select * from t2; +pk +4 +3 +drop table t1,t2; +create table t1(a int,b int, key k1(a) ); +insert into t1 values(1,1),(2,2),(3,3); +analyze table t1; +Table Op Msg_type Msg_text +test.t1 analyze status Engine-independent statistics collected +test.t1 analyze status OK +select * from mysql.index_stats, t1 where index_name='k1' and t1.a > 1 and t1.b > 1; +db_name table_name index_name prefix_arity avg_frequency a b +test t1 k1 1 1.0000 2 2 +test t1 k1 1 1.0000 3 3 +drop table t1; +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; set @save_optimizer_switch=@@optimizer_switch; set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/r/stat_tables_innodb.result b/mysql-test/r/stat_tables_innodb.result index 579d19462e7da279cb7a0afefbaf62b7dbc4630d..b8bed6814657c343777de680005458613892d634 100644 --- a/mysql-test/r/stat_tables_innodb.result +++ b/mysql-test/r/stat_tables_innodb.result @@ -719,6 +719,54 @@ DROP DATABASE dbt3_s001; delete from mysql.table_stats; delete from mysql.column_stats; delete from mysql.index_stats; +# +# MDEV-19352: Server crash in alloc_histograms_for_table_share upon query from information schema +# +use test; +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; +CREATE TABLE t1 (a INT); +CREATE TABLE t2 (b INT); +CREATE VIEW v AS SELECT * FROM t1 JOIN t2; +INSERT INTO t2 SELECT * FROM x; +ERROR 42S02: Table 'test.x' doesn't exist +select * from information_schema.tables where table_name='v'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT +def test v VIEW NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL VIEW +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; +drop table t1,t2; +drop view v; +# +# MDEV-19407: Assertion `field->table->stats_is_read' failed in is_eits_usable +# +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 1; +set @@use_stat_tables='never'; +create table t1(pk int); +insert into t1 values (4),(3); +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; +INSERT INTO t1 SELECT * FROM x; +ERROR 42S02: Table 'test.x' doesn't exist +CREATE TABLE t2 SELECT pk FROM t1 WHERE pk>2; +select * from t2; +pk +4 +3 +drop table t1,t2; +create table t1(a int,b int, key k1(a) ); +insert into t1 values(1,1),(2,2),(3,3); +analyze table t1; +Table Op Msg_type Msg_text +test.t1 analyze status Engine-independent statistics collected +test.t1 analyze status OK +select * from mysql.index_stats, t1 where index_name='k1' and t1.a > 1 and t1.b > 1; +db_name table_name index_name prefix_arity avg_frequency a b +test t1 k1 1 1.0000 2 2 +test t1 k1 1 1.0000 3 3 +drop table t1; +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; set @save_optimizer_switch=@@optimizer_switch; set use_stat_tables=@save_use_stat_tables; set optimizer_switch=@save_optimizer_switch_for_stat_tables_test; diff --git a/mysql-test/r/subselect.result b/mysql-test/r/subselect.result index 69db09593733a4ab5e0b5842e9335ae98f839685..c2438775c3ed48a1a6c4b19e839cfbe8b13e8121 100644 --- a/mysql-test/r/subselect.result +++ b/mysql-test/r/subselect.result @@ -1893,7 +1893,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null)))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1))))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -4452,7 +4452,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)))) +Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1)) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6969,7 +6969,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7251,6 +7251,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_cache.result b/mysql-test/r/subselect_cache.result index 97a5f5a77f651edc9245b444b8f0036e2623d401..182df6ee2990da85be72151684a3b98d754a85e1 100644 --- a/mysql-test/r/subselect_cache.result +++ b/mysql-test/r/subselect_cache.result @@ -3385,6 +3385,7 @@ WHERE table1 .`col_varchar_key` ) field10 Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'f' Warning 1292 Truncated incorrect DOUBLE value: 'f' +Warning 1292 Truncated incorrect DOUBLE value: 'f' SET @@optimizer_switch = 'subquery_cache=on'; /* cache is on */ SELECT COUNT( DISTINCT table2 .`col_int_key` ) , ( SELECT SUBQUERY2_t1 .`col_int_key` @@ -3401,6 +3402,7 @@ WHERE table1 .`col_varchar_key` ) field10 Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'f' Warning 1292 Truncated incorrect DOUBLE value: 'f' +Warning 1292 Truncated incorrect DOUBLE value: 'f' drop table t1,t2,t3,t4; set @@optimizer_switch= default; #launchpad BUG#611625 diff --git a/mysql-test/r/subselect_exists2in.result b/mysql-test/r/subselect_exists2in.result index b6b2f5b476ffc19aad00f91a9d8d1f50f92be15a..18cd056798968d86012b0488035c5151aaec593c 100644 --- a/mysql-test/r/subselect_exists2in.result +++ b/mysql-test/r/subselect_exists2in.result @@ -94,7 +94,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t3 ALL bb NULL NULL NULL 2 100.00 Using where Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select `test`.`t3`.`a` from `test`.`t3` where (`test`.`t3`.`b` = `test`.`t1`.`a`)) +Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select `test`.`t3`.`a` from `test`.`t3` where (`test`.`t3`.`b` = `test`.`t1`.`a`) limit 1) set optimizer_switch=default; set optimizer_switch='exists_to_in=on'; drop table t1,t2,t3; @@ -358,7 +358,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 SUBQUERY t3 ALL NULL NULL NULL NULL 2 100.00 Using where Warnings: Note 1276 Field or reference 'test.t2.b' of SELECT #3 was resolved in SELECT #2 -Note 1003 select (select 1 from dual where (not(exists(select `test`.`t3`.`c` from `test`.`t3` where (`test`.`t3`.`c` = 1))))) AS `( SELECT b FROM t2 WHERE NOT EXISTS ( SELECT c FROM t3 WHERE c = b ) )` from `test`.`t1` +Note 1003 select (select 1 from dual where (not(exists(select `test`.`t3`.`c` from `test`.`t3` where (`test`.`t3`.`c` = 1) limit 1)))) AS `( SELECT b FROM t2 WHERE NOT EXISTS ( SELECT c FROM t3 WHERE c = b ) )` from `test`.`t1` SELECT ( SELECT b FROM t2 WHERE NOT EXISTS ( SELECT c FROM t3 WHERE c = b ) ) FROM t1; ( SELECT b FROM t2 WHERE NOT EXISTS ( SELECT c FROM t3 WHERE c = b ) ) 1 @@ -429,7 +429,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a1' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`a1` AS `a1` from `test`.`t1` where exists(select 1 from `test`.`t3` where ((`test`.`t3`.`b` = `test`.`t1`.`a`) and (`test`.`t3`.`b1` = `test`.`t1`.`a1`))) +Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`a1` AS `a1` from `test`.`t1` where exists(select 1 from `test`.`t3` where ((`test`.`t3`.`b` = `test`.`t1`.`a`) and (`test`.`t3`.`b1` = `test`.`t1`.`a1`)) limit 1) set optimizer_switch=default; set optimizer_switch='exists_to_in=on'; drop table t1,t3; @@ -905,7 +905,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra Warnings: Note 1276 Field or reference 'sq1.pk' of SELECT #3 was resolved in SELECT #1 Note 1276 Field or reference 'sq1.f1' of SELECT #3 was resolved in SELECT #1 -Note 1003 select straight_join `test`.`t1`.`f2` AS `f2` from `test`.`t1` where <`test`.`t1`.`f1`,`test`.`t1`.`pk`>(exists(select 1 from `test`.`t1` `sq2` semi join (`test`.`t1`) where ((`test`.`sq2`.`f1` = `test`.`t1`.`f1`) and (`test`.`t1`.`pk` = `test`.`t1`.`f1`)))) +Note 1003 select straight_join `test`.`t1`.`f2` AS `f2` from `test`.`t1` where <`test`.`t1`.`f1`,`test`.`t1`.`pk`>(exists(select 1 from `test`.`t1` `sq2` semi join (`test`.`t1`) where ((`test`.`sq2`.`f1` = `test`.`t1`.`f1`) and (`test`.`t1`.`pk` = `test`.`t1`.`f1`)) limit 1)) SELECT STRAIGHT_JOIN sq1.f2 FROM ( SELECT * FROM t1 ) AS sq1 WHERE EXISTS ( SELECT * FROM t1 AS sq2 diff --git a/mysql-test/r/subselect_mat.result b/mysql-test/r/subselect_mat.result index 6fae057dd175a7dfe7a6736ac8a9ec93f85870f0..462015c7e84f55d0399f27ca5e4085cb84236025 100644 --- a/mysql-test/r/subselect_mat.result +++ b/mysql-test/r/subselect_mat.result @@ -2251,7 +2251,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 MATERIALIZED t3 ALL NULL NULL NULL NULL 8 100.00 Warnings: Note 1276 Field or reference 'test.t1.f1' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`t1`.`f1` AS `f1` from `test`.`t1` where <`test`.`t1`.`f1`>(exists(select 1 from `test`.`t2` semi join (`test`.`t3`) join `test`.`t3` where ((`test`.`t3`.`i3` = `test`.`t2`.`i2`) and (`test`.`t1`.`f1` = `test`.`t3`.`f3`)))) +Note 1003 select `test`.`t1`.`f1` AS `f1` from `test`.`t1` where <`test`.`t1`.`f1`>(exists(select 1 from `test`.`t2` semi join (`test`.`t3`) join `test`.`t3` where ((`test`.`t3`.`i3` = `test`.`t2`.`i2`) and (`test`.`t1`.`f1` = `test`.`t3`.`f3`)) limit 1)) # this checks the result set above set optimizer_switch= 'materialization=off,semijoin=off'; SELECT * FROM t1 @@ -2484,6 +2484,95 @@ SELECT 1 FROM t1 where t1.id IN (SELECT v1.i1 from v1); 1 drop table t1,t2; drop view v1; +# +# MDEV-19580: function invocation in the left part of IN subquery +# +create table t1 (id int, a varchar(50), b int); +insert into t1 values +(1,'mrs',2), (2,'joe',2), (3,'paul',1), (4,'art',1); +create table t2 (id int, a varchar(50), x int); +insert into t2 values +(1,'grand',1),(2,'average',1),(3,'serf',0); +create table t3 (d1 date, d2 date, t1_id int, t2_id int ); +insert into t3 values +('1972-01-01','1988-12-31',3,1), ('1972-01-01','1988-12-31',4,1), +('1972-01-01','1988-12-31',1,2), ('1972-01-01','1988-12-31',2,3); +create table t4 ( id int, a varchar(50) ); +insert into t4 values +(1,'songwriter'),(2,'song character'); +create function f1(who int, dt date) returns int +deterministic +begin +declare result int; +select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; +return result; +end$$ +create function f2(who int, dt date) returns int +begin +declare result int; +select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; +return result; +end$$ +# Deterministic function in left part of IN subquery: semi-join is OK +select * from t1 +left join t4 on t1.b = t4.id +where f1(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a +3 paul 1 1 songwriter +4 art 1 1 songwriter +1 mrs 2 2 song character +explain extended select * from t1 +left join t4 on t1.b = t4.id +where f1(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +2 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f1`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +# Non-deterministic function in left part of IN subq: semi-join is OK +select * from t1 +left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a +3 paul 1 1 songwriter +4 art 1 1 songwriter +1 mrs 2 2 song character +explain extended select * from t1 +left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +2 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f2`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +select t1.*, t4.*, +(select max(t4.id) from t4 where t4.id=t1.b and sleep(0) = 0) as s +from t1 left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a s +3 paul 1 1 songwriter 1 +4 art 1 1 songwriter 1 +1 mrs 2 2 song character 2 +explain extended select t1.*, t4.*, +(select max(t4.id) from t4 where t4.id=t1.b and sleep(0) = 0) as s +from t1 left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +3 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +2 DEPENDENT SUBQUERY t4 ALL NULL NULL NULL NULL 2 100.00 Using where +Warnings: +Note 1276 Field or reference 'test.t1.b' of SELECT #2 was resolved in SELECT #1 +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a`,(select max(`test`.`t4`.`id`) from `test`.`t4` where ((`test`.`t4`.`id` = `test`.`t1`.`b`) and (sleep(0) = 0))) AS `s` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f2`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +drop function f1; +drop function f2; +drop table t1,t2,t3,t4; # End of 5.5 tests # # MDEV-7220: Materialization strategy is not used for REPLACE ... SELECT diff --git a/mysql-test/r/subselect_no_exists_to_in.result b/mysql-test/r/subselect_no_exists_to_in.result index ef3bf7ef692f82cedc42e6785a933b2448925feb..e604c821bfda7a46ae96138ebf627633dfa1dca9 100644 --- a/mysql-test/r/subselect_no_exists_to_in.result +++ b/mysql-test/r/subselect_no_exists_to_in.result @@ -349,7 +349,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t7 eq_ref PRIMARY PRIMARY 4 test.t6.clinic_uq 1 100.00 Using index Warnings: Note 1276 Field or reference 'test.t6.clinic_uq' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`t6`.`patient_uq` AS `patient_uq`,`test`.`t6`.`clinic_uq` AS `clinic_uq` from `test`.`t6` where <`test`.`t6`.`clinic_uq`>(exists(select 1 from `test`.`t7` where (`test`.`t7`.`uq` = `test`.`t6`.`clinic_uq`))) +Note 1003 select `test`.`t6`.`patient_uq` AS `patient_uq`,`test`.`t6`.`clinic_uq` AS `clinic_uq` from `test`.`t6` where <`test`.`t6`.`clinic_uq`>(exists(select 1 from `test`.`t7` where (`test`.`t7`.`uq` = `test`.`t6`.`clinic_uq`) limit 1)) select * from t1 where a= (select a from t2,t4 where t2.b=t4.b); ERROR 23000: Column 'a' in field list is ambiguous drop table t1,t2,t3; @@ -1897,7 +1897,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not(<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not(<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1)))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -2433,7 +2433,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 100.00 Using where Warnings: Note 1276 Field or reference 'test.up.a' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`up`.`a` AS `a`,`test`.`up`.`b` AS `b` from `test`.`t1` `up` where <`test`.`up`.`a`>(exists(select 1 from `test`.`t1` where (`test`.`t1`.`a` = `test`.`up`.`a`))) +Note 1003 select `test`.`up`.`a` AS `a`,`test`.`up`.`b` AS `b` from `test`.`t1` `up` where <`test`.`up`.`a`>(exists(select 1 from `test`.`t1` where (`test`.`t1`.`a` = `test`.`up`.`a`) limit 1)) drop table t1; CREATE TABLE t1 (t1_a int); INSERT INTO t1 VALUES (1); @@ -4442,7 +4442,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00 Using where Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists(select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`))) +Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists(select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`) limit 1)) EXPLAIN EXTENDED SELECT 2 FROM t1 WHERE EXISTS ((SELECT 1 FROM t2 WHERE t1.a=t2.a) UNION (SELECT 1 FROM t2 WHERE t1.a = t2.a)); @@ -4454,7 +4454,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)))) +Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1)) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6969,7 +6969,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7251,6 +7251,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_no_mat.result b/mysql-test/r/subselect_no_mat.result index 703572e0ef86fd0b7c634a9cdc32e2ba8a8c8200..e251ca727aaf23440a4fce231d00c44bd091b0b3 100644 --- a/mysql-test/r/subselect_no_mat.result +++ b/mysql-test/r/subselect_no_mat.result @@ -1900,7 +1900,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null)))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1))))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -4454,7 +4454,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)))) +Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1)) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6963,7 +6963,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7244,6 +7244,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_no_opts.result b/mysql-test/r/subselect_no_opts.result index 39a098b754bcf7e44900d701a315d3c751041b7b..f1be4a5cb6151c1a34284e0497836a61b16554fc 100644 --- a/mysql-test/r/subselect_no_opts.result +++ b/mysql-test/r/subselect_no_opts.result @@ -1896,7 +1896,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1)))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -4450,7 +4450,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`))) +Note 1003 select 2 AS `2` from `test`.`t1` where exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6960,7 +6960,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7242,6 +7242,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_no_scache.result b/mysql-test/r/subselect_no_scache.result index b9a59bf3952c65d6215fbe0a6cc38ab494ceea00..6f96ce52e4bb858793f83c5ad251dda799f4ebf6 100644 --- a/mysql-test/r/subselect_no_scache.result +++ b/mysql-test/r/subselect_no_scache.result @@ -1899,7 +1899,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1)))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -4458,7 +4458,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`))) +Note 1003 select 2 AS `2` from `test`.`t1` where exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6975,7 +6975,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7257,6 +7257,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_no_semijoin.result b/mysql-test/r/subselect_no_semijoin.result index f1df85fed6e016f546c16658766d3af1bf6af353..40a969a793c1375f2adbbdb5657c78720d549d68 100644 --- a/mysql-test/r/subselect_no_semijoin.result +++ b/mysql-test/r/subselect_no_semijoin.result @@ -1896,7 +1896,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index Warnings: Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null)))))) +Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not((1,<`test`.`tt`.`id`>(exists(select `test`.`t1`.`id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null) limit 1))))) insert into t1 (id, text) values (1000, 'text1000'), (1001, 'text1001'); create table t2 (id int not null, text varchar(20) not null default '', primary key (id)); insert into t2 (id, text) values (1, 'text1'), (2, 'text2'), (3, 'text3'), (4, 'text4'), (5, 'text5'), (6, 'text6'), (7, 'text7'), (8, 'text8'), (9, 'text9'), (10, 'text10'), (11, 'text1'), (12, 'text2'), (13, 'text3'), (14, 'text4'), (15, 'text5'), (16, 'text6'), (17, 'text7'), (18, 'text8'), (19, 'text9'), (20, 'text10'),(21, 'text1'), (22, 'text2'), (23, 'text3'), (24, 'text4'), (25, 'text5'), (26, 'text6'), (27, 'text7'), (28, 'text8'), (29, 'text9'), (30, 'text10'), (31, 'text1'), (32, 'text2'), (33, 'text3'), (34, 'text4'), (35, 'text5'), (36, 'text6'), (37, 'text7'), (38, 'text8'), (39, 'text9'), (40, 'text10'), (41, 'text1'), (42, 'text2'), (43, 'text3'), (44, 'text4'), (45, 'text5'), (46, 'text6'), (47, 'text7'), (48, 'text8'), (49, 'text9'), (50, 'text10'); @@ -4450,7 +4450,7 @@ NULL UNION RESULT ALL NULL NULL NULL NULL NULL NULL Warnings: Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1 Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1 -Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)))) +Note 1003 select 2 AS `2` from `test`.`t1` where <`test`.`t1`.`a`>(exists((select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) union (select 1 from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`)) limit 1)) DROP TABLE t1,t2; create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); @@ -6960,7 +6960,7 @@ WHERE SLEEP(0.1) OR c < 'p' OR b = ( SELECT MIN(b) FROM t2 ); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY t1 system NULL NULL NULL NULL 1 1 PRIMARY t2 ALL b NULL NULL NULL 2 Using where -1 PRIMARY t3 ref d d 5 test.t2.b 2 Using where; Using index +1 PRIMARY t3 ref d d 5 test.t2.b 2 Using index 3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away set @tmp_mdev410=@@global.userstat; set global userstat=on; @@ -7242,6 +7242,37 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away drop table t1,t2; +# +# MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +# +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +a +explain select * from t10 where exists (select * from t12 order by a limit 0); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Zero limit +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; +set @l=1; +execute stmt1 using @l; +a +1 +2 +3 +set @l=2; +execute stmt1 using @l; +a +1 +2 +3 +set @l=0; +execute stmt1 using @l; +a +deallocate prepare stmt1; +drop table t10, t12; End of 5.5 tests # End of 10.0 tests # diff --git a/mysql-test/r/subselect_sj.result b/mysql-test/r/subselect_sj.result index 6d36950eaa80d5b2411f3677ac1fd7b14be7c137..87f76f849602ca1b2e7b97c6bf760f49e81c91ad 100644 --- a/mysql-test/r/subselect_sj.result +++ b/mysql-test/r/subselect_sj.result @@ -3189,6 +3189,7 @@ drop table t1,t2,t3; # # MDEV-18896: IN subquery in WHERE of a table-less query used for INSERT # +set @@optimizer_switch= @subselect_sj_tmp; create table t1 (a1 varchar(25)); create table t2 (a2 varchar(25)) ; insert into t1 select 'xxx' from dual where 'xxx' in (select a2 from t2); diff --git a/mysql-test/r/subselect_sj_jcl6.result b/mysql-test/r/subselect_sj_jcl6.result index a9c849370edad15bb373947b5f3447f9233977f8..fc1d2ef5201ebf86be2e5be7103a2782fa69c9b3 100644 --- a/mysql-test/r/subselect_sj_jcl6.result +++ b/mysql-test/r/subselect_sj_jcl6.result @@ -3203,6 +3203,7 @@ drop table t1,t2,t3; # # MDEV-18896: IN subquery in WHERE of a table-less query used for INSERT # +set @@optimizer_switch= @subselect_sj_tmp; create table t1 (a1 varchar(25)); create table t2 (a2 varchar(25)) ; insert into t1 select 'xxx' from dual where 'xxx' in (select a2 from t2); diff --git a/mysql-test/r/subselect_sj_mat.result b/mysql-test/r/subselect_sj_mat.result index 3cb3750cbd65a402672ed67e03040c4e53bbde49..37f06397f242f4b4661bde847011255fd711a1da 100644 --- a/mysql-test/r/subselect_sj_mat.result +++ b/mysql-test/r/subselect_sj_mat.result @@ -2291,7 +2291,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 3 MATERIALIZED t3 ALL NULL NULL NULL NULL 8 100.00 Warnings: Note 1276 Field or reference 'test.t1.f1' of SELECT #2 was resolved in SELECT #1 -Note 1003 select `test`.`t1`.`f1` AS `f1` from `test`.`t1` where <`test`.`t1`.`f1`>(exists(select 1 from `test`.`t2` semi join (`test`.`t3`) join `test`.`t3` where ((`test`.`t3`.`i3` = `test`.`t2`.`i2`) and (`test`.`t1`.`f1` = `test`.`t3`.`f3`)))) +Note 1003 select `test`.`t1`.`f1` AS `f1` from `test`.`t1` where <`test`.`t1`.`f1`>(exists(select 1 from `test`.`t2` semi join (`test`.`t3`) join `test`.`t3` where ((`test`.`t3`.`i3` = `test`.`t2`.`i2`) and (`test`.`t1`.`f1` = `test`.`t3`.`f3`)) limit 1)) # this checks the result set above set optimizer_switch= 'materialization=off,semijoin=off'; SELECT * FROM t1 @@ -2524,6 +2524,95 @@ SELECT 1 FROM t1 where t1.id IN (SELECT v1.i1 from v1); 1 drop table t1,t2; drop view v1; +# +# MDEV-19580: function invocation in the left part of IN subquery +# +create table t1 (id int, a varchar(50), b int); +insert into t1 values +(1,'mrs',2), (2,'joe',2), (3,'paul',1), (4,'art',1); +create table t2 (id int, a varchar(50), x int); +insert into t2 values +(1,'grand',1),(2,'average',1),(3,'serf',0); +create table t3 (d1 date, d2 date, t1_id int, t2_id int ); +insert into t3 values +('1972-01-01','1988-12-31',3,1), ('1972-01-01','1988-12-31',4,1), +('1972-01-01','1988-12-31',1,2), ('1972-01-01','1988-12-31',2,3); +create table t4 ( id int, a varchar(50) ); +insert into t4 values +(1,'songwriter'),(2,'song character'); +create function f1(who int, dt date) returns int +deterministic +begin +declare result int; +select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; +return result; +end$$ +create function f2(who int, dt date) returns int +begin +declare result int; +select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; +return result; +end$$ +# Deterministic function in left part of IN subquery: semi-join is OK +select * from t1 +left join t4 on t1.b = t4.id +where f1(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a +3 paul 1 1 songwriter +4 art 1 1 songwriter +1 mrs 2 2 song character +explain extended select * from t1 +left join t4 on t1.b = t4.id +where f1(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +2 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f1`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +# Non-deterministic function in left part of IN subq: semi-join is OK +select * from t1 +left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a +3 paul 1 1 songwriter +4 art 1 1 songwriter +1 mrs 2 2 song character +explain extended select * from t1 +left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +2 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +Warnings: +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f2`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +select t1.*, t4.*, +(select max(t4.id) from t4 where t4.id=t1.b and sleep(0) = 0) as s +from t1 left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id a b id a s +3 paul 1 1 songwriter 1 +4 art 1 1 songwriter 1 +1 mrs 2 2 song character 2 +explain extended select t1.*, t4.*, +(select max(t4.id) from t4 where t4.id=t1.b and sleep(0) = 0) as s +from t1 left join t4 on t1.b = t4.id +where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00 +1 PRIMARY eq_ref distinct_key distinct_key 4 func 1 100.00 Using where +1 PRIMARY t4 ALL NULL NULL NULL NULL 2 100.00 Using where; Using join buffer (flat, BNL join) +3 MATERIALIZED t2 ALL NULL NULL NULL NULL 3 100.00 Using where +2 DEPENDENT SUBQUERY t4 ALL NULL NULL NULL NULL 2 100.00 Using where +Warnings: +Note 1276 Field or reference 'test.t1.b' of SELECT #2 was resolved in SELECT #1 +Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t4`.`id` AS `id`,`test`.`t4`.`a` AS `a`,(select max(`test`.`t4`.`id`) from `test`.`t4` where ((`test`.`t4`.`id` = `test`.`t1`.`b`) and (sleep(0) = 0))) AS `s` from `test`.`t1` semi join (`test`.`t2`) left join `test`.`t4` on((`test`.`t4`.`id` = `test`.`t1`.`b`)) where ((`test`.`t2`.`x` = 1) and (`f2`(`test`.`t1`.`id`,'1980-01-01') = `test`.`t2`.`id`)) +drop function f1; +drop function f2; +drop table t1,t2,t3,t4; # End of 5.5 tests # # MDEV-7220: Materialization strategy is not used for REPLACE ... SELECT diff --git a/mysql-test/r/type_datetime.result b/mysql-test/r/type_datetime.result index bf09ec8d0eb42bac2b013bb023bd058836067905..292c92422de298ff29c6b1ea3500afca558b638d 100644 --- a/mysql-test/r/type_datetime.result +++ b/mysql-test/r/type_datetime.result @@ -1146,5 +1146,15 @@ a 00:01:00 DROP TABLE t1; # +# MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY +# +CREATE TABLE t1 (i INT, d DATETIME); +INSERT INTO t1 VALUES (3,NULL),(3,'1976-12-14 13:21:07'),(NULL,'1981-09-24 01:04:47'); +SELECT ExtractValue('foo','bar'), i, MIN(d) FROM t1 GROUP BY i; +ExtractValue('foo','bar') i MIN(d) + NULL 1981-09-24 01:04:47 + 3 1976-12-14 13:21:07 +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result index a0f4b34af8b6f0d191a4ad25f016a04b5b729da7..d73ef7c0ee4a4f2f6207914279e601ade95275fc 100644 --- a/mysql-test/r/view.result +++ b/mysql-test/r/view.result @@ -5765,6 +5765,21 @@ t37, t38, t39, t40, t41, t42, t43, t44, t45, t46, t47, t48, t49, t50, t51, t52, t53, t54, t55, t56, t57, t58, t59,t60; drop view v60; +# +# MDEV-15572: view.test, server crash with --big-tables=1 +# +set @save_big_tables=@@big_tables; +set big_tables=ON; +CREATE TABLE t1 ( f1 int , f2 int , f3 int , f4 int); +CREATE TABLE t2 ( f1 int , f2 int , f3 int , f4 int); +CREATE VIEW v1 AS +SELECT t2.f1, t1.f2, t2.f3, t2.f4 FROM (t1 JOIN t2); +REPLACE INTO v1 (f1, f2, f3, f4) +SELECT f1, f2, f3, f4 FROM t1; +ERROR HY000: Can not modify more than one base table through a join view 'test.v1' +drop view v1; +drop table t1, t2; +set big_tables=@save_big_tables; # ----------------------------------------------------------------- # -- End of 5.5 tests. # ----------------------------------------------------------------- diff --git a/mysql-test/r/view_alias.result b/mysql-test/r/view_alias.result index e07b40dba13b2c916deeefc200915b0530619a44..cd91fc7849ef4a0cd1aef15beed2614eee420a51 100644 --- a/mysql-test/r/view_alias.result +++ b/mysql-test/r/view_alias.result @@ -90,23 +90,23 @@ CREATE TABLE t2 LIKE t1; # Test alias in subquery CREATE VIEW v1 AS SELECT a FROM t1 WHERE EXISTS (SELECT 1 FROM t2 AS b WHERE b.a = 0); DROP VIEW v1; -CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select 1 from `test`.`t2` `b` where (`b`.`a` = 0)); +CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select 1 from `test`.`t2` `b` where (`b`.`a` = 0) limit 1); DROP VIEW v1; # Test column alias in subquery CREATE VIEW v1 AS SELECT a FROM t1 WHERE EXISTS (SELECT a AS alias FROM t1 GROUP BY alias); SHOW CREATE VIEW v1; View Create View character_set_client collation_connection -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where exists(select `t1`.`a` AS `alias` from `t1` group by `t1`.`a`) latin1 latin1_swedish_ci +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where exists(select `t1`.`a` AS `alias` from `t1` group by `t1`.`a` limit 1) latin1 latin1_swedish_ci DROP VIEW v1; -CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select `test`.`t1`.`a` AS `alias` from `test`.`t1` group by `test`.`t1`.`a`); +CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select `test`.`t1`.`a` AS `alias` from `test`.`t1` group by `test`.`t1`.`a` limit 1); DROP VIEW v1; # Alias as the expression column name. CREATE VIEW v1 AS SELECT a FROM t1 WHERE EXISTS (SELECT ' a ' AS alias FROM t1 GROUP BY alias); SHOW CREATE VIEW v1; View Create View character_set_client collation_connection -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where exists(select ' a ' AS `alias` from `t1` group by ' a ') latin1 latin1_swedish_ci +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where exists(select ' a ' AS `alias` from `t1` group by ' a ' limit 1) latin1 latin1_swedish_ci DROP VIEW v1; -CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select ' a ' AS `alias` from `test`.`t1` group by ' a '); +CREATE VIEW v1 AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where exists(select ' a ' AS `alias` from `test`.`t1` group by ' a ' limit 1); DROP VIEW v1; DROP TABLE t1, t2; create view v1 as select interval(55,10) as my_col; diff --git a/mysql-test/std_data/checkDBI_DBD-mysql.pl b/mysql-test/std_data/checkDBI_DBD-mysql.pl index d62d2f8bfc03a5f9c47af5fd127affb119994dc9..328a7ad774f3a65ed725abec406af4b3bb8cb1d0 100755 --- a/mysql-test/std_data/checkDBI_DBD-mysql.pl +++ b/mysql-test/std_data/checkDBI_DBD-mysql.pl @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ################################################################################ diff --git a/mysql-test/std_data/latin1.xml b/mysql-test/std_data/latin1.xml index fd5197254e237182f0116c3dc19f0f581a0c7350..6e89ad772c50ff1dd634d1692d5590c389f253f3 100644 --- a/mysql-test/std_data/latin1.xml +++ b/mysql-test/std_data/latin1.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/mysql-test/suite/binlog/r/binlog_mysqlbinlog_stop_never.result b/mysql-test/suite/binlog/r/binlog_mysqlbinlog_stop_never.result new file mode 100644 index 0000000000000000000000000000000000000000..e94f17b9489285474af036a27a7e35ee1988defe --- /dev/null +++ b/mysql-test/suite/binlog/r/binlog_mysqlbinlog_stop_never.result @@ -0,0 +1,16 @@ +RESET MASTER; +include/stop_dump_threads.inc +# Step-1: Execute some dummy statements. +CREATE TABLE t1(i int); +INSERT INTO t1 values (1); +# Step-2: Disable binary log temporarily and drop the table 't1'. +set @@SESSION.SQL_LOG_BIN = 0; +DROP TABLE t1; +set @@SESSION.SQL_LOG_BIN = 1; +# Step-3: Execute MYSQL_BINLOG with --stop-never and source it to mysql client. +# Step-4: Wait till dump thread transfer is completed. +# Step-5: Check that the data is there. +# Step-6: Cleanup +# kill the dump thread serving the mysqlbinlog --stop-never process +include/stop_dump_threads.inc +DROP TABLE t1; diff --git a/mysql-test/suite/binlog/r/binlog_parallel_replication_marks_row.result b/mysql-test/suite/binlog/r/binlog_parallel_replication_marks_row.result index e9a744a748eeab5338a862834c832018c274f431..1dafeee47e2c58f65d4102534e9cf79f7850f615 100644 --- a/mysql-test/suite/binlog/r/binlog_parallel_replication_marks_row.result +++ b/mysql-test/suite/binlog/r/binlog_parallel_replication_marks_row.result @@ -89,6 +89,4 @@ BEGIN # server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number # # server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F COMMIT/*!*/; -# server id 1 end_log_pos # GTID #-#-# ddl -DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t5` DROP TABLE t1; diff --git a/mysql-test/suite/binlog/r/binlog_row_drop_tmp_tbl.result b/mysql-test/suite/binlog/r/binlog_row_drop_tmp_tbl.result index dce2cc1408c24ae6188a3e089680137da8b4de61..3d97817161e0ff933891a37c2ad1a71e84403b82 100644 --- a/mysql-test/suite/binlog/r/binlog_row_drop_tmp_tbl.result +++ b/mysql-test/suite/binlog/r/binlog_row_drop_tmp_tbl.result @@ -30,15 +30,9 @@ master-bin.000001 # Query # # CREATE DATABASE `drop-temp+table-test` master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TABLE t(c1 int) master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS `t` /* generated by server */ master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS `tmp2`,`t` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `shortn2`,`table:name`,`shortn1` DROP DATABASE `drop-temp+table-test`; RESET MASTER; CREATE TABLE t1 ( i text ); @@ -56,7 +50,32 @@ master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.t1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F master-bin.000001 # Query # # COMMIT -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1` RESET MASTER; DROP TABLE t1; +# +# BUG#28642318: POINT IN TIME RECOVERY USING MYSQLBINLOG BROKEN +# WITH TEMPORARY TABLE -> ERRORS +# Test case for DELETE query. +RESET MASTER; +# Set up. +SET @save_binlog_format= @@session.binlog_format; +SET @@session.binlog_format=STATEMENT; +CREATE TABLE t1 (a INT) ENGINE=INNODB; +SET @@session.binlog_format=STATEMENT; +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; +DELETE d1, d2 FROM t1 AS d1, t1 AS d2 WHERE d1.a<>d2.a; +DROP TABLE t1; +# DELETE query fails with table re-open error without patch. +# Clean up. +DROP TABLE IF EXISTS t1; +DROP TABLE IF EXISTS t1; +RESET MASTER; +# Test case for DROP query. +CREATE TABLE t1 (a INT) ENGINE=INNODB; +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; +DROP TABLE t1; +DROP TABLE t1; +# DROP table query fails with unknown table error without patch. +# Clean up +SET @@session.binlog_format= @save_binlog_format; +RESET MASTER; diff --git a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result index f8f4fa5ec31cecbcc4f89b78aa6257e257b526d9..37018da86a01f569ee89f4fa3df25fdefa2ef2b3 100644 --- a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result +++ b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result @@ -303,8 +303,6 @@ master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `test`; create table t2 (n int) engine=innodb -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t1`,`ti` do release_lock("lock1"); drop table t0,t2; set autocommit=0; diff --git a/mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result b/mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result index 127df219b02a79b2b148054410c3ce6d1dc4a912..b13ffea86db351b7cab0247b227b4b8d4ee57ec3 100644 --- a/mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result +++ b/mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result @@ -46,12 +46,8 @@ master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TABLE t(c1 int) master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp` /* generated by server */ master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp1` /* generated by server */ master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE `tmp3` /* generated by server */ master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `drop-temp+table-test`.`tmp2` /* generated by server */ @@ -84,3 +80,30 @@ master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1` RESET MASTER; DROP TABLE t1; +# +# BUG#28642318: POINT IN TIME RECOVERY USING MYSQLBINLOG BROKEN +# WITH TEMPORARY TABLE -> ERRORS +# Test case for DELETE query. +RESET MASTER; +# Set up. +SET @save_binlog_format= @@session.binlog_format; +SET @@session.binlog_format=STATEMENT; +CREATE TABLE t1 (a INT) ENGINE=INNODB; +SET @@session.binlog_format=STATEMENT; +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; +DELETE d1, d2 FROM t1 AS d1, t1 AS d2 WHERE d1.a<>d2.a; +DROP TABLE t1; +# DELETE query fails with table re-open error without patch. +# Clean up. +DROP TABLE IF EXISTS t1; +DROP TABLE IF EXISTS t1; +RESET MASTER; +# Test case for DROP query. +CREATE TABLE t1 (a INT) ENGINE=INNODB; +CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; +DROP TABLE t1; +DROP TABLE t1; +# DROP table query fails with unknown table error without patch. +# Clean up +SET @@session.binlog_format= @save_binlog_format; +RESET MASTER; diff --git a/mysql-test/suite/binlog/t/binlog_mysqlbinlog_stop_never.test b/mysql-test/suite/binlog/t/binlog_mysqlbinlog_stop_never.test new file mode 100644 index 0000000000000000000000000000000000000000..d73e453ce96fe41d6519a8f4fea116ef36f0ede1 --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_mysqlbinlog_stop_never.test @@ -0,0 +1,66 @@ +# ==== Purpose ==== +# +# Test verifies that continuous streaming of binary log content using the +# "mysqlbinlog --stop-never" option and sourcing it to mysql client works +# fine. +# +# ==== Implementation ==== +# +# Steps: +# 1 - Create a table on a server on which binary log is enabled and insert +# a row. +# 2 - Disable the binary log on the server and drop the table. +# 3 - Capture the binary log output using "mysqlbinlog --stop_never" option +# and source it to mysql client. +# 4 - Query the PROCESSLIST table to ensure that the dump thread which is +# serving "stop_never" option has read entire binlog. +# 5 - Verify that the table is populated on the server. +# 6 - Cleanup. +# +# ==== References ==== +# +# MDEV-11154: Write_on_release_cache(log_event.cc) function will not write +# "COMMIT", if use "mysqlbinlog ... | mysql ..." + +--source include/not_windows.inc + +# Test is not specific to any binlog format. Hence Running only for 'row'. +--source include/have_binlog_format_row.inc + +# binlog file name is needed in the test. To use master-bin.000001, +# RESET MASTER is needed. +RESET MASTER; +# kill the dump threads if there any dump threads (may be from previous test) +--source include/stop_dump_threads.inc + +--echo # Step-1: Execute some dummy statements. +CREATE TABLE t1(i int); +INSERT INTO t1 values (1); + +--echo # Step-2: Disable binary log temporarily and drop the table 't1'. +set @@SESSION.SQL_LOG_BIN = 0; +DROP TABLE t1; +set @@SESSION.SQL_LOG_BIN = 1; + +--echo # Step-3: Execute MYSQL_BINLOG with --stop-never and source it to mysql client. +--write_file $MYSQL_TMP_DIR/mysqlbinlog_stop_never.sh +(`$MYSQL_BINLOG --read-from-remote-server --stop-never --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 | $MYSQL --user=root --protocol=tcp --host=127.0.0.1 --port=$MASTER_MYPORT`) < /dev/null > /dev/null 2>&1 & +EOF +--exec /bin/bash $MYSQL_TMP_DIR/mysqlbinlog_stop_never.sh + +--echo # Step-4: Wait till dump thread transfer is completed. +let $wait_condition= SELECT id from information_schema.processlist where processlist.command like '%Binlog%' and state like '%Master has sent%'; +--source include/wait_condition.inc + +--echo # Step-5: Check that the data is there. +let $count= 1; +let $table= test.t1; +source include/wait_until_rows_count.inc; + +--echo # Step-6: Cleanup +--echo # kill the dump thread serving the mysqlbinlog --stop-never process +--source include/stop_dump_threads.inc + +DROP TABLE t1; +--remove_file $MYSQL_TMP_DIR/mysqlbinlog_stop_never.sh + diff --git a/mysql-test/suite/encryption/r/innodb_lotoftables.result b/mysql-test/suite/encryption/r/innodb_lotoftables.result deleted file mode 100644 index c8b6e1a368e06191963df1acf87a388a14676098..0000000000000000000000000000000000000000 --- a/mysql-test/suite/encryption/r/innodb_lotoftables.result +++ /dev/null @@ -1,1235 +0,0 @@ -SET GLOBAL innodb_fast_shutdown=0; -SET GLOBAL innodb_file_format = `Barracuda`; -SET GLOBAL innodb_file_per_table = ON; -SHOW VARIABLES LIKE 'innodb_encrypt%'; -Variable_name Value -innodb_encrypt_log OFF -innodb_encrypt_tables OFF -innodb_encryption_rotate_key_age 1 -innodb_encryption_rotation_iops 100 -innodb_encryption_threads 0 -create database innodb_encrypted_1; -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -set autocommit=0; -set autocommit=1; -commit work; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -# should be empty -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE NAME LIKE 'innodb_encrypted%'; -NAME -create database innodb_encrypted_2; -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -set autocommit=0; -commit work; -set autocommit=1; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -# should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -# should contain 0 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -create database innodb_encrypted_3; -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -set autocommit=0; -commit work; -set autocommit=1; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -# should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -# should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_3/t_1 -innodb_encrypted_3/t_10 -innodb_encrypted_3/t_100 -innodb_encrypted_3/t_11 -innodb_encrypted_3/t_12 -innodb_encrypted_3/t_13 -innodb_encrypted_3/t_14 -innodb_encrypted_3/t_15 -innodb_encrypted_3/t_16 -innodb_encrypted_3/t_17 -innodb_encrypted_3/t_18 -innodb_encrypted_3/t_19 -innodb_encrypted_3/t_2 -innodb_encrypted_3/t_20 -innodb_encrypted_3/t_21 -innodb_encrypted_3/t_22 -innodb_encrypted_3/t_23 -innodb_encrypted_3/t_24 -innodb_encrypted_3/t_25 -innodb_encrypted_3/t_26 -innodb_encrypted_3/t_27 -innodb_encrypted_3/t_28 -innodb_encrypted_3/t_29 -innodb_encrypted_3/t_3 -innodb_encrypted_3/t_30 -innodb_encrypted_3/t_31 -innodb_encrypted_3/t_32 -innodb_encrypted_3/t_33 -innodb_encrypted_3/t_34 -innodb_encrypted_3/t_35 -innodb_encrypted_3/t_36 -innodb_encrypted_3/t_37 -innodb_encrypted_3/t_38 -innodb_encrypted_3/t_39 -innodb_encrypted_3/t_4 -innodb_encrypted_3/t_40 -innodb_encrypted_3/t_41 -innodb_encrypted_3/t_42 -innodb_encrypted_3/t_43 -innodb_encrypted_3/t_44 -innodb_encrypted_3/t_45 -innodb_encrypted_3/t_46 -innodb_encrypted_3/t_47 -innodb_encrypted_3/t_48 -innodb_encrypted_3/t_49 -innodb_encrypted_3/t_5 -innodb_encrypted_3/t_50 -innodb_encrypted_3/t_51 -innodb_encrypted_3/t_52 -innodb_encrypted_3/t_53 -innodb_encrypted_3/t_54 -innodb_encrypted_3/t_55 -innodb_encrypted_3/t_56 -innodb_encrypted_3/t_57 -innodb_encrypted_3/t_58 -innodb_encrypted_3/t_59 -innodb_encrypted_3/t_6 -innodb_encrypted_3/t_60 -innodb_encrypted_3/t_61 -innodb_encrypted_3/t_62 -innodb_encrypted_3/t_63 -innodb_encrypted_3/t_64 -innodb_encrypted_3/t_65 -innodb_encrypted_3/t_66 -innodb_encrypted_3/t_67 -innodb_encrypted_3/t_68 -innodb_encrypted_3/t_69 -innodb_encrypted_3/t_7 -innodb_encrypted_3/t_70 -innodb_encrypted_3/t_71 -innodb_encrypted_3/t_72 -innodb_encrypted_3/t_73 -innodb_encrypted_3/t_74 -innodb_encrypted_3/t_75 -innodb_encrypted_3/t_76 -innodb_encrypted_3/t_77 -innodb_encrypted_3/t_78 -innodb_encrypted_3/t_79 -innodb_encrypted_3/t_8 -innodb_encrypted_3/t_80 -innodb_encrypted_3/t_81 -innodb_encrypted_3/t_82 -innodb_encrypted_3/t_83 -innodb_encrypted_3/t_84 -innodb_encrypted_3/t_85 -innodb_encrypted_3/t_86 -innodb_encrypted_3/t_87 -innodb_encrypted_3/t_88 -innodb_encrypted_3/t_89 -innodb_encrypted_3/t_9 -innodb_encrypted_3/t_90 -innodb_encrypted_3/t_91 -innodb_encrypted_3/t_92 -innodb_encrypted_3/t_93 -innodb_encrypted_3/t_94 -innodb_encrypted_3/t_95 -innodb_encrypted_3/t_96 -innodb_encrypted_3/t_97 -innodb_encrypted_3/t_98 -innodb_encrypted_3/t_99 -use test; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_3/t_1 -innodb_encrypted_3/t_10 -innodb_encrypted_3/t_100 -innodb_encrypted_3/t_11 -innodb_encrypted_3/t_12 -innodb_encrypted_3/t_13 -innodb_encrypted_3/t_14 -innodb_encrypted_3/t_15 -innodb_encrypted_3/t_16 -innodb_encrypted_3/t_17 -innodb_encrypted_3/t_18 -innodb_encrypted_3/t_19 -innodb_encrypted_3/t_2 -innodb_encrypted_3/t_20 -innodb_encrypted_3/t_21 -innodb_encrypted_3/t_22 -innodb_encrypted_3/t_23 -innodb_encrypted_3/t_24 -innodb_encrypted_3/t_25 -innodb_encrypted_3/t_26 -innodb_encrypted_3/t_27 -innodb_encrypted_3/t_28 -innodb_encrypted_3/t_29 -innodb_encrypted_3/t_3 -innodb_encrypted_3/t_30 -innodb_encrypted_3/t_31 -innodb_encrypted_3/t_32 -innodb_encrypted_3/t_33 -innodb_encrypted_3/t_34 -innodb_encrypted_3/t_35 -innodb_encrypted_3/t_36 -innodb_encrypted_3/t_37 -innodb_encrypted_3/t_38 -innodb_encrypted_3/t_39 -innodb_encrypted_3/t_4 -innodb_encrypted_3/t_40 -innodb_encrypted_3/t_41 -innodb_encrypted_3/t_42 -innodb_encrypted_3/t_43 -innodb_encrypted_3/t_44 -innodb_encrypted_3/t_45 -innodb_encrypted_3/t_46 -innodb_encrypted_3/t_47 -innodb_encrypted_3/t_48 -innodb_encrypted_3/t_49 -innodb_encrypted_3/t_5 -innodb_encrypted_3/t_50 -innodb_encrypted_3/t_51 -innodb_encrypted_3/t_52 -innodb_encrypted_3/t_53 -innodb_encrypted_3/t_54 -innodb_encrypted_3/t_55 -innodb_encrypted_3/t_56 -innodb_encrypted_3/t_57 -innodb_encrypted_3/t_58 -innodb_encrypted_3/t_59 -innodb_encrypted_3/t_6 -innodb_encrypted_3/t_60 -innodb_encrypted_3/t_61 -innodb_encrypted_3/t_62 -innodb_encrypted_3/t_63 -innodb_encrypted_3/t_64 -innodb_encrypted_3/t_65 -innodb_encrypted_3/t_66 -innodb_encrypted_3/t_67 -innodb_encrypted_3/t_68 -innodb_encrypted_3/t_69 -innodb_encrypted_3/t_7 -innodb_encrypted_3/t_70 -innodb_encrypted_3/t_71 -innodb_encrypted_3/t_72 -innodb_encrypted_3/t_73 -innodb_encrypted_3/t_74 -innodb_encrypted_3/t_75 -innodb_encrypted_3/t_76 -innodb_encrypted_3/t_77 -innodb_encrypted_3/t_78 -innodb_encrypted_3/t_79 -innodb_encrypted_3/t_8 -innodb_encrypted_3/t_80 -innodb_encrypted_3/t_81 -innodb_encrypted_3/t_82 -innodb_encrypted_3/t_83 -innodb_encrypted_3/t_84 -innodb_encrypted_3/t_85 -innodb_encrypted_3/t_86 -innodb_encrypted_3/t_87 -innodb_encrypted_3/t_88 -innodb_encrypted_3/t_89 -innodb_encrypted_3/t_9 -innodb_encrypted_3/t_90 -innodb_encrypted_3/t_91 -innodb_encrypted_3/t_92 -innodb_encrypted_3/t_93 -innodb_encrypted_3/t_94 -innodb_encrypted_3/t_95 -innodb_encrypted_3/t_96 -innodb_encrypted_3/t_97 -innodb_encrypted_3/t_98 -innodb_encrypted_3/t_99 -SET GLOBAL innodb_encrypt_tables = on; -SET GLOBAL innodb_encryption_threads=4; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_3/t_1 -innodb_encrypted_3/t_10 -innodb_encrypted_3/t_100 -innodb_encrypted_3/t_11 -innodb_encrypted_3/t_12 -innodb_encrypted_3/t_13 -innodb_encrypted_3/t_14 -innodb_encrypted_3/t_15 -innodb_encrypted_3/t_16 -innodb_encrypted_3/t_17 -innodb_encrypted_3/t_18 -innodb_encrypted_3/t_19 -innodb_encrypted_3/t_2 -innodb_encrypted_3/t_20 -innodb_encrypted_3/t_21 -innodb_encrypted_3/t_22 -innodb_encrypted_3/t_23 -innodb_encrypted_3/t_24 -innodb_encrypted_3/t_25 -innodb_encrypted_3/t_26 -innodb_encrypted_3/t_27 -innodb_encrypted_3/t_28 -innodb_encrypted_3/t_29 -innodb_encrypted_3/t_3 -innodb_encrypted_3/t_30 -innodb_encrypted_3/t_31 -innodb_encrypted_3/t_32 -innodb_encrypted_3/t_33 -innodb_encrypted_3/t_34 -innodb_encrypted_3/t_35 -innodb_encrypted_3/t_36 -innodb_encrypted_3/t_37 -innodb_encrypted_3/t_38 -innodb_encrypted_3/t_39 -innodb_encrypted_3/t_4 -innodb_encrypted_3/t_40 -innodb_encrypted_3/t_41 -innodb_encrypted_3/t_42 -innodb_encrypted_3/t_43 -innodb_encrypted_3/t_44 -innodb_encrypted_3/t_45 -innodb_encrypted_3/t_46 -innodb_encrypted_3/t_47 -innodb_encrypted_3/t_48 -innodb_encrypted_3/t_49 -innodb_encrypted_3/t_5 -innodb_encrypted_3/t_50 -innodb_encrypted_3/t_51 -innodb_encrypted_3/t_52 -innodb_encrypted_3/t_53 -innodb_encrypted_3/t_54 -innodb_encrypted_3/t_55 -innodb_encrypted_3/t_56 -innodb_encrypted_3/t_57 -innodb_encrypted_3/t_58 -innodb_encrypted_3/t_59 -innodb_encrypted_3/t_6 -innodb_encrypted_3/t_60 -innodb_encrypted_3/t_61 -innodb_encrypted_3/t_62 -innodb_encrypted_3/t_63 -innodb_encrypted_3/t_64 -innodb_encrypted_3/t_65 -innodb_encrypted_3/t_66 -innodb_encrypted_3/t_67 -innodb_encrypted_3/t_68 -innodb_encrypted_3/t_69 -innodb_encrypted_3/t_7 -innodb_encrypted_3/t_70 -innodb_encrypted_3/t_71 -innodb_encrypted_3/t_72 -innodb_encrypted_3/t_73 -innodb_encrypted_3/t_74 -innodb_encrypted_3/t_75 -innodb_encrypted_3/t_76 -innodb_encrypted_3/t_77 -innodb_encrypted_3/t_78 -innodb_encrypted_3/t_79 -innodb_encrypted_3/t_8 -innodb_encrypted_3/t_80 -innodb_encrypted_3/t_81 -innodb_encrypted_3/t_82 -innodb_encrypted_3/t_83 -innodb_encrypted_3/t_84 -innodb_encrypted_3/t_85 -innodb_encrypted_3/t_86 -innodb_encrypted_3/t_87 -innodb_encrypted_3/t_88 -innodb_encrypted_3/t_89 -innodb_encrypted_3/t_9 -innodb_encrypted_3/t_90 -innodb_encrypted_3/t_91 -innodb_encrypted_3/t_92 -innodb_encrypted_3/t_93 -innodb_encrypted_3/t_94 -innodb_encrypted_3/t_95 -innodb_encrypted_3/t_96 -innodb_encrypted_3/t_97 -innodb_encrypted_3/t_98 -innodb_encrypted_3/t_99 -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -# Success! -# Restart mysqld --innodb_encrypt_tables=0 --innodb_encryption_threads=0 -# Restart Success! -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -use test; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 3 -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 103 -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 103 -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 203 -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 203 -show status like 'innodb_pages0_read%'; -Variable_name Value -Innodb_pages0_read 303 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_3/t_1 -innodb_encrypted_3/t_10 -innodb_encrypted_3/t_100 -innodb_encrypted_3/t_11 -innodb_encrypted_3/t_12 -innodb_encrypted_3/t_13 -innodb_encrypted_3/t_14 -innodb_encrypted_3/t_15 -innodb_encrypted_3/t_16 -innodb_encrypted_3/t_17 -innodb_encrypted_3/t_18 -innodb_encrypted_3/t_19 -innodb_encrypted_3/t_2 -innodb_encrypted_3/t_20 -innodb_encrypted_3/t_21 -innodb_encrypted_3/t_22 -innodb_encrypted_3/t_23 -innodb_encrypted_3/t_24 -innodb_encrypted_3/t_25 -innodb_encrypted_3/t_26 -innodb_encrypted_3/t_27 -innodb_encrypted_3/t_28 -innodb_encrypted_3/t_29 -innodb_encrypted_3/t_3 -innodb_encrypted_3/t_30 -innodb_encrypted_3/t_31 -innodb_encrypted_3/t_32 -innodb_encrypted_3/t_33 -innodb_encrypted_3/t_34 -innodb_encrypted_3/t_35 -innodb_encrypted_3/t_36 -innodb_encrypted_3/t_37 -innodb_encrypted_3/t_38 -innodb_encrypted_3/t_39 -innodb_encrypted_3/t_4 -innodb_encrypted_3/t_40 -innodb_encrypted_3/t_41 -innodb_encrypted_3/t_42 -innodb_encrypted_3/t_43 -innodb_encrypted_3/t_44 -innodb_encrypted_3/t_45 -innodb_encrypted_3/t_46 -innodb_encrypted_3/t_47 -innodb_encrypted_3/t_48 -innodb_encrypted_3/t_49 -innodb_encrypted_3/t_5 -innodb_encrypted_3/t_50 -innodb_encrypted_3/t_51 -innodb_encrypted_3/t_52 -innodb_encrypted_3/t_53 -innodb_encrypted_3/t_54 -innodb_encrypted_3/t_55 -innodb_encrypted_3/t_56 -innodb_encrypted_3/t_57 -innodb_encrypted_3/t_58 -innodb_encrypted_3/t_59 -innodb_encrypted_3/t_6 -innodb_encrypted_3/t_60 -innodb_encrypted_3/t_61 -innodb_encrypted_3/t_62 -innodb_encrypted_3/t_63 -innodb_encrypted_3/t_64 -innodb_encrypted_3/t_65 -innodb_encrypted_3/t_66 -innodb_encrypted_3/t_67 -innodb_encrypted_3/t_68 -innodb_encrypted_3/t_69 -innodb_encrypted_3/t_7 -innodb_encrypted_3/t_70 -innodb_encrypted_3/t_71 -innodb_encrypted_3/t_72 -innodb_encrypted_3/t_73 -innodb_encrypted_3/t_74 -innodb_encrypted_3/t_75 -innodb_encrypted_3/t_76 -innodb_encrypted_3/t_77 -innodb_encrypted_3/t_78 -innodb_encrypted_3/t_79 -innodb_encrypted_3/t_8 -innodb_encrypted_3/t_80 -innodb_encrypted_3/t_81 -innodb_encrypted_3/t_82 -innodb_encrypted_3/t_83 -innodb_encrypted_3/t_84 -innodb_encrypted_3/t_85 -innodb_encrypted_3/t_86 -innodb_encrypted_3/t_87 -innodb_encrypted_3/t_88 -innodb_encrypted_3/t_89 -innodb_encrypted_3/t_9 -innodb_encrypted_3/t_90 -innodb_encrypted_3/t_91 -innodb_encrypted_3/t_92 -innodb_encrypted_3/t_93 -innodb_encrypted_3/t_94 -innodb_encrypted_3/t_95 -innodb_encrypted_3/t_96 -innodb_encrypted_3/t_97 -innodb_encrypted_3/t_98 -innodb_encrypted_3/t_99 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -SET GLOBAL innodb_encrypt_tables = off; -SET GLOBAL innodb_encryption_threads=4; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_2/t_1 -innodb_encrypted_2/t_10 -innodb_encrypted_2/t_100 -innodb_encrypted_2/t_11 -innodb_encrypted_2/t_12 -innodb_encrypted_2/t_13 -innodb_encrypted_2/t_14 -innodb_encrypted_2/t_15 -innodb_encrypted_2/t_16 -innodb_encrypted_2/t_17 -innodb_encrypted_2/t_18 -innodb_encrypted_2/t_19 -innodb_encrypted_2/t_2 -innodb_encrypted_2/t_20 -innodb_encrypted_2/t_21 -innodb_encrypted_2/t_22 -innodb_encrypted_2/t_23 -innodb_encrypted_2/t_24 -innodb_encrypted_2/t_25 -innodb_encrypted_2/t_26 -innodb_encrypted_2/t_27 -innodb_encrypted_2/t_28 -innodb_encrypted_2/t_29 -innodb_encrypted_2/t_3 -innodb_encrypted_2/t_30 -innodb_encrypted_2/t_31 -innodb_encrypted_2/t_32 -innodb_encrypted_2/t_33 -innodb_encrypted_2/t_34 -innodb_encrypted_2/t_35 -innodb_encrypted_2/t_36 -innodb_encrypted_2/t_37 -innodb_encrypted_2/t_38 -innodb_encrypted_2/t_39 -innodb_encrypted_2/t_4 -innodb_encrypted_2/t_40 -innodb_encrypted_2/t_41 -innodb_encrypted_2/t_42 -innodb_encrypted_2/t_43 -innodb_encrypted_2/t_44 -innodb_encrypted_2/t_45 -innodb_encrypted_2/t_46 -innodb_encrypted_2/t_47 -innodb_encrypted_2/t_48 -innodb_encrypted_2/t_49 -innodb_encrypted_2/t_5 -innodb_encrypted_2/t_50 -innodb_encrypted_2/t_51 -innodb_encrypted_2/t_52 -innodb_encrypted_2/t_53 -innodb_encrypted_2/t_54 -innodb_encrypted_2/t_55 -innodb_encrypted_2/t_56 -innodb_encrypted_2/t_57 -innodb_encrypted_2/t_58 -innodb_encrypted_2/t_59 -innodb_encrypted_2/t_6 -innodb_encrypted_2/t_60 -innodb_encrypted_2/t_61 -innodb_encrypted_2/t_62 -innodb_encrypted_2/t_63 -innodb_encrypted_2/t_64 -innodb_encrypted_2/t_65 -innodb_encrypted_2/t_66 -innodb_encrypted_2/t_67 -innodb_encrypted_2/t_68 -innodb_encrypted_2/t_69 -innodb_encrypted_2/t_7 -innodb_encrypted_2/t_70 -innodb_encrypted_2/t_71 -innodb_encrypted_2/t_72 -innodb_encrypted_2/t_73 -innodb_encrypted_2/t_74 -innodb_encrypted_2/t_75 -innodb_encrypted_2/t_76 -innodb_encrypted_2/t_77 -innodb_encrypted_2/t_78 -innodb_encrypted_2/t_79 -innodb_encrypted_2/t_8 -innodb_encrypted_2/t_80 -innodb_encrypted_2/t_81 -innodb_encrypted_2/t_82 -innodb_encrypted_2/t_83 -innodb_encrypted_2/t_84 -innodb_encrypted_2/t_85 -innodb_encrypted_2/t_86 -innodb_encrypted_2/t_87 -innodb_encrypted_2/t_88 -innodb_encrypted_2/t_89 -innodb_encrypted_2/t_9 -innodb_encrypted_2/t_90 -innodb_encrypted_2/t_91 -innodb_encrypted_2/t_92 -innodb_encrypted_2/t_93 -innodb_encrypted_2/t_94 -innodb_encrypted_2/t_95 -innodb_encrypted_2/t_96 -innodb_encrypted_2/t_97 -innodb_encrypted_2/t_98 -innodb_encrypted_2/t_99 -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -NAME -innodb_encrypted_3/t_1 -innodb_encrypted_3/t_10 -innodb_encrypted_3/t_100 -innodb_encrypted_3/t_11 -innodb_encrypted_3/t_12 -innodb_encrypted_3/t_13 -innodb_encrypted_3/t_14 -innodb_encrypted_3/t_15 -innodb_encrypted_3/t_16 -innodb_encrypted_3/t_17 -innodb_encrypted_3/t_18 -innodb_encrypted_3/t_19 -innodb_encrypted_3/t_2 -innodb_encrypted_3/t_20 -innodb_encrypted_3/t_21 -innodb_encrypted_3/t_22 -innodb_encrypted_3/t_23 -innodb_encrypted_3/t_24 -innodb_encrypted_3/t_25 -innodb_encrypted_3/t_26 -innodb_encrypted_3/t_27 -innodb_encrypted_3/t_28 -innodb_encrypted_3/t_29 -innodb_encrypted_3/t_3 -innodb_encrypted_3/t_30 -innodb_encrypted_3/t_31 -innodb_encrypted_3/t_32 -innodb_encrypted_3/t_33 -innodb_encrypted_3/t_34 -innodb_encrypted_3/t_35 -innodb_encrypted_3/t_36 -innodb_encrypted_3/t_37 -innodb_encrypted_3/t_38 -innodb_encrypted_3/t_39 -innodb_encrypted_3/t_4 -innodb_encrypted_3/t_40 -innodb_encrypted_3/t_41 -innodb_encrypted_3/t_42 -innodb_encrypted_3/t_43 -innodb_encrypted_3/t_44 -innodb_encrypted_3/t_45 -innodb_encrypted_3/t_46 -innodb_encrypted_3/t_47 -innodb_encrypted_3/t_48 -innodb_encrypted_3/t_49 -innodb_encrypted_3/t_5 -innodb_encrypted_3/t_50 -innodb_encrypted_3/t_51 -innodb_encrypted_3/t_52 -innodb_encrypted_3/t_53 -innodb_encrypted_3/t_54 -innodb_encrypted_3/t_55 -innodb_encrypted_3/t_56 -innodb_encrypted_3/t_57 -innodb_encrypted_3/t_58 -innodb_encrypted_3/t_59 -innodb_encrypted_3/t_6 -innodb_encrypted_3/t_60 -innodb_encrypted_3/t_61 -innodb_encrypted_3/t_62 -innodb_encrypted_3/t_63 -innodb_encrypted_3/t_64 -innodb_encrypted_3/t_65 -innodb_encrypted_3/t_66 -innodb_encrypted_3/t_67 -innodb_encrypted_3/t_68 -innodb_encrypted_3/t_69 -innodb_encrypted_3/t_7 -innodb_encrypted_3/t_70 -innodb_encrypted_3/t_71 -innodb_encrypted_3/t_72 -innodb_encrypted_3/t_73 -innodb_encrypted_3/t_74 -innodb_encrypted_3/t_75 -innodb_encrypted_3/t_76 -innodb_encrypted_3/t_77 -innodb_encrypted_3/t_78 -innodb_encrypted_3/t_79 -innodb_encrypted_3/t_8 -innodb_encrypted_3/t_80 -innodb_encrypted_3/t_81 -innodb_encrypted_3/t_82 -innodb_encrypted_3/t_83 -innodb_encrypted_3/t_84 -innodb_encrypted_3/t_85 -innodb_encrypted_3/t_86 -innodb_encrypted_3/t_87 -innodb_encrypted_3/t_88 -innodb_encrypted_3/t_89 -innodb_encrypted_3/t_9 -innodb_encrypted_3/t_90 -innodb_encrypted_3/t_91 -innodb_encrypted_3/t_92 -innodb_encrypted_3/t_93 -innodb_encrypted_3/t_94 -innodb_encrypted_3/t_95 -innodb_encrypted_3/t_96 -innodb_encrypted_3/t_97 -innodb_encrypted_3/t_98 -innodb_encrypted_3/t_99 -use test; -drop database innodb_encrypted_1; -drop database innodb_encrypted_2; -drop database innodb_encrypted_3; diff --git a/mysql-test/suite/encryption/t/innodb_lotoftables.opt b/mysql-test/suite/encryption/t/innodb_lotoftables.opt deleted file mode 100644 index ffb5a2957f89e14fb6b30e909ca75801b34eb900..0000000000000000000000000000000000000000 --- a/mysql-test/suite/encryption/t/innodb_lotoftables.opt +++ /dev/null @@ -1,3 +0,0 @@ ---innodb-tablespaces-encryption ---innodb-encrypt-tables=off ---innodb-encryption-threads=0 diff --git a/mysql-test/suite/encryption/t/innodb_lotoftables.test b/mysql-test/suite/encryption/t/innodb_lotoftables.test deleted file mode 100644 index e204de3bb7bb705b5bad2b07066a9b1c72eabbcc..0000000000000000000000000000000000000000 --- a/mysql-test/suite/encryption/t/innodb_lotoftables.test +++ /dev/null @@ -1,240 +0,0 @@ --- source include/have_innodb.inc --- source include/have_example_key_management_plugin.inc --- source include/big_test.inc - -# embedded does not support restart --- source include/not_embedded.inc - ---disable_query_log -let $innodb_file_format_orig = `SELECT @@innodb_file_format`; -let $innodb_file_per_table_orig = `SELECT @@innodb_file_per_table`; -let $innodb_encryption_threads_orig = `SELECT @@global.innodb_encryption_threads`; ---enable_query_log - -# empty the change buffer and the undo logs to avoid extra reads -SET GLOBAL innodb_fast_shutdown=0; ---source include/restart_mysqld.inc - -SET GLOBAL innodb_file_format = `Barracuda`; -SET GLOBAL innodb_file_per_table = ON; - -SHOW VARIABLES LIKE 'innodb_encrypt%'; - -# -# This will create 100 tables where that could be -# encrypted an unencrypt -# -create database innodb_encrypted_1; -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; -set autocommit=0; -let $tables = 100; - ---disable_query_log -while ($tables) -{ - eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb - stats_persistent=0; - commit; - let $rows = 100; - while($rows) - { - eval insert into t_$tables values ($rows, substring(MD5(RAND()), -64)); - dec $rows; - } - commit; - dec $tables; -} ---enable_query_log - -set autocommit=1; -commit work; -show status like 'innodb_pages0_read%'; -# -# Verify -# ---echo # should be empty -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE NAME LIKE 'innodb_encrypted%'; - -# -# This will create 100 tables that are encrypted always -# -create database innodb_encrypted_2; -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; -set autocommit=0; - ---disable_query_log -let $tables = 100; -while ($tables) -{ - eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb - stats_persistent=0 encrypted=yes; - commit; - let $rows = 100; - while($rows) - { - eval insert into t_$tables values ($rows, substring(MD5(RAND()), -64)); - dec $rows; - } - commit; - dec $tables; -} ---enable_query_log - -commit work; -set autocommit=1; -show status like 'innodb_pages0_read%'; -# -# Verify -# ---echo # should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; ---echo # should contain 0 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; - -# -# This will create 100 tables that are not encrypted -# -create database innodb_encrypted_3; -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; -set autocommit=0; - ---disable_query_log -let $tables = 100; -while ($tables) -{ - eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb - stats_persistent=0 encrypted=no; - commit; - let $rows = 100; - while($rows) - { - eval insert into t_$tables values ($rows, substring(MD5(RAND()), -64)); - dec $rows; - } - commit; - dec $tables; -} ---enable_query_log - -commit work; -set autocommit=1; -show status like 'innodb_pages0_read%'; -# -# Verify -# ---echo # should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; ---echo # should contain 100 tables -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; - -use test; -show status like 'innodb_pages0_read%'; - -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; - -SET GLOBAL innodb_encrypt_tables = on; -SET GLOBAL innodb_encryption_threads=4; - ---let $wait_timeout= 600 ---let $wait_condition=SELECT COUNT(*) = 100 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0; ---source include/wait_condition.inc - -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -show status like 'innodb_pages0_read%'; - ---echo # Success! ---echo # Restart mysqld --innodb_encrypt_tables=0 --innodb_encryption_threads=0 --- let $restart_parameters=--innodb_encrypt_tables=0 --innodb_encryption_threads=0 --- source include/restart_mysqld.inc - ---echo # Restart Success! -show status like 'innodb_pages0_read%'; - -show status like 'innodb_pages0_read%'; -use test; -show status like 'innodb_pages0_read%'; -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; - -use innodb_encrypted_1; -show status like 'innodb_pages0_read%'; ---disable_result_log ---disable_query_log -let $tables = 100; -while ($tables) -{ - eval select * from t_$tables; - dec $tables; -} ---enable_query_log ---enable_result_log - -show status like 'innodb_pages0_read%'; - -use innodb_encrypted_2; -show status like 'innodb_pages0_read%'; - ---disable_result_log ---disable_query_log -let $tables = 100; -while ($tables) -{ - eval select * from t_$tables; - dec $tables; -} ---enable_query_log ---enable_result_log - -show status like 'innodb_pages0_read%'; - -use innodb_encrypted_3; -show status like 'innodb_pages0_read%'; ---disable_result_log ---disable_query_log -let $tables = 100; -while ($tables) -{ - eval select * from t_$tables; - dec $tables; -} ---enable_query_log ---enable_result_log - -show status like 'innodb_pages0_read%'; - -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; - -SET GLOBAL innodb_encrypt_tables = off; -SET GLOBAL innodb_encryption_threads=4; - ---let $wait_timeout= 600 ---let $wait_condition=SELECT COUNT(*) = 100 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0; ---source include/wait_condition.inc - - -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; -SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%' ORDER BY NAME; - -# -# Cleanup -# -use test; -drop database innodb_encrypted_1; -drop database innodb_encrypted_2; -drop database innodb_encrypted_3; - ---disable_query_log -EVAL SET GLOBAL innodb_file_per_table = $innodb_file_per_table_orig; -EVAL SET GLOBAL innodb_file_format = $innodb_file_format_orig; -EVAL SET GLOBAL innodb_encryption_threads = $innodb_encryption_threads_orig; ---enable_query_log diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index 2c0ef3f8e20c25aaf19fe3319b828aea6831426b..a9458f599d430f9d1dd84f67cca8b87d5d538ec4 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -15,7 +15,6 @@ MW-328A : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-328B : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-328C : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-329 : wsrep_local_replays not stable -MW-336 : MDEV-13549 Timeout in wait_condition.inc for PROCESSLIST MW-416 : MDEV-13549 Galera test failures MW-44 : MDEV-15809 Test failure on galera.MW-44 galera_account_management : MariaDB 10.0 does not support ALTER USER @@ -27,7 +26,6 @@ galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_ galera_binlog_stmt_autoinc : MDEV-13549 auto_increment mismatch galera_flush : MariaDB does not have global.thread_statistics galera_gcache_recover_manytrx : MDEV-18834 Galera test failure -galera_gcs_fc_limit : MDEV-17061 Timeout in wait_condition.inc for PROCESSLIST galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress: MDEV-15236 fails when trying to read transfer status galera_kill_applier : race condition at the start of the test diff --git a/mysql-test/suite/galera/r/MW-336.result b/mysql-test/suite/galera/r/MW-336.result index 81e8eae0eb3a1a963d7c800ce0578e2a4a36dde2..9a5bc88a48f77222779535e9317fd38eeffcbb6c 100644 --- a/mysql-test/suite/galera/r/MW-336.result +++ b/mysql-test/suite/galera/r/MW-336.result @@ -3,29 +3,29 @@ INSERT INTO t1 values(0); SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 1; # Wait 10 slave threads to start 1 -# Generate 12 replication events +SET SESSION wsrep_sync_wait=15; +# Generate 100 replication events +SET SESSION wsrep_sync_wait=15; SELECT COUNT(*) FROM t1; COUNT(*) -13 +101 # Wait 9 slave threads to exit 1 SET GLOBAL wsrep_slave_threads = 10; # Wait 10 slave threads to start 2 SET GLOBAL wsrep_slave_threads = 20; # Wait 20 slave threads to start 3 SET GLOBAL wsrep_slave_threads = 1; -# Generate 40 replication events +# Generate 100 replication events SELECT COUNT(*) FROM t1; COUNT(*) -53 +201 # Wait 10 slave threads to exit 3 SET GLOBAL wsrep_slave_threads = 10; -SET GLOBAL wsrep_slave_threads = 0; -Warnings: -Warning 1292 Truncated incorrect wsrep_slave_threads value: '0' +SET GLOBAL wsrep_slave_threads = 1; # Wait 10 slave threads to start 3 -# Generate 12 replication events +# Generate 100 replication events SELECT COUNT(*) FROM t1; COUNT(*) -65 +301 # Wait 10 slave threads to exit 4 DROP TABLE t1; diff --git a/mysql-test/suite/galera/r/galera_as_slave_gtid.result b/mysql-test/suite/galera/r/galera_as_slave_gtid.result index fbac7b1b6b58a3c7fe759f1f26e1ee34b710667b..db2bbf9ddafafdc6dce28d1d4d439249c8d7f470 100644 --- a/mysql-test/suite/galera/r/galera_as_slave_gtid.result +++ b/mysql-test/suite/galera/r/galera_as_slave_gtid.result @@ -14,3 +14,7 @@ gtid_binlog_state_equal DROP TABLE t1; STOP SLAVE; RESET SLAVE ALL; +#cleanup +reset master; +reset master; +reset master; diff --git a/mysql-test/suite/galera/r/galera_gcs_fc_limit.result b/mysql-test/suite/galera/r/galera_gcs_fc_limit.result index 9463b5f8eef8d166d85e21ef1428ed7f615abe6b..f3f417058f7182d00689d69291a0fe6e8cd86a5f 100644 --- a/mysql-test/suite/galera/r/galera_gcs_fc_limit.result +++ b/mysql-test/suite/galera/r/galera_gcs_fc_limit.result @@ -1,17 +1,20 @@ -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); -SELECT COUNT(*) = 1 FROM t1; -COUNT(*) = 1 +CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,B INTEGER) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1,1); +SET SESSION wsrep_sync_wait=15; +SELECT COUNT(*) FROM t1; +COUNT(*) 1 SET GLOBAL wsrep_provider_options = 'gcs.fc_limit=1'; LOCK TABLE t1 WRITE; -INSERT INTO t1 VALUES (2); -INSERT INTO t1 VALUES (3); -INSERT INTO t1 VALUES (4); -INSERT INTO t1 VALUES (5); +FLUSH STATUS; +INSERT INTO t1 VALUES (2,2); +INSERT INTO t1 VALUES (3,3); +INSERT INTO t1 VALUES (4,4); +INSERT INTO t1(B) SELECT B FROM t1; +# In node_1 either insert or commit should be stuck UNLOCK TABLES; -INSERT INTO t1 VALUES (6); -SELECT COUNT(*) = 6 FROM t1; -COUNT(*) = 6 -1 +INSERT INTO t1 VALUES (NULL,6); +SELECT COUNT(*) FROM t1; +COUNT(*) +9 DROP TABLE t1; diff --git a/mysql-test/suite/galera/r/galera_log_bin.result b/mysql-test/suite/galera/r/galera_log_bin.result index 4772f3473757a38a47b69ca9f01aef3fce107cd0..ee6dfb5d900bd451ec427dbde1c6bd1e7a5ab8cc 100644 --- a/mysql-test/suite/galera/r/galera_log_bin.result +++ b/mysql-test/suite/galera/r/galera_log_bin.result @@ -1,3 +1,5 @@ +reset master; +reset master; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB; INSERT INTO t1 VALUES (1); CREATE TABLE t2 (id INT) ENGINE=InnoDB; @@ -10,50 +12,51 @@ SELECT COUNT(*) = 2 FROM t2; COUNT(*) = 2 1 ALTER TABLE t1 ADD COLUMN f2 INTEGER; -FLUSH LOGS; -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' LIMIT 4,18; +include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000002 # Gtid # # GTID 0-1-1 -mysqld-bin.000002 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-2 -mysqld-bin.000002 # Table_map # # table_id: # (test.t1) -mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000002 # Gtid # # GTID 0-1-3 -mysqld-bin.000002 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB -mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-4 -mysqld-bin.000002 # Table_map # # table_id: # (test.t2) -mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-5 -mysqld-bin.000002 # Table_map # # table_id: # (test.t2) -mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000002 # Gtid # # GTID 0-1-6 -mysqld-bin.000002 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t1) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t2) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t2) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1'; COUNT(*) = 2 1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' LIMIT 3,18; +include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000003 # Gtid # # GTID 0-1-1 -mysqld-bin.000003 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-2 -mysqld-bin.000003 # Table_map # # table_id: # (test.t1) -mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000003 # Gtid # # GTID 0-1-3 -mysqld-bin.000003 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB -mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-4 -mysqld-bin.000003 # Table_map # # table_id: # (test.t2) -mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-5 -mysqld-bin.000003 # Table_map # # table_id: # (test.t2) -mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F -mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ -mysqld-bin.000003 # Gtid # # GTID 0-1-6 -mysqld-bin.000003 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t1) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t2) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-# +mysqld-bin.000001 # Table_map # # table_id: # (test.t2) +mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F +mysqld-bin.000001 # Xid # # COMMIT /* XID */ +mysqld-bin.000001 # Gtid # # GTID #-#-# +mysqld-bin.000001 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER DROP TABLE t1; DROP TABLE t2; +#cleanup RESET MASTER; +reset master; diff --git a/mysql-test/suite/galera/r/galera_log_output_csv.result b/mysql-test/suite/galera/r/galera_log_output_csv.result index cdb5ee49f3e7333e01ee762b2b6b98a74437d69b..24b7dc2b35d249b3925bbf26f48faf2074390538 100644 --- a/mysql-test/suite/galera/r/galera_log_output_csv.result +++ b/mysql-test/suite/galera/r/galera_log_output_csv.result @@ -16,3 +16,5 @@ SELECT COUNT(*) = 1 FROM mysql.slow_log WHERE sql_text = 'SELECT 2 = 2 FROM t1'; COUNT(*) = 1 1 DROP TABLE t1; +truncate table mysql.slow_log; +truncate table mysql.general_log; diff --git a/mysql-test/suite/galera/r/galera_parallel_autoinc_largetrx.result b/mysql-test/suite/galera/r/galera_parallel_autoinc_largetrx.result index 1f163f4366ce7d055607039774b390adf416da4d..12c9889a477c196666689092a537803f27838c82 100644 --- a/mysql-test/suite/galera/r/galera_parallel_autoinc_largetrx.result +++ b/mysql-test/suite/galera/r/galera_parallel_autoinc_largetrx.result @@ -1,18 +1,16 @@ -CREATE TABLE ten (f1 INTEGER); +CREATE TABLE ten (f1 INTEGER) Engine=InnoDB; INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoDB; +set session wsrep_sync_wait=15; SET GLOBAL wsrep_slave_threads = 4; INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;; INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;; INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;; -SELECT COUNT(*) = 30000 FROM t1; -COUNT(*) = 30000 -1 -SELECT COUNT(DISTINCT f1) = 30000 FROM t1; -COUNT(DISTINCT f1) = 30000 -1 -SELECT COUNT(*) = 5 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user'; -COUNT(*) = 5 -1 +SELECT COUNT(*) FROM t1; +COUNT(*) +30000 +SELECT COUNT(DISTINCT f1) FROM t1; +COUNT(DISTINCT f1) +30000 DROP TABLE t1; DROP TABLE ten; diff --git a/mysql-test/suite/galera/r/galera_parallel_autoinc_manytrx.result b/mysql-test/suite/galera/r/galera_parallel_autoinc_manytrx.result index 05ce328228a25008733f758dfc0144b770a6a213..020ecfeec580157e6b9211ffbf69182cde2e7f75 100644 --- a/mysql-test/suite/galera/r/galera_parallel_autoinc_manytrx.result +++ b/mysql-test/suite/galera/r/galera_parallel_autoinc_manytrx.result @@ -1,15 +1,24 @@ -CREATE TABLE ten (f1 INTEGER); +CREATE TABLE ten (f1 INTEGER) Engine=InnoDB; INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoDB; +set session wsrep_sync_wait=15; SET GLOBAL wsrep_slave_threads = 4; -SELECT COUNT(*) = 20000 FROM t1; -COUNT(*) = 20000 -1 -SELECT COUNT(DISTINCT f1) = 20000 FROM t1; -COUNT(DISTINCT f1) = 20000 -1 -SELECT COUNT(*) = 4 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE 'committed%'; -COUNT(*) = 4 -1 +CREATE PROCEDURE p1 (repeat_count int) +BEGIN +DECLARE current_num int; +SET current_num = 0; +WHILE current_num < repeat_count do +INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1; +COMMIT; +SET current_num = current_num + 1; +END WHILE; +END| +SELECT COUNT(*) FROM t1; +COUNT(*) +40000 +SELECT COUNT(DISTINCT f1) FROM t1; +COUNT(DISTINCT f1) +40000 DROP TABLE t1; DROP TABLE ten; +DROP PROCEDURE p1; diff --git a/mysql-test/suite/galera/r/galera_var_gtid_domain_id.result b/mysql-test/suite/galera/r/galera_var_gtid_domain_id.result index 8e84236d5bf5fbb827aa6fab3ef303d687376a69..0a9b699a8e19a708ff5c72131f92384961046a8a 100644 --- a/mysql-test/suite/galera/r/galera_var_gtid_domain_id.result +++ b/mysql-test/suite/galera/r/galera_var_gtid_domain_id.result @@ -71,4 +71,7 @@ wsrep_gtid_domain_id 9999 wsrep_gtid_mode 1 # On node_1 DROP TABLE t1, t2; +#cleanup +reset master; +reset master; # End of test diff --git a/mysql-test/suite/galera/r/mdev_10518.result b/mysql-test/suite/galera/r/mdev_10518.result index b2a3e0a65efd0ec4f93277effd1dda504b3a595e..f176c224ce934fec0bf6086a47979e4f8d9ad400 100644 --- a/mysql-test/suite/galera/r/mdev_10518.result +++ b/mysql-test/suite/galera/r/mdev_10518.result @@ -71,4 +71,7 @@ wsrep_gtid_domain_id 4294967295 wsrep_gtid_mode 1 # On node_1 DROP TABLE t1, t2; +#cleanup +reset master; +reset master; # End of test diff --git a/mysql-test/suite/galera/t/MW-336.test b/mysql-test/suite/galera/t/MW-336.test index 749ffe671be85c167e2d0acd9527c028329ac5cb..15e0a38a0b76db918dbb66b5141e411ab0e98966 100644 --- a/mysql-test/suite/galera/t/MW-336.test +++ b/mysql-test/suite/galera/t/MW-336.test @@ -19,13 +19,14 @@ SET GLOBAL wsrep_slave_threads = 1; --source include/wait_condition.inc --connection node_2 +SET SESSION wsrep_sync_wait=15; # Wait until inserts are replicated --let $wait_condition = SELECT COUNT(*) = 1 FROM t1; --source include/wait_condition.inc ---echo # Generate 12 replication events +--echo # Generate 100 replication events --disable_query_log --disable_result_log ---let $count = 12 +--let $count = 100 while ($count) { INSERT INTO t1 VALUES (1); @@ -35,9 +36,7 @@ while ($count) --enable_query_log --connection node_1 -# Wait until inserts are replicated ---let $wait_condition = SELECT COUNT(*) = 13 FROM t1; ---source include/wait_condition.inc +SET SESSION wsrep_sync_wait=15; SELECT COUNT(*) FROM t1; @@ -61,10 +60,10 @@ SET GLOBAL wsrep_slave_threads = 20; SET GLOBAL wsrep_slave_threads = 1; --connection node_2 ---echo # Generate 40 replication events +--echo # Generate 100 replication events --disable_query_log --disable_result_log ---let $count = 40 +--let $count = 100 while ($count) { INSERT INTO t1 VALUES (1); @@ -74,11 +73,6 @@ while ($count) --enable_result_log --connection node_1 - -# Wait until inserts are replicated ---let $wait_condition = SELECT COUNT(*) = 53 FROM t1; ---source include/wait_condition.inc - SELECT COUNT(*) FROM t1; --echo # Wait 10 slave threads to exit 3 @@ -87,7 +81,7 @@ SELECT COUNT(*) FROM t1; --source include/wait_condition.inc SET GLOBAL wsrep_slave_threads = 10; -SET GLOBAL wsrep_slave_threads = 0; +SET GLOBAL wsrep_slave_threads = 1; --echo # Wait 10 slave threads to start 3 --let $wait_timeout=600 @@ -95,10 +89,10 @@ SET GLOBAL wsrep_slave_threads = 0; --source include/wait_condition.inc --connection node_2 ---echo # Generate 12 replication events +--echo # Generate 100 replication events --disable_query_log --disable_result_log ---let $count = 12 +--let $count = 100 while ($count) { INSERT INTO t1 VALUES (1); @@ -108,10 +102,6 @@ while ($count) --enable_query_log --connection node_1 -# Wait until inserts are replicated ---let $wait_condition = SELECT COUNT(*) = 65 FROM t1; ---source include/wait_condition.inc - SELECT COUNT(*) FROM t1; --echo # Wait 10 slave threads to exit 4 diff --git a/mysql-test/suite/galera/t/galera_as_slave_gtid.test b/mysql-test/suite/galera/t/galera_as_slave_gtid.test index c2331a2ae0535f17dc79453a6fa5c8b1d9926169..a3c43540916a97886ffea338de9a29b096a002f1 100644 --- a/mysql-test/suite/galera/t/galera_as_slave_gtid.test +++ b/mysql-test/suite/galera/t/galera_as_slave_gtid.test @@ -65,3 +65,13 @@ DROP TABLE t1; STOP SLAVE; RESET SLAVE ALL; + +--echo #cleanup +--connection node_1 +reset master; + +--connection node_2 +reset master; + +--connection node_3 +reset master; diff --git a/mysql-test/suite/galera/t/galera_gcs_fc_limit.test b/mysql-test/suite/galera/t/galera_gcs_fc_limit.test index 61576a3931634155d8df1d03dc5c7b40dff2c43b..e0626bd8946fd2b5d1c79d222e66eab80db1f411 100644 --- a/mysql-test/suite/galera/t/galera_gcs_fc_limit.test +++ b/mysql-test/suite/galera/t/galera_gcs_fc_limit.test @@ -5,12 +5,12 @@ --source include/galera_cluster.inc --source include/have_innodb.inc -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); +CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,B INTEGER) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1,1); --connection node_2 -SELECT COUNT(*) = 1 FROM t1; ---sleep 1 +SET SESSION wsrep_sync_wait=15; +SELECT COUNT(*) FROM t1; --let $wsrep_provider_options_orig = `SELECT @@wsrep_provider_options` SET GLOBAL wsrep_provider_options = 'gcs.fc_limit=1'; @@ -19,24 +19,22 @@ SET GLOBAL wsrep_provider_options = 'gcs.fc_limit=1'; LOCK TABLE t1 WRITE; --connection node_1 ---sleep 1 -INSERT INTO t1 VALUES (2); ---sleep 2 -INSERT INTO t1 VALUES (3); ---sleep 2 -INSERT INTO t1 VALUES (4); ---sleep 2 +FLUSH STATUS; +INSERT INTO t1 VALUES (2,2); +INSERT INTO t1 VALUES (3,3); +INSERT INTO t1 VALUES (4,4); # This query will hang because flow control will kick in --send -INSERT INTO t1 VALUES (5); ---sleep 2 +INSERT INTO t1(B) SELECT B FROM t1; --let $galera_connection_name = node_1a --let $galera_server_number = 1 --source include/galera_connect.inc --connection node_1a ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE = 'query end' AND INFO = 'INSERT INTO t1 VALUES (5)'; + +--echo # In node_1 either insert or commit should be stuck +--let $wait_condition = SELECT VARIABLE_VALUE > 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_flow_control_paused'; --source include/wait_condition.inc --connection node_2 @@ -46,11 +44,11 @@ UNLOCK TABLES; --connection node_1 --reap -INSERT INTO t1 VALUES (6); +INSERT INTO t1 VALUES (NULL,6); --connection node_2 # Replication catches up and continues normally -SELECT COUNT(*) = 6 FROM t1; +SELECT COUNT(*) FROM t1; --disable_query_log --eval SET GLOBAL wsrep_provider_options = '$wsrep_provider_options_orig'; diff --git a/mysql-test/suite/galera/t/galera_log_bin.test b/mysql-test/suite/galera/t/galera_log_bin.test index d2d3987d711ceae856e5528a1c39161840707e51..c3d94d15194f3f0544545bdba0e89bbe795b43a6 100644 --- a/mysql-test/suite/galera/t/galera_log_bin.test +++ b/mysql-test/suite/galera/t/galera_log_bin.test @@ -1,6 +1,11 @@ --source include/galera_cluster.inc --source include/have_innodb.inc +--connection node_1 +reset master; +--connection node_2 +reset master; + # # Test Galera with --log-bin --log-slave-updates . # This way the actual MySQL binary log is used, @@ -20,20 +25,19 @@ SELECT COUNT(*) = 2 FROM t2; --connection node_1 ALTER TABLE t1 ADD COLUMN f2 INTEGER; - -FLUSH LOGS; ---replace_column 2 # 4 # 5 # ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' LIMIT 4,18; +--let $MASTER_MYPORT=$NODE_MYPORT_1 +--source include/show_binlog_events.inc --connection node_2 SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1'; ---replace_column 2 # 4 # 5 # ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' LIMIT 3,18; +--let $MASTER_MYPORT=$NODE_MYPORT_2 +--source include/show_binlog_events.inc DROP TABLE t1; DROP TABLE t2; +--echo #cleanup --connection node_1 RESET MASTER; +--connection node_2 +reset master; diff --git a/mysql-test/suite/galera/t/galera_log_output_csv.test b/mysql-test/suite/galera/t/galera_log_output_csv.test index 94ae3dd61685c226df7bce3753cef2f6b91e8f2a..eeccc9531870136023276501acfb704a6a059d3c 100644 --- a/mysql-test/suite/galera/t/galera_log_output_csv.test +++ b/mysql-test/suite/galera/t/galera_log_output_csv.test @@ -22,3 +22,5 @@ SELECT COUNT(*) = 1 FROM mysql.slow_log WHERE sql_text = 'SELECT 2 = 2 FROM t1'; --connection node_1 DROP TABLE t1; +truncate table mysql.slow_log; +truncate table mysql.general_log; diff --git a/mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test b/mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test index f280e49d206481c254c60926091283f6e634f0a4..345582834622b499a42ce032c4ae1c4c3f19db30 100644 --- a/mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test +++ b/mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test @@ -12,13 +12,18 @@ --source include/galera_connect.inc --connection node_1 -CREATE TABLE ten (f1 INTEGER); +CREATE TABLE ten (f1 INTEGER) Engine=InnoDB; INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoDB; + --connection node_2 +set session wsrep_sync_wait=15; --let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads` SET GLOBAL wsrep_slave_threads = 4; +--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); +--source include/wait_condition.inc + --connection node_1 --send INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4; @@ -37,9 +42,9 @@ SET GLOBAL wsrep_slave_threads = 4; --connection node_2 --reap -SELECT COUNT(*) = 30000 FROM t1; -SELECT COUNT(DISTINCT f1) = 30000 FROM t1; -SELECT COUNT(*) = 5 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user'; +--disconnect node_1a +SELECT COUNT(*) FROM t1; +SELECT COUNT(DISTINCT f1) FROM t1; --disable_query_log --eval SET GLOBAL wsrep_slave_threads = $wsrep_slave_threads_orig; diff --git a/mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test b/mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test index 8680d62a36d801092042749f3115b38a1644d251..d04603891db7d1d05e9d663636a9deefb07401ff 100644 --- a/mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test +++ b/mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test @@ -6,43 +6,78 @@ --source include/have_innodb.inc --source include/big_test.inc -# Create a second connection to node1 so that we can run transactions concurrently +--connection node_1 +CREATE TABLE ten (f1 INTEGER) Engine=InnoDB; +INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); + +CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoDB; + +# Create few connections to node1 so that we can run transactions concurrently --let $galera_connection_name = node_1a --let $galera_server_number = 1 --source include/galera_connect.inc ---connection node_1 -CREATE TABLE ten (f1 INTEGER); -INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); +--let $galera_connection_name = node_1b +--let $galera_server_number = 1 +--source include/galera_connect.inc -CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoDB; --connection node_2 +set session wsrep_sync_wait=15; --let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads` SET GLOBAL wsrep_slave_threads = 4; +--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); +--source include/wait_condition.inc + +--connection node_1 +DELIMITER |; +CREATE PROCEDURE p1 (repeat_count int) +BEGIN + DECLARE current_num int; + SET current_num = 0; + WHILE current_num < repeat_count do + INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1; + COMMIT; + SET current_num = current_num + 1; + END WHILE; +END| +DELIMITER ;| + +--disable_query_log +send call p1(1000); + +--connection node_1a +--disable_query_log +send call p1(1000); + +--connection node_1b +--disable_query_log +send call p1(1000); + +--connection node_2 +--disable_query_log +send call p1(1000); --connection node_1 ---let $count = 1000 -while ($count) -{ - --disable_query_log - INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1; - --enable_query_log - --dec $count -} +reap; +--enable_query_log + +--connection node_1a +reap; +--enable_query_log + +--connection node_1b +reap; +--enable_query_log --connection node_2 ---let $count = 1000 -while ($count) -{ - --disable_query_log - INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1; - --enable_query_log - --dec $count -} - -SELECT COUNT(*) = 20000 FROM t1; -SELECT COUNT(DISTINCT f1) = 20000 FROM t1; -SELECT COUNT(*) = 4 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE 'committed%'; +reap; +--enable_query_log + +SELECT COUNT(*) FROM t1; +SELECT COUNT(DISTINCT f1) FROM t1; + +--disconnect node_1a +--disconnect node_1b --disable_query_log --eval SET GLOBAL wsrep_slave_threads = $wsrep_slave_threads_orig; @@ -51,4 +86,6 @@ SELECT COUNT(*) = 4 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system use --connection default DROP TABLE t1; DROP TABLE ten; +DROP PROCEDURE p1; + diff --git a/mysql-test/suite/galera/t/galera_sync_wait_show.test b/mysql-test/suite/galera/t/galera_sync_wait_show.test index 58de543303060d3eab21692f631112f4bee2ff04..79a1b6ad47904e7686a74b3e920d97c4eb795e36 100644 --- a/mysql-test/suite/galera/t/galera_sync_wait_show.test +++ b/mysql-test/suite/galera/t/galera_sync_wait_show.test @@ -63,7 +63,9 @@ DROP TABLE t1; --connection node_1 +--disable_warnings CREATE EVENT event1 ON SCHEDULE AT '2038-01-01 23:59:59' DO SELECT 1; +--enable_warnings --connection node_2 SHOW CREATE EVENT event1; diff --git a/mysql-test/suite/galera/t/galera_var_gtid_domain_id.test b/mysql-test/suite/galera/t/galera_var_gtid_domain_id.test index c4127b4f6554649277c5b108d524e4bfb9c9ff7c..015f25abf2f7cd0118a3f6fc14539038451155a9 100644 --- a/mysql-test/suite/galera/t/galera_var_gtid_domain_id.test +++ b/mysql-test/suite/galera/t/galera_var_gtid_domain_id.test @@ -48,6 +48,13 @@ source include/print_gtid.inc; # Cleanup DROP TABLE t1, t2; +--echo #cleanup +--connection node_1 +reset master; + +--connection node_2 +reset master; + --source include/galera_end.inc --echo # End of test diff --git a/mysql-test/suite/galera/t/mdev_10518.test b/mysql-test/suite/galera/t/mdev_10518.test index c4127b4f6554649277c5b108d524e4bfb9c9ff7c..015f25abf2f7cd0118a3f6fc14539038451155a9 100644 --- a/mysql-test/suite/galera/t/mdev_10518.test +++ b/mysql-test/suite/galera/t/mdev_10518.test @@ -48,6 +48,13 @@ source include/print_gtid.inc; # Cleanup DROP TABLE t1, t2; +--echo #cleanup +--connection node_1 +reset master; + +--connection node_2 +reset master; + --source include/galera_end.inc --echo # End of test diff --git a/mysql-test/suite/galera_3nodes/r/galera_evs_suspect_timeout.result b/mysql-test/suite/galera_3nodes/r/galera_evs_suspect_timeout.result index 7e0d282ec7ff266adda5489ea5ef5f4236c87867..833d045f274b4975265fb3ba83a693a0e6ad060a 100644 --- a/mysql-test/suite/galera_3nodes/r/galera_evs_suspect_timeout.result +++ b/mysql-test/suite/galera_3nodes/r/galera_evs_suspect_timeout.result @@ -1,20 +1,25 @@ SET GLOBAL wsrep_provider_options = 'evs.inactive_timeout=PT100M; evs.suspect_timeout=PT1S'; SET GLOBAL wsrep_provider_options = 'evs.inactive_timeout=PT100M; evs.suspect_timeout=PT1S'; Suspending node ... -SET SESSION wsrep_sync_wait = 0; +SET SESSION wsrep_sync_wait=0; SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; VARIABLE_VALUE = 2 1 -CREATE TABLE t1 (f1 INTEGER); +CREATE TABLE t1 (f1 INTEGER) engine=InnoDB; INSERT INTO t1 VALUES (1); -SET SESSION wsrep_sync_wait = 0; +SET SESSION wsrep_sync_wait=0; SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; VARIABLE_VALUE = 2 1 -SET SESSION wsrep_sync_wait = DEFAULT; -SELECT COUNT(*) = 1 FROM t1; -COUNT(*) = 1 +SET SESSION wsrep_sync_wait = 15; +SELECT COUNT(*) FROM t1; +COUNT(*) 1 -DROP TABLE t1; Resuming node ... -CALL mtr.add_suppression("WSREP: gcs_caused() returned -1 \\(Operation not permitted\\)"); +CALL mtr.add_suppression("WSREP: gcs_caused.*"); +CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg.*"); +SET SESSION wsrep_sync_wait = 15; +SELECT COUNT(*) FROM t1; +COUNT(*) +1 +DROP TABLE t1; diff --git a/mysql-test/suite/galera_3nodes/t/galera_evs_suspect_timeout.test b/mysql-test/suite/galera_3nodes/t/galera_evs_suspect_timeout.test index 03236a3cb9366aab2c39bd279e534e8b6efb8761..298613b35962169bcc8130c55de3568049448c1c 100644 --- a/mysql-test/suite/galera_3nodes/t/galera_evs_suspect_timeout.test +++ b/mysql-test/suite/galera_3nodes/t/galera_evs_suspect_timeout.test @@ -7,24 +7,28 @@ --source include/galera_cluster.inc --source include/have_innodb.inc +--let $galera_connection_name = node_3 +--let $galera_server_number = 3 +--source include/galera_connect.inc +--let $wsrep_cluster_address_node3 = `SELECT @@wsrep_cluster_address` + +# Save original auto_increment_offset values. +--let $node_1=node_1 +--let $node_2=node_2 +--let $node_3=node_3 +--source ../galera/include/auto_increment_offset_save.inc + --connection node_1 --let $wsrep_provider_options_node1 = `SELECT @@wsrep_provider_options` SET GLOBAL wsrep_provider_options = 'evs.inactive_timeout=PT100M; evs.suspect_timeout=PT1S'; --connection node_2 ---source include/wait_until_connected_again.inc --let $wsrep_provider_options_node2 = `SELECT @@wsrep_provider_options` SET GLOBAL wsrep_provider_options = 'evs.inactive_timeout=PT100M; evs.suspect_timeout=PT1S'; ---let $galera_connection_name = node_3 ---let $galera_server_number = 3 ---source include/galera_connect.inc ---connection node_3 ---source include/wait_until_connected_again.inc ---let $wsrep_cluster_address_node3 = `SELECT @@wsrep_cluster_address` - # Suspend node #3 +--connection node_3 --source include/galera_suspend.inc --sleep 5 @@ -32,27 +36,27 @@ SET GLOBAL wsrep_provider_options = 'evs.inactive_timeout=PT100M; evs.suspect_ti --connection node_1 --source include/wait_until_connected_again.inc -SET SESSION wsrep_sync_wait = 0; +SET SESSION wsrep_sync_wait=0; SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; --disable_query_log --eval SET GLOBAL wsrep_provider_options = '$wsrep_provider_options_node1'; --enable_query_log - --source include/wait_until_connected_again.inc -CREATE TABLE t1 (f1 INTEGER); + +CREATE TABLE t1 (f1 INTEGER) engine=InnoDB; INSERT INTO t1 VALUES (1); --connection node_2 -SET SESSION wsrep_sync_wait = 0; +--source include/wait_until_connected_again.inc +SET SESSION wsrep_sync_wait=0; SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; --disable_query_log --eval SET GLOBAL wsrep_provider_options = '$wsrep_provider_options_node2'; --enable_query_log - --source include/wait_until_connected_again.inc -SET SESSION wsrep_sync_wait = DEFAULT; -SELECT COUNT(*) = 1 FROM t1; -DROP TABLE t1; + +SET SESSION wsrep_sync_wait = 15; +SELECT COUNT(*) FROM t1; # Reconnect node #3 so that MTR's end-of-test checks can run @@ -60,9 +64,19 @@ DROP TABLE t1; --source include/galera_resume.inc --source include/wait_until_connected_again.inc -CALL mtr.add_suppression("WSREP: gcs_caused() returned -1 \\(Operation not permitted\\)"); +CALL mtr.add_suppression("WSREP: gcs_caused.*"); +CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg.*"); --disable_query_log --eval SET GLOBAL wsrep_cluster_address = '$wsrep_cluster_address_node3'; --enable_query_log --source include/wait_until_connected_again.inc + +SET SESSION wsrep_sync_wait = 15; +SELECT COUNT(*) FROM t1; + +--connection node_1 +DROP TABLE t1; +# Restore original auto_increment_offset values. +--source ../galera/include/auto_increment_offset_restore.inc + diff --git a/mysql-test/suite/innodb/disabled.def b/mysql-test/suite/innodb/disabled.def index 8cae44a3607757b41ed893c8899c3764a159589d..78bc167c5610a0ddd41f293b0c6d9dbfe72a9dcb 100644 --- a/mysql-test/suite/innodb/disabled.def +++ b/mysql-test/suite/innodb/disabled.def @@ -10,3 +10,4 @@ # ############################################################################## +check_ibd_filesize : MDEV-20094 result differences diff --git a/mysql-test/suite/innodb/include/show_i_s_tables.inc b/mysql-test/suite/innodb/include/show_i_s_tables.inc new file mode 100644 index 0000000000000000000000000000000000000000..5fe34c370c83cdb537f4a49c59003c777b543092 --- /dev/null +++ b/mysql-test/suite/innodb/include/show_i_s_tables.inc @@ -0,0 +1,19 @@ +--echo === information_schema.innodb_sys_tables and innodb_sys_tablespaces === +--disable_query_log +--replace_result #P# #p# #SP# #sp# +--replace_regex /FTS_([0-9a-f_]+)([A-Z0-9_]+)/FTS_AUX_\2/ + +SELECT t.name 'Table Name', + s.name 'Tablespace', + t.flag 'Table Flags', + t.n_cols 'Columns', + t.row_format 'Row Format', + t.zip_page_size 'Zip Size' + FROM information_schema.innodb_sys_tables t LEFT JOIN + information_schema.innodb_sys_tablespaces s + ON t.space = s.space + WHERE t.name not like 'SYS_%' + AND t.name NOT LIKE 'mysql/%' + AND t.name NOT LIKE 'sys/%' + ORDER BY t.name; +--enable_query_log diff --git a/mysql-test/suite/innodb/include/show_i_s_tablespaces.inc b/mysql-test/suite/innodb/include/show_i_s_tablespaces.inc new file mode 100644 index 0000000000000000000000000000000000000000..a3755f8657ac78941e158e04018749f694a8af1f --- /dev/null +++ b/mysql-test/suite/innodb/include/show_i_s_tablespaces.inc @@ -0,0 +1,19 @@ +# This script assumes that the caller did the following; +# LET $MYSQLD_DATADIR = `select @@datadir`; +# LET $INNODB_PAGE_SIZE = `select @@innodb_page_size`; +--echo === information_schema.innodb_sys_tablespaces and innodb_sys_datafiles === +--disable_query_log +--replace_regex /#P#/#p#/ /#SP#/#sp#/ +--replace_result ./ MYSQLD_DATADIR/ $MYSQLD_DATADIR MYSQLD_DATADIR $MYSQL_TMP_DIR MYSQL_TMP_DIR $INNODB_PAGE_SIZE DEFAULT +SELECT s.name 'Space_Name', + s.page_size 'Page_Size', + s.zip_page_size 'Zip_Size', + s.row_format 'Formats_Permitted', + d.path 'Path' + FROM information_schema.innodb_sys_tablespaces s, + information_schema.innodb_sys_datafiles d + WHERE s.space = d.space + AND s.name NOT LIKE 'mysql/%' + AND s.name NOT LIKE 'sys/%' + ORDER BY s.space; +--enable_query_log diff --git a/mysql-test/suite/innodb/r/check_ibd_filesize,32k.rdiff b/mysql-test/suite/innodb/r/check_ibd_filesize,32k.rdiff new file mode 100644 index 0000000000000000000000000000000000000000..d6828e8825640b74f2d0f358cdddf36b8c147281 --- /dev/null +++ b/mysql-test/suite/innodb/r/check_ibd_filesize,32k.rdiff @@ -0,0 +1,25 @@ +--- check_ibd_filesize.result ++++ check_ibd_filesize.result,32k +@@ -3,18 +3,12 @@ + # SPACE IN 5.7 THAN IN 5.6 + # + CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 196608 + INSERT INTO t1 SELECT * FROM seq_1_to_25000; +-# bytes: 9437184 ++# bytes: 786432 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 196608 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 2097152 +-DROP TABLE t1; +-CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) +-ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +-# bytes: 65536 +-INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 65536 ++# bytes: 786432 + DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/check_ibd_filesize,4k.rdiff b/mysql-test/suite/innodb/r/check_ibd_filesize,4k.rdiff new file mode 100644 index 0000000000000000000000000000000000000000..0aeb3ebcaee49b55bd51a5e857dcbe6c13043d19 --- /dev/null +++ b/mysql-test/suite/innodb/r/check_ibd_filesize,4k.rdiff @@ -0,0 +1,25 @@ +--- check_ibd_filesize.result ++++ check_ibd_filesize.result,4k +@@ -3,18 +3,18 @@ + # SPACE IN 5.7 THAN IN 5.6 + # + CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 24576 + INSERT INTO t1 SELECT * FROM seq_1_to_25000; + # bytes: 9437184 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 24576 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; + # bytes: 2097152 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) + ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +-# bytes: 65536 ++# bytes: 16384 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 65536 ++# bytes: 25600 + DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/check_ibd_filesize,64k.rdiff b/mysql-test/suite/innodb/r/check_ibd_filesize,64k.rdiff new file mode 100644 index 0000000000000000000000000000000000000000..410707991d15c8d0b5e532a53c349051df8ae5f1 --- /dev/null +++ b/mysql-test/suite/innodb/r/check_ibd_filesize,64k.rdiff @@ -0,0 +1,25 @@ +--- check_ibd_filesize.result ++++ check_ibd_filesize.result,64k +@@ -3,18 +3,12 @@ + # SPACE IN 5.7 THAN IN 5.6 + # + CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 393216 + INSERT INTO t1 SELECT * FROM seq_1_to_25000; +-# bytes: 9437184 ++# bytes: 983040 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 393216 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 2097152 +-DROP TABLE t1; +-CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) +-ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +-# bytes: 65536 +-INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 65536 ++# bytes: 1572864 + DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/check_ibd_filesize,8k.rdiff b/mysql-test/suite/innodb/r/check_ibd_filesize,8k.rdiff new file mode 100644 index 0000000000000000000000000000000000000000..f1d79846c2a51ddf65cec434abd37fef276f63a4 --- /dev/null +++ b/mysql-test/suite/innodb/r/check_ibd_filesize,8k.rdiff @@ -0,0 +1,25 @@ +--- check_ibd_filesize.result ++++ check_ibd_filesize.result,8k +@@ -3,18 +3,18 @@ + # SPACE IN 5.7 THAN IN 5.6 + # + CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 49152 + INSERT INTO t1 SELECT * FROM seq_1_to_25000; + # bytes: 9437184 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +-# bytes: 98304 ++# bytes: 49152 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; + # bytes: 2097152 + DROP TABLE t1; + CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) + ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +-# bytes: 65536 ++# bytes: 32768 + INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +-# bytes: 65536 ++# bytes: 32768 + DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/check_ibd_filesize.result b/mysql-test/suite/innodb/r/check_ibd_filesize.result new file mode 100644 index 0000000000000000000000000000000000000000..9465c3a3115299f4aa33f0202ca0f52d0ca730c7 --- /dev/null +++ b/mysql-test/suite/innodb/r/check_ibd_filesize.result @@ -0,0 +1,20 @@ +# +# Bug #21950389 SMALL TABLESPACES WITH BLOBS TAKE UP TO 80 TIMES MORE +# SPACE IN 5.7 THAN IN 5.6 +# +CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +# bytes: 98304 +INSERT INTO t1 SELECT * FROM seq_1_to_25000; +# bytes: 9437184 +DROP TABLE t1; +CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +# bytes: 98304 +INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +# bytes: 2097152 +DROP TABLE t1; +CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) +ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +# bytes: 65536 +INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +# bytes: 65536 +DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/create_select.result b/mysql-test/suite/innodb/r/create_select.result new file mode 100644 index 0000000000000000000000000000000000000000..35acb2e265af0cabb1d375c69baa59e644fc18bc --- /dev/null +++ b/mysql-test/suite/innodb/r/create_select.result @@ -0,0 +1,5 @@ +CREATE TABLE t1 ENGINE=InnoDB SELECT * FROM seq_1_to_100000000; +KILL QUERY @id; +ERROR 70100: Query execution was interrupted +CREATE TABLE t1 (a SERIAL) ENGINE=InnoDB; +DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/foreign-keys.result b/mysql-test/suite/innodb/r/foreign-keys.result index 68528521fb6ff600012e4910f97ad5c87919b226..10e0b1f3d7bc8223c3226c25cafda01eb0dd6fd0 100644 --- a/mysql-test/suite/innodb/r/foreign-keys.result +++ b/mysql-test/suite/innodb/r/foreign-keys.result @@ -100,3 +100,27 @@ CREATE TABLE t2 (b INT, KEY(b)) ENGINE=InnoDB; INSERT INTO t2 VALUES(2); ALTER TABLE t2 ADD FOREIGN KEY(b) REFERENCES t1(a), LOCK=EXCLUSIVE; DROP TABLE t2, t1; +# +# MDEV-16060 - InnoDB: Failing assertion: ut_strcmp(index->name, key->name) +# +CREATE TABLE t1 (`pk` INT PRIMARY KEY) ENGINE=InnoDB; +CREATE TABLE t2 LIKE t1; +FLUSH TABLES; +SET debug_sync='alter_table_intermediate_table_created SIGNAL ready WAIT_FOR go'; +ALTER TABLE t1 ADD FOREIGN KEY(pk) REFERENCES t2(pk) ON UPDATE CASCADE; +connect con1, localhost, root; +SET debug_sync='now WAIT_FOR ready'; +SET lock_wait_timeout=1; +UPDATE t2 SET pk=10 WHERE pk=1; +ERROR HY000: Lock wait timeout exceeded; try restarting transaction +PREPARE stmt FROM 'UPDATE t2 SET pk=10 WHERE pk=1'; +DEALLOCATE PREPARE stmt; +FLUSH TABLE t2; +SET debug_sync='now SIGNAL go'; +connection default; +disconnect con1; +connection default; +SET debug_sync='reset'; +SHOW OPEN TABLES FROM test; +Database Table In_use Name_locked +DROP TABLE t1, t2; diff --git a/mysql-test/suite/innodb/r/innodb-autoinc.result b/mysql-test/suite/innodb/r/innodb-autoinc.result index 7d50ed00a92811c6f2d7450eb4de53e75c68f492..2c428b0ba1ade67fee535b9de7f50d38fe653423 100644 --- a/mysql-test/suite/innodb/r/innodb-autoinc.result +++ b/mysql-test/suite/innodb/r/innodb-autoinc.result @@ -621,6 +621,130 @@ c1 c2 3 3 4 4 DROP TABLE t1; +# +# Bug#15851528 DUPLICATE KEY ERROR ON AUTO-INC PK WITH MIXED AUTO_INCREMENT_INCREMENT CLIENTS +# +# This test shows that the next record to be inserted is not affected +# by a change in auto_increment_increment. +# In addition, current value of auto_increment_increment by the client +# that uses the existing autoinc value with be used to set next autoinc +# value, which will be used by next client reguardless of its own session +# setting for auto_increment_increment. +# +# Client 1: Insert a record with auto_increment_increment=2 +CREATE TABLE t( +a SERIAL PRIMARY KEY, +b VARCHAR(200)) ENGINE=InnoDB; +SET SESSION auto_increment_increment=2; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S1'); +SELECT a,b FROM t; +a b +1 S1 +# Client 2: Insert records with auto_increment_increment 2,1 +SET SESSION auto_increment_increment=2; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S2'); +SELECT a,b FROM t; +a b +1 S1 +3 S2 +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S2'); +SELECT a,b FROM t; +a b +1 S1 +3 S2 +4 S2 +# Client 1: Insert a record with auto_increment_increment=1 +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S1'); +SELECT a,b FROM t; +a b +1 S1 +3 S2 +4 S2 +5 S1 +DROP TABLE t; +# Autoincrement behaviour with mixed insert. +CREATE TABLE t( +a TINYINT AUTO_INCREMENT PRIMARY KEY, +b VARCHAR(200)) ENGINE=InnoDB; +SET SESSION auto_increment_increment=10; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` tinyint(4) NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S0'),('S1'); +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` tinyint(4) NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=latin1 +INSERT INTO t(a,b) VALUES(28,'S2'); +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` tinyint(4) NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S3'); +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` tinyint(4) NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=latin1 +INSERT INTO t(b) VALUES('S4'); +SELECT * FROM t; +a b +1 S0 +11 S1 +22 S3 +23 S4 +28 S2 +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` tinyint(4) NOT NULL AUTO_INCREMENT, + `b` varchar(200) DEFAULT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=latin1 +DROP TABLE t; SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=5; DROP TABLE IF EXISTS t1; Warnings: diff --git a/mysql-test/suite/innodb/r/innodb-system-table-view.result b/mysql-test/suite/innodb/r/innodb-system-table-view.result new file mode 100644 index 0000000000000000000000000000000000000000..ea29e47e27b1f263873db50405fe0af9ba45a851 --- /dev/null +++ b/mysql-test/suite/innodb/r/innodb-system-table-view.result @@ -0,0 +1,153 @@ +SELECT table_id INTO @table_stats_id FROM information_schema.innodb_sys_tables +WHERE name = 'mysql/innodb_table_stats'; +SELECT table_id INTO @index_stats_id FROM information_schema.innodb_sys_tables +WHERE name = 'mysql/innodb_index_stats'; +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY table_id; +TABLE_ID NAME FLAG N_COLS SPACE FILE_FORMAT ROW_FORMAT ZIP_PAGE_SIZE +11 SYS_FOREIGN 0 7 0 Antelope Redundant 0 +12 SYS_FOREIGN_COLS 0 7 0 Antelope Redundant 0 +13 SYS_TABLESPACES 0 6 0 Antelope Redundant 0 +14 SYS_DATAFILES 0 5 0 Antelope Redundant 0 +SELECT table_id,pos,mtype,prtype,len,name +FROM INFORMATION_SCHEMA.INNODB_SYS_COLUMNS +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) +ORDER BY table_id, pos; +table_id pos mtype prtype len name +11 0 1 524292 0 ID +11 1 1 524292 0 FOR_NAME +11 2 1 524292 0 REF_NAME +11 3 6 0 4 N_COLS +12 0 1 524292 0 ID +12 1 6 0 4 POS +12 2 1 524292 0 FOR_COL_NAME +12 3 1 524292 0 REF_COL_NAME +13 0 6 0 4 SPACE +13 1 1 524292 0 NAME +13 2 6 0 4 FLAGS +14 0 6 0 4 SPACE +14 1 1 524292 0 PATH +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY index_id; +INDEX_ID NAME TABLE_ID TYPE N_FIELDS PAGE_NO SPACE +# ID_IND # 3 1 # # +# FOR_IND # 0 1 # # +# REF_IND # 0 1 # # +# ID_IND # 3 2 # # +# SYS_TABLESPACES_SPACE # 3 1 # # +# SYS_DATAFILES_SPACE # 3 1 # # +SELECT index_id,pos,name FROM INFORMATION_SCHEMA.INNODB_SYS_FIELDS +WHERE name NOT IN ('database_name', 'table_name', 'index_name', 'stat_name') +ORDER BY index_id, pos; +index_id pos name +11 0 ID +12 0 FOR_NAME +13 0 REF_NAME +14 0 ID +14 1 POS +15 0 SPACE +16 0 SPACE +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; +ID FOR_NAME REF_NAME N_COLS TYPE +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; +ID FOR_COL_NAME REF_COL_NAME POS +CREATE TABLE t_redundant (a INT KEY, b TEXT) ROW_FORMAT=REDUNDANT ENGINE=innodb; +CREATE TABLE t_compact (a INT KEY, b TEXT) ROW_FORMAT=COMPACT ENGINE=innodb; +CREATE TABLE t_compressed (a INT KEY, b TEXT) ROW_FORMAT=COMPRESSED ENGINE=innodb KEY_BLOCK_SIZE=2; +CREATE TABLE t_dynamic (a INT KEY, b TEXT) ROW_FORMAT=DYNAMIC ENGINE=innodb; +=== information_schema.innodb_sys_tables and innodb_sys_tablespaces === +Table Name Tablespace Table Flags Columns Row Format Zip Size +test/t_compact test/t_compact 1 5 Compact 0 +test/t_compressed test/t_compressed 37 5 Compressed 2048 +test/t_dynamic test/t_dynamic 33 5 Dynamic 0 +test/t_redundant test/t_redundant 0 5 Redundant 0 +=== information_schema.innodb_sys_tablespaces and innodb_sys_datafiles === +Space_Name Page_Size Zip_Size Formats_Permitted Path +test/t_redundant DEFAULT 0 Compact or Redundant MYSQLD_DATADIR/test/t_redundant.ibd +test/t_compact DEFAULT 0 Compact or Redundant MYSQLD_DATADIR/test/t_compact.ibd +test/t_compressed DEFAULT 2048 Compressed MYSQLD_DATADIR/test/t_compressed.ibd +test/t_dynamic DEFAULT 0 Dynamic MYSQLD_DATADIR/test/t_dynamic.ibd +DROP TABLE t_redundant, t_compact, t_compressed, t_dynamic; +SELECT count(*) FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS; +count(*) +6 +CREATE TABLE parent (id INT NOT NULL, +PRIMARY KEY (id)) ENGINE=INNODB; +CREATE TABLE child (id INT, parent_id INT, +INDEX par_ind (parent_id), +CONSTRAINT constraint_test +FOREIGN KEY (parent_id) REFERENCES parent(id) +ON DELETE CASCADE) ENGINE=INNODB; +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; +ID FOR_NAME REF_NAME N_COLS TYPE +test/constraint_test test/child test/parent 1 1 +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; +ID FOR_COL_NAME REF_COL_NAME POS +test/constraint_test parent_id id 0 +INSERT INTO parent VALUES(1); +SELECT name, num_rows, ref_count +FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS +WHERE name LIKE "%parent"; +name num_rows ref_count +test/parent 1 1 +SELECT NAME, FLAG, N_COLS FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE name NOT LIKE 'sys/%'; +NAME FLAG N_COLS +SYS_DATAFILES 0 5 +SYS_FOREIGN 0 7 +SYS_FOREIGN_COLS 0 7 +SYS_TABLESPACES 0 6 +mysql/innodb_index_stats 1 11 +mysql/innodb_table_stats 1 9 +test/child 1 5 +test/parent 1 4 +SELECT name, n_fields +from INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id In (SELECT table_id from +INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE name LIKE "%parent%"); +name n_fields +PRIMARY 1 +SELECT name, n_fields +from INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id In (SELECT table_id from +INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE name LIKE "%child%"); +name n_fields +GEN_CLUST_INDEX 0 +par_ind 1 +SELECT name, pos, mtype, len +from INFORMATION_SCHEMA.INNODB_SYS_COLUMNS +WHERE table_id In (SELECT table_id from +INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE name LIKE "%child%"); +name pos mtype len +id 0 6 4 +parent_id 1 6 4 +DROP TABLE child; +DROP TABLE parent; +CREATE TABLE parent (id INT NOT NULL, newid INT NOT NULL, +PRIMARY KEY (id, newid)) ENGINE=INNODB; +CREATE TABLE child (id INT, parent_id INT, +INDEX par_ind (parent_id), +CONSTRAINT constraint_test +FOREIGN KEY (id, parent_id) REFERENCES parent(id, newid) +ON DELETE CASCADE) ENGINE=INNODB; +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; +ID FOR_NAME REF_NAME N_COLS TYPE +test/constraint_test test/child test/parent 2 1 +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; +ID FOR_COL_NAME REF_COL_NAME POS +test/constraint_test id id 0 +test/constraint_test parent_id newid 1 +INSERT INTO parent VALUES(1, 9); +SELECT * FROM parent WHERE id IN (SELECT id FROM parent); +id newid +1 9 +SELECT name, num_rows, ref_count +FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS +WHERE name LIKE "%parent"; +name num_rows ref_count +test/parent 1 2 +DROP TABLE child; +DROP TABLE parent; diff --git a/mysql-test/suite/innodb/r/innodb-wl5980-debug.result b/mysql-test/suite/innodb/r/innodb-wl5980-debug.result new file mode 100644 index 0000000000000000000000000000000000000000..51cff4393aa97d82f7a480f2c3f2e10e029d8afe --- /dev/null +++ b/mysql-test/suite/innodb/r/innodb-wl5980-debug.result @@ -0,0 +1,27 @@ +call mtr.add_suppression("Cannot find space id [0-9]+ in the tablespace memory cache"); +call mtr.add_suppression("Cannot rename table 'test/t1' to 'test/t2' since the dictionary cache already contains 'test/t2'."); +# +# WL5980 Remote tablespace debug error injection tests. +# +CREATE TABLE t1 (a int KEY, b text) ENGINE=Innodb DATA DIRECTORY='MYSQL_TMP_DIR/alt_dir' ; +INSERT INTO t1 VALUES (1, 'tablespace'); +SELECT * FROM t1; +a b +1 tablespace +# +# Test the second injection point in fil_rename_tablespace(). +# Make sure the table is useable after this failure. +# +SET @save_dbug=@@debug_dbug; +SET debug_dbug="+d,fil_rename_tablespace_failure_2"; +RENAME TABLE t1 TO t2; +SET debug_dbug=@save_dbug; +INSERT INTO t1 VALUES (2, 'tablespace'); +SELECT * FROM t1; +a b +1 tablespace +2 tablespace +# +# Cleanup +# +DROP TABLE t1; diff --git a/mysql-test/suite/innodb/r/innodb_skip_innodb_is_tables.result b/mysql-test/suite/innodb/r/innodb_skip_innodb_is_tables.result index 0a1f03912508a3ae3adb873dc59870ec2e7adc0c..285c1a3570988291129e97674c46f9a52fbbb93e 100644 --- a/mysql-test/suite/innodb/r/innodb_skip_innodb_is_tables.result +++ b/mysql-test/suite/innodb/r/innodb_skip_innodb_is_tables.result @@ -193,9 +193,9 @@ log_lsn_checkpoint_age recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL log_lsn_buf_pool_oldest recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value The oldest modified block LSN in the buffer pool log_max_modified_age_async recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value Maximum LSN difference; when exceeded, start asynchronous preflush log_max_modified_age_sync recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value Maximum LSN difference; when exceeded, start synchronous preflush -log_pending_log_writes recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled counter Pending log writes -log_pending_checkpoint_writes recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled counter Pending checkpoints -log_num_log_io recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled counter Number of log I/Os +log_pending_log_writes recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value Pending log writes +log_pending_checkpoint_writes recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value Pending checkpoints +log_num_log_io recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled value Number of log I/Os log_waits recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled status_counter Number of log waits due to small log buffer (innodb_log_waits) log_write_requests recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled status_counter Number of log write requests (innodb_log_write_requests) log_writes recovery 0 NULL NULL NULL 0 NULL NULL NULL NULL NULL NULL NULL disabled status_counter Number of log writes (innodb_log_writes) @@ -319,14 +319,24 @@ the www select * from information_schema.innodb_ft_deleted; DOC_ID +Warnings: +Warning 1012 InnoDB: SELECTing from INFORMATION_SCHEMA.innodb_ft_deleted but the InnoDB storage engine is not installed select * from information_schema.innodb_ft_being_deleted; DOC_ID +Warnings: +Warning 1012 InnoDB: SELECTing from INFORMATION_SCHEMA.innodb_ft_being_deleted but the InnoDB storage engine is not installed select * from information_schema.innodb_ft_index_cache; WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +Warnings: +Warning 1012 InnoDB: SELECTing from INFORMATION_SCHEMA.innodb_ft_index_cache but the InnoDB storage engine is not installed select * from information_schema.innodb_ft_index_table; WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +Warnings: +Warning 1012 InnoDB: SELECTing from INFORMATION_SCHEMA.innodb_ft_index_table but the InnoDB storage engine is not installed select * from information_schema.innodb_ft_config; KEY VALUE +Warnings: +Warning 1012 InnoDB: SELECTing from INFORMATION_SCHEMA.innodb_ft_config but the InnoDB storage engine is not installed select * from information_schema.innodb_buffer_page; POOL_ID BLOCK_ID SPACE PAGE_NUMBER PAGE_TYPE FLUSH_TYPE FIX_COUNT IS_HASHED NEWEST_MODIFICATION OLDEST_MODIFICATION ACCESS_TIME TABLE_NAME INDEX_NAME NUMBER_RECORDS DATA_SIZE COMPRESSED_SIZE PAGE_STATE IO_FIX IS_OLD FREE_PAGE_CLOCK Warnings: diff --git a/mysql-test/suite/innodb/r/trx_id_future.result b/mysql-test/suite/innodb/r/trx_id_future.result new file mode 100644 index 0000000000000000000000000000000000000000..f7dee9333194cec047fadefb92c8cc4909fe3543 --- /dev/null +++ b/mysql-test/suite/innodb/r/trx_id_future.result @@ -0,0 +1,11 @@ +# +# Bug #20445525 ADD A CONSISTENCY CHECK AGAINST DB_TRX_ID BEING +# IN THE FUTURE +# +CREATE TABLE t1(a INT) row_format=redundant engine=innoDB; +INSERT INTO t1 VALUES(1); +NOT FOUND /\[Warning\] InnoDB: A transaction id in a record of table `test`\.`t1` is newer than the system-wide maximum/ in mysqld.1.err +call mtr.add_suppression("\\[Warning\\] InnoDB: A transaction id in a record of table `test`\\.`t1` is newer than the system-wide maximum"); +SELECT * FROM t1; +a +DROP TABLE t1; diff --git a/mysql-test/suite/innodb/t/check_ibd_filesize.test b/mysql-test/suite/innodb/t/check_ibd_filesize.test new file mode 100644 index 0000000000000000000000000000000000000000..92f9061a3f6269cd0799ea1f7fa94ca435d1efb5 --- /dev/null +++ b/mysql-test/suite/innodb/t/check_ibd_filesize.test @@ -0,0 +1,53 @@ +--source include/innodb_page_size.inc +--source include/have_sequence.inc + +--echo # +--echo # Bug #21950389 SMALL TABLESPACES WITH BLOBS TAKE UP TO 80 TIMES MORE +--echo # SPACE IN 5.7 THAN IN 5.6 +--echo # + +# +# Table 1: small rows +# +CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB; +let MYSQLD_DATADIR=`select @@datadir`; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF + +INSERT INTO t1 SELECT * FROM seq_1_to_25000; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF +DROP TABLE t1; + +# +# Table 2: BLOB +# +CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) ENGINE=InnoDB; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF +INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF +DROP TABLE t1; + +let $page_size=`SELECT @@innodb_page_size`; +if ($page_size < 32768) +{ +# +# Table 3: compressed BLOB +# +CREATE TABLE t1 (a INT PRIMARY KEY, b BLOB) +ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF +INSERT INTO t1 SELECT seq,REPEAT('a',30000) FROM seq_1_to_20; +perl; +print "# bytes: ", (-s "$ENV{MYSQLD_DATADIR}/test/t1.ibd"), "\n"; +EOF +DROP TABLE t1; +} diff --git a/mysql-test/suite/innodb/t/create_select.test b/mysql-test/suite/innodb/t/create_select.test new file mode 100644 index 0000000000000000000000000000000000000000..8103902e5f673b7c0e37a0ab33d3aa2d8c705874 --- /dev/null +++ b/mysql-test/suite/innodb/t/create_select.test @@ -0,0 +1,28 @@ +--source include/have_innodb.inc +--source include/have_sequence.inc +--source include/count_sessions.inc + +let $ID= `SELECT @id := CONNECTION_ID()`; + +connect (con1, localhost, root,,); +let $ignore= `SELECT @id := $ID`; + +connection default; +send CREATE TABLE t1 ENGINE=InnoDB SELECT * FROM seq_1_to_100000000; + +connection con1; +let $wait_condition= + select count(*) = 1 from information_schema.processlist + where state = 'Sending data' + and info = 'CREATE TABLE t1 ENGINE=InnoDB SELECT * FROM seq_1_to_100000000'; +--source include/wait_condition.inc +KILL QUERY @id; +disconnect con1; + +connection default; +--error ER_QUERY_INTERRUPTED +reap; + +CREATE TABLE t1 (a SERIAL) ENGINE=InnoDB; +DROP TABLE t1; +--source include/wait_until_count_sessions.inc diff --git a/mysql-test/suite/innodb/t/foreign-keys.test b/mysql-test/suite/innodb/t/foreign-keys.test index ced44a89d7c540ce53a4c55a68f4b402b657c810..a19fe3876f3b55d0c383f941272ad1b0fd4632ef 100644 --- a/mysql-test/suite/innodb/t/foreign-keys.test +++ b/mysql-test/suite/innodb/t/foreign-keys.test @@ -126,3 +126,35 @@ CREATE TABLE t2 (b INT, KEY(b)) ENGINE=InnoDB; INSERT INTO t2 VALUES(2); ALTER TABLE t2 ADD FOREIGN KEY(b) REFERENCES t1(a), LOCK=EXCLUSIVE; DROP TABLE t2, t1; + + +--echo # +--echo # MDEV-16060 - InnoDB: Failing assertion: ut_strcmp(index->name, key->name) +--echo # +CREATE TABLE t1 (`pk` INT PRIMARY KEY) ENGINE=InnoDB; +CREATE TABLE t2 LIKE t1; +FLUSH TABLES; + +SET debug_sync='alter_table_intermediate_table_created SIGNAL ready WAIT_FOR go'; +send ALTER TABLE t1 ADD FOREIGN KEY(pk) REFERENCES t2(pk) ON UPDATE CASCADE; + +connect con1, localhost, root; +SET debug_sync='now WAIT_FOR ready'; +SET lock_wait_timeout=1; # change to 0 in 10.3 +--error ER_LOCK_WAIT_TIMEOUT +UPDATE t2 SET pk=10 WHERE pk=1; +PREPARE stmt FROM 'UPDATE t2 SET pk=10 WHERE pk=1'; +DEALLOCATE PREPARE stmt; +FLUSH TABLE t2; +SET debug_sync='now SIGNAL go'; + +connection default; +reap; + +# Cleanup +disconnect con1; + +connection default; +SET debug_sync='reset'; +SHOW OPEN TABLES FROM test; +DROP TABLE t1, t2; diff --git a/mysql-test/suite/innodb/t/innodb-autoinc.test b/mysql-test/suite/innodb/t/innodb-autoinc.test index 75b2e8984d9cdb56c84b5b0c0c7c5b309772cc66..8b202f5db6b087cfcb607f4e54937e050926e3fd 100644 --- a/mysql-test/suite/innodb/t/innodb-autoinc.test +++ b/mysql-test/suite/innodb/t/innodb-autoinc.test @@ -381,6 +381,66 @@ INSERT INTO t1 VALUES(NULL, 4); SELECT * FROM t1; DROP TABLE t1; +--echo # +--echo # Bug#15851528 DUPLICATE KEY ERROR ON AUTO-INC PK WITH MIXED AUTO_INCREMENT_INCREMENT CLIENTS +--echo # +--echo # This test shows that the next record to be inserted is not affected +--echo # by a change in auto_increment_increment. +--echo # In addition, current value of auto_increment_increment by the client +--echo # that uses the existing autoinc value with be used to set next autoinc +--echo # value, which will be used by next client reguardless of its own session +--echo # setting for auto_increment_increment. +--echo # + +--connection default +--echo # Client 1: Insert a record with auto_increment_increment=2 +CREATE TABLE t( + a SERIAL PRIMARY KEY, + b VARCHAR(200)) ENGINE=InnoDB; +SET SESSION auto_increment_increment=2; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S1'); +SELECT a,b FROM t; +--connect(con1,localhost,root,,) + +--connection con1 +--echo # Client 2: Insert records with auto_increment_increment 2,1 +SET SESSION auto_increment_increment=2; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S2'); +SELECT a,b FROM t; +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S2'); +SELECT a,b FROM t; +disconnect con1; + +--connection default +--echo # Client 1: Insert a record with auto_increment_increment=1 +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S1'); +SELECT a,b FROM t; +DROP TABLE t; + +--echo # Autoincrement behaviour with mixed insert. +CREATE TABLE t( + a TINYINT AUTO_INCREMENT PRIMARY KEY, + b VARCHAR(200)) ENGINE=InnoDB; +SET SESSION auto_increment_increment=10; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S0'),('S1'); +SHOW CREATE TABLE t; +INSERT INTO t(a,b) VALUES(28,'S2'); +SET SESSION auto_increment_increment=1; +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S3'); +SHOW CREATE TABLE t; +INSERT INTO t(b) VALUES('S4'); +SELECT * FROM t; +SHOW CREATE TABLE t; +DROP TABLE t; + # # Bug# 42714: AUTOINC column calculated next value not greater than highest # value stored in table. diff --git a/mysql-test/suite/innodb/t/innodb-system-table-view.opt b/mysql-test/suite/innodb/t/innodb-system-table-view.opt new file mode 100644 index 0000000000000000000000000000000000000000..f23741f479ecec347f9c1cc001ddc84e2e775d09 --- /dev/null +++ b/mysql-test/suite/innodb/t/innodb-system-table-view.opt @@ -0,0 +1,11 @@ +--innodb +--innodb-sys-tablespaces +--innodb-sys-datafiles +--innodb-sys-tablestats +--innodb-sys-tables +--innodb-sys-columns +--innodb-sys-indexes +--innodb-sys-fields +--innodb-sys-foreign +--innodb-sys-foreign-cols +--innodb-file-format=barracuda diff --git a/mysql-test/suite/innodb/t/innodb-system-table-view.test b/mysql-test/suite/innodb/t/innodb-system-table-view.test new file mode 100644 index 0000000000000000000000000000000000000000..087c0a22ecab46afeebf2cab01d03b12aeec1284 --- /dev/null +++ b/mysql-test/suite/innodb/t/innodb-system-table-view.test @@ -0,0 +1,136 @@ +# This is the test for Information Schema System Table View +# that displays the InnoDB system table content through +# information schema tables. + +--source include/innodb_page_size_small.inc + +LET $MYSQLD_DATADIR = `select @@datadir`; +LET $INNODB_PAGE_SIZE = `select @@innodb_page_size`; + +# The IDs of mysql.innodb_table_stats and mysql.innodb_index_stats may +# vary depending on whether the tables have been rebuilt +# by previously run tests. +SELECT table_id INTO @table_stats_id FROM information_schema.innodb_sys_tables +WHERE name = 'mysql/innodb_table_stats'; +SELECT table_id INTO @index_stats_id FROM information_schema.innodb_sys_tables +WHERE name = 'mysql/innodb_index_stats'; + +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY table_id; + +SELECT table_id,pos,mtype,prtype,len,name +FROM INFORMATION_SCHEMA.INNODB_SYS_COLUMNS +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) +ORDER BY table_id, pos; + +--replace_column 1 # 3 # 6 # 7 # +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY index_id; + +SELECT index_id,pos,name FROM INFORMATION_SCHEMA.INNODB_SYS_FIELDS +WHERE name NOT IN ('database_name', 'table_name', 'index_name', 'stat_name') +ORDER BY index_id, pos; + +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; + +CREATE TABLE t_redundant (a INT KEY, b TEXT) ROW_FORMAT=REDUNDANT ENGINE=innodb; +CREATE TABLE t_compact (a INT KEY, b TEXT) ROW_FORMAT=COMPACT ENGINE=innodb; +CREATE TABLE t_compressed (a INT KEY, b TEXT) ROW_FORMAT=COMPRESSED ENGINE=innodb KEY_BLOCK_SIZE=2; +CREATE TABLE t_dynamic (a INT KEY, b TEXT) ROW_FORMAT=DYNAMIC ENGINE=innodb; + +--source suite/innodb/include/show_i_s_tables.inc +--source suite/innodb/include/show_i_s_tablespaces.inc + +DROP TABLE t_redundant, t_compact, t_compressed, t_dynamic; + +SELECT count(*) FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS; + +# Create a foreign key constraint, and verify the information +# in INFORMATION_SCHEMA.INNODB_SYS_FOREIGN and +# INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS +CREATE TABLE parent (id INT NOT NULL, + PRIMARY KEY (id)) ENGINE=INNODB; + +CREATE TABLE child (id INT, parent_id INT, + INDEX par_ind (parent_id), + CONSTRAINT constraint_test + FOREIGN KEY (parent_id) REFERENCES parent(id) + ON DELETE CASCADE) ENGINE=INNODB; + +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; + +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; + +# Insert a row in the table "parent", and see whether that reflected in +# INNODB_SYS_TABLESTATS +INSERT INTO parent VALUES(1); + +--sorted_result +SELECT name, num_rows, ref_count +FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS +WHERE name LIKE "%parent"; + +--sorted_result +SELECT NAME, FLAG, N_COLS FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES + WHERE name NOT LIKE 'sys/%'; + +--sorted_result +SELECT name, n_fields +from INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id In (SELECT table_id from + INFORMATION_SCHEMA.INNODB_SYS_TABLES + WHERE name LIKE "%parent%"); + +--sorted_result +SELECT name, n_fields +from INFORMATION_SCHEMA.INNODB_SYS_INDEXES +WHERE table_id In (SELECT table_id from + INFORMATION_SCHEMA.INNODB_SYS_TABLES + WHERE name LIKE "%child%"); + +--sorted_result +SELECT name, pos, mtype, len +from INFORMATION_SCHEMA.INNODB_SYS_COLUMNS +WHERE table_id In (SELECT table_id from + INFORMATION_SCHEMA.INNODB_SYS_TABLES + WHERE name LIKE "%child%"); + +DROP TABLE child; + +DROP TABLE parent; + +# Create table with 2 columns in the foreign key constraint +CREATE TABLE parent (id INT NOT NULL, newid INT NOT NULL, + PRIMARY KEY (id, newid)) ENGINE=INNODB; + +CREATE TABLE child (id INT, parent_id INT, + INDEX par_ind (parent_id), + CONSTRAINT constraint_test + FOREIGN KEY (id, parent_id) REFERENCES parent(id, newid) + ON DELETE CASCADE) ENGINE=INNODB; + +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN; + +--sorted_result +SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS; + +INSERT INTO parent VALUES(1, 9); + +# Nested query will open the table handle twice +--sorted_result +SELECT * FROM parent WHERE id IN (SELECT id FROM parent); + +--sorted_result +SELECT name, num_rows, ref_count +FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS +WHERE name LIKE "%parent"; + +DROP TABLE child; + +DROP TABLE parent; diff --git a/mysql-test/suite/innodb/t/innodb-wl5980-debug.test b/mysql-test/suite/innodb/t/innodb-wl5980-debug.test new file mode 100644 index 0000000000000000000000000000000000000000..2c5e2b48870d22461a4a70c27bb2932fcb8b49cc --- /dev/null +++ b/mysql-test/suite/innodb/t/innodb-wl5980-debug.test @@ -0,0 +1,51 @@ +# +# This testcase is to check the various debug injection points +# to make sure error conditions react corectly and acheive +# better code coverage. +# + +# Not supported in embedded +--source include/not_embedded.inc +--source include/have_debug.inc +--source include/have_innodb.inc + +# These messages are expected in the log +call mtr.add_suppression("Cannot find space id [0-9]+ in the tablespace memory cache"); +call mtr.add_suppression("Cannot rename table 'test/t1' to 'test/t2' since the dictionary cache already contains 'test/t2'."); + +# Set up some variables +LET $MYSQL_DATA_DIR = `select @@datadir`; +LET $data_directory_clause = DATA DIRECTORY='$MYSQL_TMP_DIR/alt_dir'; +--enable_query_log + +--echo # +--echo # WL5980 Remote tablespace debug error injection tests. +--echo # + +--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR +eval CREATE TABLE t1 (a int KEY, b text) ENGINE=Innodb $data_directory_clause ; +INSERT INTO t1 VALUES (1, 'tablespace'); +SELECT * FROM t1; + +--echo # +--echo # Test the second injection point in fil_rename_tablespace(). +--echo # Make sure the table is useable after this failure. +--echo # +SET @save_dbug=@@debug_dbug; +SET debug_dbug="+d,fil_rename_tablespace_failure_2"; +--disable_result_log +--error ER_ERROR_ON_RENAME +RENAME TABLE t1 TO t2; +--enable_result_log +SET debug_dbug=@save_dbug; +INSERT INTO t1 VALUES (2, 'tablespace'); +SELECT * FROM t1; + +--echo # +--echo # Cleanup +--echo # + +DROP TABLE t1; + +--rmdir $MYSQL_TMP_DIR/alt_dir/test +--rmdir $MYSQL_TMP_DIR/alt_dir diff --git a/mysql-test/suite/innodb/t/trx_id_future.test b/mysql-test/suite/innodb/t/trx_id_future.test new file mode 100644 index 0000000000000000000000000000000000000000..deba753caca1cf242cfe3047fbd12ef2b4705d7b --- /dev/null +++ b/mysql-test/suite/innodb/t/trx_id_future.test @@ -0,0 +1,58 @@ +--echo # +--echo # Bug #20445525 ADD A CONSISTENCY CHECK AGAINST DB_TRX_ID BEING +--echo # IN THE FUTURE +--echo # + +--source include/not_debug.inc +--source include/have_innodb.inc +--source include/not_embedded.inc + +let PAGE_SIZE=`select @@innodb_page_size`; + +CREATE TABLE t1(a INT) row_format=redundant engine=innoDB; +INSERT INTO t1 VALUES(1); + +let MYSQLD_DATADIR=`select @@datadir`; + +--source include/shutdown_mysqld.inc + +perl; +do "$ENV{MTR_SUITE_DIR}/include/crc32.pl"; +my $file = "$ENV{MYSQLD_DATADIR}/test/t1.ibd"; +open(FILE, "+<", $file) || die "Unable to open $file"; +binmode FILE; + +#Seek the the infimum record and get the offset to next record +#Infimum record exist at offset 101 for redundant format +#And offset to the next record is present 2 bytes prior to +#infimum record + +my $ps= $ENV{PAGE_SIZE}; +my $page; +sysseek(FILE, 3*$ps, 0) || die "Unable to seek $file\n"; +die "Unable to read $file" unless sysread(FILE, $page, $ps) == $ps; +#In this case the first record should be at offset 135 +die unless unpack("n", substr($page, 99, 2)) == 135; + +substr($page,135+6,6) = "\xff" x 6; + +my $polynomial = 0x82f63b78; # CRC-32C +my $ck= pack("N",mycrc32(substr($page, 4, 22), 0, $polynomial) ^ + mycrc32(substr($page, 38, $ps - 38 - 8), 0, $polynomial)); +substr($page,0,4)=$ck; +substr($page,$ps-8,4)=$ck; +sysseek(FILE, 3*$ps, 0) || die "Unable to rewind $file\n"; +syswrite(FILE, $page, $ps)==$ps || die "Unable to write $file\n"; +close(FILE) || die "Unable to close $file"; +EOF + +--source include/start_mysqld.inc + +let SEARCH_FILE= $MYSQLTEST_VARDIR/log/mysqld.1.err; +let SEARCH_PATTERN= \[Warning\] InnoDB: A transaction id in a record of table `test`\.`t1` is newer than the system-wide maximum; +--source include/search_pattern_in_file.inc + +call mtr.add_suppression("\\[Warning\\] InnoDB: A transaction id in a record of table `test`\\.`t1` is newer than the system-wide maximum"); + +SELECT * FROM t1; +DROP TABLE t1; diff --git a/mysql-test/suite/innodb_fts/r/innodb_ft_aux_table.result b/mysql-test/suite/innodb_fts/r/innodb_ft_aux_table.result new file mode 100644 index 0000000000000000000000000000000000000000..cb233a466a5badd790008323d3597e7ac9a14edd --- /dev/null +++ b/mysql-test/suite/innodb_fts/r/innodb_ft_aux_table.result @@ -0,0 +1,116 @@ +CREATE TABLE t1 (v VARCHAR(100), FULLTEXT INDEX (v)) ENGINE=InnoDB; +insert into t1 VALUES('First record'),('Second record'),('Third record'); +SET @save_ft_aux_table = @@GLOBAL.innodb_ft_aux_table; +SET GLOBAL innodb_ft_aux_table = 'test/t0'; +ERROR 42000: Variable 'innodb_ft_aux_table' can't be set to the value of 'test/t0' +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DEFAULT_STOPWORD; +value +a +about +an +are +as +at +be +by +com +de +en +for +from +how +i +in +is +it +la +of +on +or +that +the +this +to +was +what +when +where +who +will +with +und +the +www +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +KEY VALUE +SET GLOBAL innodb_ft_aux_table = 'test/t1'; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +first 1 1 1 1 0 +record 1 3 3 1 6 +record 1 3 3 2 7 +record 1 3 3 3 6 +second 2 2 1 2 0 +third 3 3 1 3 0 +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +KEY VALUE +optimize_checkpoint_limit 180 +synced_doc_id 0 +stopword_table_name +use_stopword 1 +SELECT @@GLOBAL.innodb_ft_aux_table; +@@GLOBAL.innodb_ft_aux_table +test/t1 +RENAME TABLE t1 TO t2; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +first 1 1 1 1 0 +record 1 3 3 1 6 +record 1 3 3 2 7 +record 1 3 3 3 6 +second 2 2 1 2 0 +third 3 3 1 3 0 +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +KEY VALUE +optimize_checkpoint_limit 180 +synced_doc_id 0 +stopword_table_name +use_stopword 1 +SELECT @@GLOBAL.innodb_ft_aux_table; +@@GLOBAL.innodb_ft_aux_table +test/t1 +DROP TABLE t2; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +DOC_ID +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +WORD FIRST_DOC_ID LAST_DOC_ID DOC_COUNT DOC_ID POSITION +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +KEY VALUE +SELECT @@GLOBAL.innodb_ft_aux_table; +@@GLOBAL.innodb_ft_aux_table +test/t1 +SET GLOBAL innodb_ft_aux_table = @save_ft_aux_table; diff --git a/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.opt b/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.opt new file mode 100644 index 0000000000000000000000000000000000000000..f85581275ed67167c23f9b5aca1e70e0602aad31 --- /dev/null +++ b/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.opt @@ -0,0 +1,6 @@ +--innodb_ft_default_stopword +--innodb_ft_deleted +--innodb_ft_being_deleted +--innodb_ft_index_cache +--innodb_ft_index_table +--innodb_ft_config diff --git a/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.test b/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.test new file mode 100644 index 0000000000000000000000000000000000000000..48964aef4fd0b6d89bc625ff13c4477b5457f152 --- /dev/null +++ b/mysql-test/suite/innodb_fts/t/innodb_ft_aux_table.test @@ -0,0 +1,43 @@ +--source include/have_innodb.inc + +CREATE TABLE t1 (v VARCHAR(100), FULLTEXT INDEX (v)) ENGINE=InnoDB; + +insert into t1 VALUES('First record'),('Second record'),('Third record'); + +SET @save_ft_aux_table = @@GLOBAL.innodb_ft_aux_table; + +connect (con1,localhost,root,,); +--error ER_WRONG_VALUE_FOR_VAR +SET GLOBAL innodb_ft_aux_table = 'test/t0'; +connection default; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DEFAULT_STOPWORD; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +connection con1; +SET GLOBAL innodb_ft_aux_table = 'test/t1'; +disconnect con1; +connection default; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +SELECT @@GLOBAL.innodb_ft_aux_table; +RENAME TABLE t1 TO t2; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +SELECT @@GLOBAL.innodb_ft_aux_table; +DROP TABLE t2; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_BEING_DELETED; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_CACHE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_INDEX_TABLE; +SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_CONFIG; +SELECT @@GLOBAL.innodb_ft_aux_table; +SET GLOBAL innodb_ft_aux_table = @save_ft_aux_table; diff --git a/mysql-test/suite/multi_source/mdev-8874.cnf b/mysql-test/suite/multi_source/mdev-8874.cnf new file mode 100644 index 0000000000000000000000000000000000000000..dc89db72772779c11d533c17ca15867279b6b9a3 --- /dev/null +++ b/mysql-test/suite/multi_source/mdev-8874.cnf @@ -0,0 +1,25 @@ +!include my.cnf + +[mysqld.1] +log-bin +log-slave-updates + +[mysqld.2] +log-bin +log-slave-updates + +[mysqld.3] +log-bin +log-slave-updates + +[mysqld.4] +server-id=4 +log-bin=server4-bin +log-slave-updates +m1.replicate_ignore_table='a.t1' +m2.replicate_ignore_table='b.t1' +replicate_ignore_table='c.t1' + +[ENV] +SERVER_MYPORT_4= @mysqld.4.port +SERVER_MYSOCK_4= @mysqld.4.socket diff --git a/mysql-test/suite/multi_source/mdev-8874.result b/mysql-test/suite/multi_source/mdev-8874.result new file mode 100644 index 0000000000000000000000000000000000000000..25185eed02ae5ac65c6d206abc2a07705200ee17 --- /dev/null +++ b/mysql-test/suite/multi_source/mdev-8874.result @@ -0,0 +1,114 @@ +create database a; +use a; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +create database b; +use b; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +create database c; +use c; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +change master 'm1' to master_port=MYPORT_1 , master_host='127.0.0.1', master_user='root'; +change master 'm2' to master_port=MYPORT_2 , master_host='127.0.0.1', master_user='root'; +change master to master_port=MYPORT_3 , master_host='127.0.0.1', master_user='root'; +start all slaves; +set default_master_connection = 'm1'; +include/wait_for_slave_to_start.inc +set default_master_connection = 'm2'; +include/wait_for_slave_to_start.inc +set default_master_connection = ''; +include/wait_for_slave_to_start.inc +select @@global.'m1'.replicate_ignore_table; +@@global.'m1'.replicate_ignore_table +a.t1 +select @@global.'m2'.replicate_ignore_table; +@@global.'m2'.replicate_ignore_table +b.t1 +select @@global.replicate_ignore_table; +@@global.replicate_ignore_table +c.t1 +use a; +#No t1 table +show tables; +Tables_in_a +t2 +use b; +#No t1 table +show tables; +Tables_in_b +t2 +use c; +#No t1 table +show tables; +Tables_in_c +t2 +#TEST +STOP ALL SLAVES; +Warnings: +Note 1938 SLAVE 'm2' stopped +Note 1938 SLAVE '' stopped +Note 1938 SLAVE 'm1' stopped +RESET SLAVE 'm1' ALL ; +RESET SLAVE 'm2' ALL ; +RESET SLAVE ALL ; +drop database a; +drop database b; +drop database c; +change master 'm1' to master_port=MYPORT_1 , master_host='127.0.0.1', master_user='root'; +change master 'm2' to master_port=MYPORT_2 , master_host='127.0.0.1', master_user='root'; +change master to master_port=MYPORT_3 , master_host='127.0.0.1', master_user='root'; +start all slaves; +Warnings: +Note 1937 SLAVE 'm2' started +Note 1937 SLAVE '' started +Note 1937 SLAVE 'm1' started +set default_master_connection = 'm1'; +include/wait_for_slave_to_start.inc +set default_master_connection = 'm2'; +include/wait_for_slave_to_start.inc +set default_master_connection = ''; +include/wait_for_slave_to_start.inc +#Replication Filter should be intact (t1 still not replicated) +select @@global.'m1'.replicate_ignore_table; +@@global.'m1'.replicate_ignore_table +a.t1 +select @@global.'m2'.replicate_ignore_table; +@@global.'m2'.replicate_ignore_table +b.t1 +select @@global.replicate_ignore_table; +@@global.replicate_ignore_table +c.t1 +use a; +#No t1 table +show tables; +Tables_in_a +t2 +use b; +#No t1 table +show tables; +Tables_in_b +t2 +use c; +#No t1 table +show tables; +Tables_in_c +t2 +#CleanUp +drop database a; +drop database b; +drop database c; +stop all slaves; +SET default_master_connection = "m1"; +include/wait_for_slave_to_stop.inc +SET default_master_connection = "m2"; +include/wait_for_slave_to_stop.inc +SET default_master_connection = ""; +include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/multi_source/mdev-8874.test b/mysql-test/suite/multi_source/mdev-8874.test new file mode 100644 index 0000000000000000000000000000000000000000..d03c255b9116a1ffa6fa451175d165df2dbd92e0 --- /dev/null +++ b/mysql-test/suite/multi_source/mdev-8874.test @@ -0,0 +1,141 @@ +--source include/not_embedded.inc +--source include/have_innodb.inc +--source include/have_debug.inc +# MDEV-8874 +# In Named Master slave connection if we do reset slave 'connection_name' ALL and then +# if we reconnect slave, replication filters are ignored. +# This patch fixes this issue. +--connect (server_1,127.0.0.1,root,,,$SERVER_MYPORT_1) +--connect (server_2,127.0.0.1,root,,,$SERVER_MYPORT_2) +--connect (server_3,127.0.0.1,root,,,$SERVER_MYPORT_3) +--connect (server_4,127.0.0.1,root,,,$SERVER_MYPORT_4) + +--connection server_1 +create database a; +use a; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +--save_master_pos + +--connection server_2 +create database b; +use b; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +--save_master_pos + +--connection server_3 +create database c; +use c; +create table t1(a int); +insert into t1 values(1); +create table t2(a int); +insert into t2 values(1); +--save_master_pos + +--connection server_4 +--disable_warnings +--replace_result $SERVER_MYPORT_1 MYPORT_1 +eval change master 'm1' to master_port=$SERVER_MYPORT_1 , master_host='127.0.0.1', master_user='root'; +--replace_result $SERVER_MYPORT_2 MYPORT_2 +eval change master 'm2' to master_port=$SERVER_MYPORT_2 , master_host='127.0.0.1', master_user='root'; +--replace_result $SERVER_MYPORT_3 MYPORT_3 +eval change master to master_port=$SERVER_MYPORT_3 , master_host='127.0.0.1', master_user='root'; +start all slaves; +set default_master_connection = 'm1'; +--source include/wait_for_slave_to_start.inc +set default_master_connection = 'm2'; +--source include/wait_for_slave_to_start.inc +set default_master_connection = ''; +--source include/wait_for_slave_to_start.inc +select @@global.'m1'.replicate_ignore_table; +select @@global.'m2'.replicate_ignore_table; +select @@global.replicate_ignore_table; + +--enable_warnings +--sync_with_master 0,'m1' +--sync_with_master 0,'m2' +--sync_with_master 0,'' +use a; +--echo #No t1 table +show tables; +use b; +--echo #No t1 table +show tables; +use c; +--echo #No t1 table +show tables; +--echo #TEST +STOP ALL SLAVES; +RESET SLAVE 'm1' ALL ; +RESET SLAVE 'm2' ALL ; +RESET SLAVE ALL ; +drop database a; +drop database b; +drop database c; +--replace_result $SERVER_MYPORT_1 MYPORT_1 +eval change master 'm1' to master_port=$SERVER_MYPORT_1 , master_host='127.0.0.1', master_user='root'; +--replace_result $SERVER_MYPORT_2 MYPORT_2 +eval change master 'm2' to master_port=$SERVER_MYPORT_2 , master_host='127.0.0.1', master_user='root'; +--replace_result $SERVER_MYPORT_3 MYPORT_3 +eval change master to master_port=$SERVER_MYPORT_3 , master_host='127.0.0.1', master_user='root'; +start all slaves; +set default_master_connection = 'm1'; +--source include/wait_for_slave_to_start.inc +set default_master_connection = 'm2'; +--source include/wait_for_slave_to_start.inc +set default_master_connection = ''; +--source include/wait_for_slave_to_start.inc +--sync_with_master 0,'m1' +--sync_with_master 0,'m2' +--sync_with_master 0,'' + +--echo #Replication Filter should be intact (t1 still not replicated) +select @@global.'m1'.replicate_ignore_table; +select @@global.'m2'.replicate_ignore_table; +select @@global.replicate_ignore_table; +use a; +--echo #No t1 table +show tables; +use b; +--echo #No t1 table +show tables; +use c; +--echo #No t1 table +show tables; + + +#--echo #restart the server +#--source include/restart_mysqld.inc + + +--echo #CleanUp +--connection server_1 +drop database a; +--save_master_pos + +--connection server_2 +drop database b; +--save_master_pos + +--connection server_3 +drop database c; +--save_master_pos + +--connection server_4 +--sync_with_master 0,'m1' +--sync_with_master 0,'m2' +--sync_with_master 0,'' +--disable_warnings +stop all slaves; +--enable_warnings +SET default_master_connection = "m1"; +--source include/wait_for_slave_to_stop.inc +SET default_master_connection = "m2"; +--source include/wait_for_slave_to_stop.inc +SET default_master_connection = ""; +--source include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/perfschema/t/ddl_esms_by_digest.test b/mysql-test/suite/perfschema/t/ddl_esms_by_digest.test index b674dc8d3856e49af775526ea5b00feade12f02d..cea7ea272995a5906fe6b32d69ae0a96add96233 100644 --- a/mysql-test/suite/perfschema/t/ddl_esms_by_digest.test +++ b/mysql-test/suite/perfschema/t/ddl_esms_by_digest.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA # Tests for PERFORMANCE_SCHEMA diff --git a/mysql-test/suite/perfschema/t/dml_esms_by_digest.test b/mysql-test/suite/perfschema/t/dml_esms_by_digest.test index 6fdc8ec9fdc4ffbc8d6c971178eeabd4e6b6e348..88729e6a7a81e40888a7feaf6d95e6953fd7bd06 100644 --- a/mysql-test/suite/perfschema/t/dml_esms_by_digest.test +++ b/mysql-test/suite/perfschema/t/dml_esms_by_digest.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA # Tests for PERFORMANCE_SCHEMA diff --git a/mysql-test/suite/perfschema_stress/README b/mysql-test/suite/perfschema_stress/README index 25101f429e56820a190f98f7c4fb82318aa585a9..b21de1972467f9ba980a7d97fcdafd7d5c6ed7a2 100644 --- a/mysql-test/suite/perfschema_stress/README +++ b/mysql-test/suite/perfschema_stress/README @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA WL#4818 - Stress testing of PERFORMANCE_SCHEMA diff --git a/mysql-test/suite/rpl/extension/checksum.pl b/mysql-test/suite/rpl/extension/checksum.pl index 60dca18c8f862a3f248ffbbbf03aaf64993f4f67..f94341446cd333d763f5703330b2922b6fbfb710 100755 --- a/mysql-test/suite/rpl/extension/checksum.pl +++ b/mysql-test/suite/rpl/extension/checksum.pl @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use File::Basename; use File::Copy qw(copy); diff --git a/mysql-test/suite/rpl/r/create_or_replace_mix.result b/mysql-test/suite/rpl/r/create_or_replace_mix.result index c6cce358799e57a7dd1a9c68cc0c845ddef7f60d..2c85bb3d93b22d6f4860799074aada05242acfed 100644 --- a/mysql-test/suite/rpl/r/create_or_replace_mix.result +++ b/mysql-test/suite/rpl/r/create_or_replace_mix.result @@ -238,6 +238,13 @@ set binlog_format="STATEMENT"; ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables drop temporary table t8; set @@binlog_format=@org_binlog_format; +set @@session.binlog_format=default; +drop temporary table if exists t9; +Warnings: +Note 1051 Unknown table 'test.t9' +set session binlog_format=default; +create temporary table t9 (i int); +*** Must be no DROP logged for t9 when there was no CREATE, at disconnect too *** include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# @@ -248,5 +255,9 @@ master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `test`; create temporary table t7 (a int) master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`t7` /* generated by server */ +master-bin.000001 # Gtid # # GTID #-#-# +master-bin.000001 # Query # # use `test`; create temporary table t9 (i int) +master-bin.000001 # Gtid # # GTID #-#-# +master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t9` drop table t2; include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/create_or_replace_row.result b/mysql-test/suite/rpl/r/create_or_replace_row.result index 8f032107db9522cbc4a08d293c3136e50394622b..cbb47cc4aba12c641952d15f33feaadc5bf03b91 100644 --- a/mysql-test/suite/rpl/r/create_or_replace_row.result +++ b/mysql-test/suite/rpl/r/create_or_replace_row.result @@ -260,6 +260,13 @@ set binlog_format="STATEMENT"; ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables drop temporary table t8; set @@binlog_format=@org_binlog_format; +set @@session.binlog_format=default; +drop temporary table if exists t9; +Warnings: +Note 1051 Unknown table 'test.t9' +set session binlog_format=default; +create temporary table t9 (i int); +*** Must be no DROP logged for t9 when there was no CREATE, at disconnect too *** include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# diff --git a/mysql-test/suite/rpl/r/create_or_replace_statement.result b/mysql-test/suite/rpl/r/create_or_replace_statement.result index 7bdbc64e9f2e48056c222f769aa40fe78576f37e..6b47fafbe234727e97bf133804c95eb7bb7b00c6 100644 --- a/mysql-test/suite/rpl/r/create_or_replace_statement.result +++ b/mysql-test/suite/rpl/r/create_or_replace_statement.result @@ -230,6 +230,13 @@ set binlog_format="STATEMENT"; ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables drop temporary table t8; set @@binlog_format=@org_binlog_format; +set @@session.binlog_format=default; +drop temporary table if exists t9; +Warnings: +Note 1051 Unknown table 'test.t9' +set session binlog_format=default; +create temporary table t9 (i int); +*** Must be no DROP logged for t9 when there was no CREATE, at disconnect too *** include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# @@ -240,5 +247,9 @@ master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # use `test`; create temporary table t7 (a int) master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`t7` /* generated by server */ +master-bin.000001 # Gtid # # GTID #-#-# +master-bin.000001 # Query # # use `test`; create temporary table t9 (i int) +master-bin.000001 # Gtid # # GTID #-#-# +master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t9` drop table t2; include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/kill_race_condition.result b/mysql-test/suite/rpl/r/kill_race_condition.result index e4e347dc7865225b7fcbb790fee8ca8c68f04c66..48fd65e3a7c1c5871cb41ef87b234717d570a4b4 100644 --- a/mysql-test/suite/rpl/r/kill_race_condition.result +++ b/mysql-test/suite/rpl/r/kill_race_condition.result @@ -1,13 +1,16 @@ include/master-slave.inc [connection master] -set global debug_dbug='d,rows_log_event_before_open_table'; -set debug_sync='now WAIT_FOR before_open_table'; create table t1 (a int); +set global debug_dbug='d,rows_log_event_before_open_table'; insert t1 values (1),(2),(3); +set debug_sync='now WAIT_FOR before_open_table'; kill slave_sql_thread; set debug_sync='now SIGNAL go_ahead_sql'; +include/wait_for_slave_sql_error.inc [errno=1927] +Last_SQL_Error = Error executing row event: 'Connection was killed' set global debug_dbug=''; set debug_sync='RESET'; drop table t1; -start slave; +include/start_slave.inc +Last_SQL_Error = include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/mdev_17588.result b/mysql-test/suite/rpl/r/mdev_17588.result new file mode 100644 index 0000000000000000000000000000000000000000..fea28a311b40f50bb6f0395b1b36b76a0b9027c9 --- /dev/null +++ b/mysql-test/suite/rpl/r/mdev_17588.result @@ -0,0 +1,32 @@ +include/master-slave.inc +[connection master] +create table t1 (a int) engine=innodb; +create table t2 (a int); +create table t3 (a int) engine=innodb; +include/save_master_gtid.inc +include/wait_for_slave_sql_error.inc [errno=1286] +Last_Error = 'Error 'Unknown storage engine 'innodb'' on query. Default database: 'test'. Query: 'create table t1 (a int) engine=innodb'' +STOP SLAVE IO_THREAD; +include/wait_for_slave_to_stop.inc +SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; +include/start_slave.inc +include/sync_with_master_gtid.inc +show tables; +Tables_in_test +t2 +show create table t2; +Table Create Table +t2 CREATE TABLE `t2` ( + `a` int(11) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +show create table t1; +ERROR 42S02: Table 'test.t1' doesn't exist +show create table t3; +ERROR 42S02: Table 'test.t3' doesn't exist +drop table if exists t1; +drop table if exists t2; +drop table if exists t3; +include/save_master_gtid.inc +include/sync_with_master_gtid.inc +CALL mtr.add_suppression('Slave: Unknown storage engine .* Error_code: 1286'); +include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/rpl_blackhole_row_annotate.result b/mysql-test/suite/rpl/r/rpl_blackhole_row_annotate.result new file mode 100644 index 0000000000000000000000000000000000000000..20ca37322dcadd6041075fa3c164573b6d4bf7b3 --- /dev/null +++ b/mysql-test/suite/rpl/r/rpl_blackhole_row_annotate.result @@ -0,0 +1,434 @@ +include/master-slave.inc +[connection master] +SET timestamp=1000000000; +RESET MASTER; +SET timestamp=1000000000; +RESET MASTER; +CREATE TABLE t1 (a INT, b INT, c INT); +CREATE TABLE t2 (a INT, b INT, c INT); +ALTER TABLE t1 ENGINE=BLACKHOLE; +INSERT INTO t2 VALUES (1,9,1), (2,9,2), (3,9,3), (4,9,4); +[on master] +INSERT INTO t1 VALUES (1,1,1),(2,1,2),(3,1,3),(4,1,4); +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 1; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +DELETE FROM t1 WHERE a % 2 = 0 AND b = 1; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +INSERT INTO t1 SELECT * FROM t2; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +ALTER TABLE t1 ADD PRIMARY KEY pk_t1 (a,b); +[on master] +INSERT INTO t1 VALUES (1,2,1),(2,2,2),(3,2,3),(4,2,4); +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 2; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +DELETE FROM t1 WHERE a % 2 = 0 AND b = 2; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +ALTER TABLE t1 DROP PRIMARY KEY, ADD KEY key_t1 (a); +[on master] +INSERT INTO t1 VALUES (1,3,1),(2,3,2),(3,3,3),(4,3,4); +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 3; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +[on master] +DELETE FROM t1 WHERE a % 2 = 0 AND b = 3; +[on slave] +# Expect 0 +SELECT COUNT(*) FROM t1; +COUNT(*) +0 +>>> Something was written to binary log <<< +DROP TABLE t1,t2; +FLUSH LOGS; +show binlog events in 'slave-bin.000001' from ; +Log_name Pos Event_type Server_id End_log_pos Info +slave-bin.000001 # Gtid_list 2 # [] +slave-bin.000001 # Binlog_checkpoint 2 # slave-bin.000001 +slave-bin.000001 # Gtid 1 # GTID 0-1-1 +slave-bin.000001 # Query 1 # use `test`; CREATE TABLE t1 (a INT, b INT, c INT) +slave-bin.000001 # Gtid 1 # GTID 0-1-2 +slave-bin.000001 # Query 1 # use `test`; CREATE TABLE t2 (a INT, b INT, c INT) +slave-bin.000001 # Gtid 2 # GTID 0-2-3 +slave-bin.000001 # Query 2 # use `test`; ALTER TABLE t1 ENGINE=BLACKHOLE +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-3 +slave-bin.000001 # Annotate_rows 1 # INSERT INTO t2 VALUES (1,9,1), (2,9,2), (3,9,3), (4,9,4) +slave-bin.000001 # Table_map 1 # table_id: # (test.t2) +slave-bin.000001 # Write_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-4 +slave-bin.000001 # Annotate_rows 1 # INSERT INTO t1 VALUES (1,1,1),(2,1,2),(3,1,3),(4,1,4) +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Write_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-5 +slave-bin.000001 # Annotate_rows 1 # UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 1 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Update_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-6 +slave-bin.000001 # Annotate_rows 1 # DELETE FROM t1 WHERE a % 2 = 0 AND b = 1 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Delete_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-7 +slave-bin.000001 # Annotate_rows 1 # INSERT INTO t1 SELECT * FROM t2 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Write_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # GTID 0-1-8 +slave-bin.000001 # Query 1 # use `test`; ALTER TABLE t1 ADD PRIMARY KEY pk_t1 (a,b) +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-9 +slave-bin.000001 # Annotate_rows 1 # INSERT INTO t1 VALUES (1,2,1),(2,2,2),(3,2,3),(4,2,4) +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Write_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-10 +slave-bin.000001 # Annotate_rows 1 # UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 2 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Update_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-11 +slave-bin.000001 # Annotate_rows 1 # DELETE FROM t1 WHERE a % 2 = 0 AND b = 2 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Delete_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # GTID 0-1-12 +slave-bin.000001 # Query 1 # use `test`; ALTER TABLE t1 DROP PRIMARY KEY, ADD KEY key_t1 (a) +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-13 +slave-bin.000001 # Annotate_rows 1 # INSERT INTO t1 VALUES (1,3,1),(2,3,2),(3,3,3),(4,3,4) +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Write_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-14 +slave-bin.000001 # Annotate_rows 1 # UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 3 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Update_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # BEGIN GTID 0-1-15 +slave-bin.000001 # Annotate_rows 1 # DELETE FROM t1 WHERE a % 2 = 0 AND b = 3 +slave-bin.000001 # Table_map 1 # table_id: # (test.t1) +slave-bin.000001 # Delete_rows_v1 1 # table_id: # flags: STMT_END_F +slave-bin.000001 # Query 1 # COMMIT +slave-bin.000001 # Gtid 1 # GTID 0-1-16 +slave-bin.000001 # Query 1 # use `test`; DROP TABLE IF EXISTS `t1`,`t2` /* generated by server */ +slave-bin.000001 # Rotate 2 # slave-bin.000002;pos=4 +/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/; +/*!40019 SET @@session.max_insert_delayed_threads=0*/; +/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; +DELIMITER /*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup +ROLLBACK/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Gtid list [] +# at # +#010909 4:46:40 server id # end_log_pos # Binlog checkpoint slave-bin.000001 +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-1 ddl +/*!100101 SET @@session.skip_parallel_replication=0*//*!*/; +/*!100001 SET @@session.gtid_domain_id=0*//*!*/; +/*!100001 SET @@session.server_id=1*//*!*/; +/*!100001 SET @@session.gtid_seq_no=1*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +use `test`/*!*/; +SET TIMESTAMP=1000000000/*!*/; +SET @@session.pseudo_thread_id=#/*!*/; +SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; +SET @@session.sql_mode=1342177280/*!*/; +SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/; +/*!\C latin1 *//*!*/; +SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/; +SET @@session.lc_time_names=0/*!*/; +SET @@session.collation_database=DEFAULT/*!*/; +CREATE TABLE t1 (a INT, b INT, c INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-2 ddl +/*!100001 SET @@session.gtid_seq_no=2*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +CREATE TABLE t2 (a INT, b INT, c INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-2-3 ddl +/*!100001 SET @@session.server_id=2*//*!*/; +/*!100001 SET @@session.gtid_seq_no=3*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +ALTER TABLE t1 ENGINE=BLACKHOLE +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-3 trans +/*!100001 SET @@session.server_id=1*//*!*/; +/*!100001 SET @@session.gtid_seq_no=3*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> INSERT INTO t2 VALUES (1,9,1), (2,9,2), (3,9,3), (4,9,4) +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t2` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-4 trans +/*!100001 SET @@session.gtid_seq_no=4*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> INSERT INTO t1 VALUES (1,1,1),(2,1,2),(3,1,3),(4,1,4) +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-5 trans +/*!100001 SET @@session.gtid_seq_no=5*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 1 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Update_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-6 trans +/*!100001 SET @@session.gtid_seq_no=6*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> DELETE FROM t1 WHERE a % 2 = 0 AND b = 1 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-7 trans +/*!100001 SET @@session.gtid_seq_no=7*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> INSERT INTO t1 SELECT * FROM t2 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-8 ddl +/*!100001 SET @@session.gtid_seq_no=8*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +ALTER TABLE t1 ADD PRIMARY KEY pk_t1 (a,b) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-9 trans +/*!100001 SET @@session.gtid_seq_no=9*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> INSERT INTO t1 VALUES (1,2,1),(2,2,2),(3,2,3),(4,2,4) +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-10 trans +/*!100001 SET @@session.gtid_seq_no=10*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 2 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Update_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-11 trans +/*!100001 SET @@session.gtid_seq_no=11*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> DELETE FROM t1 WHERE a % 2 = 0 AND b = 2 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-12 ddl +/*!100001 SET @@session.gtid_seq_no=12*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +ALTER TABLE t1 DROP PRIMARY KEY, ADD KEY key_t1 (a) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-13 trans +/*!100001 SET @@session.gtid_seq_no=13*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> INSERT INTO t1 VALUES (1,3,1),(2,3,2),(3,3,3),(4,3,4) +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-14 trans +/*!100001 SET @@session.gtid_seq_no=14*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 3 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Update_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-15 trans +/*!100001 SET @@session.gtid_seq_no=15*//*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Annotate_rows: +#Q> DELETE FROM t1 WHERE a % 2 = 0 AND b = 3 +#010909 4:46:40 server id # end_log_pos # Table_map: `test`.`t1` mapped to number # +# at # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # GTID 0-1-16 ddl +/*!100001 SET @@session.gtid_seq_no=16*//*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +DROP TABLE IF EXISTS `t1`,`t2` /* generated by server */ +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Rotate to slave-bin.000002 pos: 4 +DELIMITER ; +# End of log file +ROLLBACK /* added by mysqlbinlog */; +/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; +/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/; +include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result b/mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result index da807748ceea8c440988656b78a152b92509af7b..d79b246c8d61eb67430025d07ddac3f79dab0092 100644 --- a/mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result +++ b/mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result @@ -89,9 +89,6 @@ Warnings: Note 1051 Unknown table 'test.tt_xx_1' -b-b-b-b-b-b-b-b-b-b-b- >> Drop-Temp-If-Xe-Temp << -b-b-b-b-b-b-b-b-b-b-b- include/show_binlog_events.inc -Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-Xe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TXe-Temp'; @@ -112,7 +109,7 @@ Note 1051 Unknown table 'test.tt_1' include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-TXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-NXe-Temp'; @@ -134,8 +131,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-NXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TN-Temp'; @@ -291,7 +286,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -314,8 +308,6 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -368,7 +360,7 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -391,8 +383,8 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -454,7 +446,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -483,8 +474,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_1` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -801,7 +790,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -826,8 +814,6 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -882,7 +868,7 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -907,8 +893,8 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -972,7 +958,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -1003,8 +988,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_1` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- diff --git a/mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result b/mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result index 05b2c04e7ba161d67bc4da777c86369835e00157..ec6d89551ae222f17535433659a4ecf797ee0d60 100644 --- a/mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result +++ b/mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result @@ -83,9 +83,6 @@ Warnings: Note 1051 Unknown table 'test.tt_xx_1' -b-b-b-b-b-b-b-b-b-b-b- >> Drop-Temp-If-Xe-Temp << -b-b-b-b-b-b-b-b-b-b-b- include/show_binlog_events.inc -Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-Xe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TXe-Temp'; @@ -101,9 +98,6 @@ Warnings: Note 1051 Unknown table 'test.tt_1' -b-b-b-b-b-b-b-b-b-b-b- >> Drop-Temp-If-TXe-Temp << -b-b-b-b-b-b-b-b-b-b-b- include/show_binlog_events.inc -Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-TXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-NXe-Temp'; @@ -119,9 +113,6 @@ Warnings: Note 1051 Unknown table 'test.tt_1' -b-b-b-b-b-b-b-b-b-b-b- >> Drop-Temp-If-NXe-Temp << -b-b-b-b-b-b-b-b-b-b-b- include/show_binlog_events.inc -Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-NXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TN-Temp'; @@ -264,7 +255,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -289,8 +279,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -344,7 +332,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -369,8 +356,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -424,7 +409,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -449,8 +433,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -755,7 +737,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -782,8 +763,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -839,7 +818,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -866,8 +844,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -923,7 +899,6 @@ Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -950,8 +925,6 @@ master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Table_map # # table_id: # (test.tt_xx_1) master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- diff --git a/mysql-test/suite/rpl/r/rpl_row_drop_temp_table.result b/mysql-test/suite/rpl/r/rpl_row_drop_temp_table.result new file mode 100644 index 0000000000000000000000000000000000000000..15b4d396522d944e4975e9a7a63312a608cf45a8 --- /dev/null +++ b/mysql-test/suite/rpl/r/rpl_row_drop_temp_table.result @@ -0,0 +1,36 @@ +include/master-slave.inc +[connection master] +[connection slave] +SET GLOBAL read_only=1; +[connection master] +CREATE PROCEDURE testproc() +BEGIN +DROP TEMPORARY TABLE IF EXISTS t1_tmp; +DROP TEMPORARY TABLE IF EXISTS t2_tmp; +CREATE TEMPORARY TABLE IF NOT EXISTS t1_tmp ( t1 varchar(400) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8; +CREATE TEMPORARY TABLE IF NOT EXISTS t2_tmp ( t2 varchar(16) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +END| +SET GLOBAL read_only=1; +CALL testproc(); +******** None of the above DROP TEMPORARY TABLE statement should be found in binary log ******** +include/show_binlog_events.inc +Log_name Pos Event_type Server_id End_log_pos Info +master-bin.000001 # Gtid # # GTID #-#-# +master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `testproc`() +BEGIN +DROP TEMPORARY TABLE IF EXISTS t1_tmp; +DROP TEMPORARY TABLE IF EXISTS t2_tmp; +CREATE TEMPORARY TABLE IF NOT EXISTS t1_tmp ( t1 varchar(400) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8; +CREATE TEMPORARY TABLE IF NOT EXISTS t2_tmp ( t2 varchar(16) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +END +SELECT @@read_only; +@@read_only +1 +======== CLEAN UP ========= +[connection master] +DROP TEMPORARY TABLE t1_tmp; +DROP TEMPORARY TABLE t2_tmp; +DROP PROCEDURE testproc; +SET GLOBAL read_only=0; +SET GLOBAL read_only=0; +include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/rpl_semi_sync_skip_repl.result b/mysql-test/suite/rpl/r/rpl_semi_sync_skip_repl.result index 4762ac8dd07e27aa5de3bdecc6b4c76277e91b52..272263bc2881df143279c0cf51ea11ba33ef1838 100644 --- a/mysql-test/suite/rpl/r/rpl_semi_sync_skip_repl.result +++ b/mysql-test/suite/rpl/r/rpl_semi_sync_skip_repl.result @@ -5,19 +5,22 @@ SET @@GLOBAL.rpl_semi_sync_master_enabled = 1; SET @@GLOBAL.rpl_semi_sync_master_timeout=100; include/stop_slave.inc SET @@GLOBAL.replicate_events_marked_for_skip=FILTER_ON_MASTER; -SET @@GLOBAL. rpl_semi_sync_slave_enabled = 1; +SET @@GLOBAL.rpl_semi_sync_slave_enabled = 1; include/start_slave.inc CREATE TABLE t1 (a INT) ENGINE=innodb; -SET @@GLOBAL.debug_dbug= "d,dbug_master_binlog_over_2GB"; +SET @@GLOBAL.debug_dbug="d,dbug_master_binlog_over_2GB"; SET @@SESSION.skip_replication=1; INSERT INTO t1 SET a=1; SET @@SESSION.skip_replication=0; INSERT INTO t1 SET a=0; SET @@GLOBAL.debug_dbug=""; -SET @@GLOBAL. rpl_semi_sync_master_timeout = 10000; -SET @@GLOBAL. rpl_semi_sync_master_enabled = 0; +FLUSH LOGS; +SET @@GLOBAL.debug_dbug=@@GLOBAL.debug_dbug; +SET @@GLOBAL.rpl_semi_sync_master_timeout = 10000; +SET @@GLOBAL.rpl_semi_sync_master_enabled = 0; DROP TABLE t1; include/stop_slave.inc -SET @@GLOBAL. rpl_semi_sync_slave_enabled = 0; +SET @@GLOBAL.rpl_semi_sync_slave_enabled = 0; SET @@GLOBAL.replicate_events_marked_for_skip = REPLICATE; +include/start_slave.inc include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/rpl_semi_sync_uninstall_plugin.result b/mysql-test/suite/rpl/r/rpl_semi_sync_uninstall_plugin.result index 36d862dedce4a9407f74cd4e8dd6803acdc8e733..abba229aea0ba96eee99b931e478cefb71c6f158 100644 --- a/mysql-test/suite/rpl/r/rpl_semi_sync_uninstall_plugin.result +++ b/mysql-test/suite/rpl/r/rpl_semi_sync_uninstall_plugin.result @@ -25,10 +25,6 @@ select plugin_name,plugin_status from information_schema.plugins where plugin_na plugin_name plugin_status rpl_semi_sync_slave DELETED [connection master] -show global status like "Slave%_connect%"; -Variable_name Value -Slave_connections 2 -Slaves_connected 1 UNINSTALL PLUGIN rpl_semi_sync_master; Warnings: Warning 1620 Plugin is busy and will be uninstalled on shutdown diff --git a/mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result b/mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result index 9dc86c0bfa762885bdccaf608155872ebe134581..0cad8f122de9a3a798b9e0235860cdb0d6b08478 100644 --- a/mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result +++ b/mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result @@ -89,9 +89,6 @@ Warnings: Note 1051 Unknown table 'test.tt_xx_1' -b-b-b-b-b-b-b-b-b-b-b- >> Drop-Temp-If-Xe-Temp << -b-b-b-b-b-b-b-b-b-b-b- include/show_binlog_events.inc -Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-Xe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TXe-Temp'; @@ -112,7 +109,7 @@ Note 1051 Unknown table 'test.tt_1' include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-TXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-NXe-Temp'; @@ -134,8 +131,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # GTID #-#-# master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` /* generated by server */ -master-bin.000001 # Gtid # # GTID #-#-# -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -e-e-e-e-e-e-e-e-e-e-e- >> Drop-Temp-If-NXe-Temp << -e-e-e-e-e-e-e-e-e-e-e- SET @commands= 'Drop-Temp-TN-Temp'; @@ -291,7 +286,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -314,8 +308,6 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -368,7 +360,7 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -391,8 +383,8 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -454,7 +446,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -483,8 +474,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_1` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Xid # # COMMIT /* XID */ -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp C << -e-e-e-e-e-e-e-e-e-e-e- @@ -801,7 +790,6 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -826,8 +814,6 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_xx_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -882,7 +868,7 @@ include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -907,8 +893,8 @@ master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_1() VALUES (1) master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2`,`test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1`,`test`.`tt_1` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_2` /* generated by server */ +master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_tmp_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -972,7 +958,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_2` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- @@ -1003,8 +988,6 @@ master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`nt_tmp_1` / master-bin.000001 # Query # # COMMIT master-bin.000001 # Gtid # # BEGIN GTID #-#-# master-bin.000001 # Query # # use `test`; INSERT INTO tt_xx_1() VALUES (1) -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ -master-bin.000001 # Query # # DROP TEMPORARY TABLE IF EXISTS `test`.`tt_1` /* generated by server */ master-bin.000001 # Query # # ROLLBACK -e-e-e-e-e-e-e-e-e-e-e- >> B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp R << -e-e-e-e-e-e-e-e-e-e-e- diff --git a/mysql-test/suite/rpl/t/create_or_replace.inc b/mysql-test/suite/rpl/t/create_or_replace.inc index 7d0dc487061cd3827eb700f5ec4577191715a675..35a6ead60ca7ecaa482bf02a57d48826ff4eb948 100644 --- a/mysql-test/suite/rpl/t/create_or_replace.inc +++ b/mysql-test/suite/rpl/t/create_or_replace.inc @@ -205,6 +205,19 @@ set binlog_format="STATEMENT"; drop temporary table t8; set @@binlog_format=@org_binlog_format; +# MDEV-20091: +# 1. No DROP should be logged for non-existing tmp table, nor +# 2. at the connection close when its creation has not been logged. +set @@session.binlog_format=default; +drop temporary table if exists t9; + +--connect(con1,localhost,root,,) +set session binlog_format=default; +create temporary table t9 (i int); +--echo *** Must be no DROP logged for t9 when there was no CREATE, at disconnect too *** +--disconnect con1 + +--connection server_1 --source include/show_binlog_events.inc # Clean up diff --git a/mysql-test/suite/rpl/t/kill_race_condition.test b/mysql-test/suite/rpl/t/kill_race_condition.test index 4268c12cdbf40b5f7e522cd69197ee8873a3ebfb..0f3b44864fedfe1e1a56986ae6b3084ccf53e063 100644 --- a/mysql-test/suite/rpl/t/kill_race_condition.test +++ b/mysql-test/suite/rpl/t/kill_race_condition.test @@ -2,27 +2,34 @@ source include/have_debug_sync.inc; source include/have_binlog_format_row.inc; source include/master-slave.inc; +connection master; +create table t1 (a int); +--sync_slave_with_master + connection slave; set global debug_dbug='d,rows_log_event_before_open_table'; -send set debug_sync='now WAIT_FOR before_open_table'; connection master; -create table t1 (a int); insert t1 values (1),(2),(3); connection slave; -reap; +set debug_sync='now WAIT_FOR before_open_table'; let $a=`select id from information_schema.processlist where state='debug sync point: now'`; replace_result $a slave_sql_thread; eval kill $a; set debug_sync='now SIGNAL go_ahead_sql'; +--let $slave_sql_errno= 1927 +--source include/wait_for_slave_sql_error.inc +let $error= query_get_value(SHOW SLAVE STATUS, Last_SQL_Error, 1); +--echo Last_SQL_Error = $error set global debug_dbug=''; set debug_sync='RESET'; - connection master; drop table t1; connection slave; -start slave; +--source include/start_slave.inc +let $error= query_get_value(SHOW SLAVE STATUS, Last_SQL_Error, 1); +--echo Last_SQL_Error = $error source include/rpl_end.inc; diff --git a/mysql-test/suite/rpl/t/mdev_17588-slave.opt b/mysql-test/suite/rpl/t/mdev_17588-slave.opt new file mode 100644 index 0000000000000000000000000000000000000000..d73dbeca51ad588b984f1ec7b2001df0c0a5cdc3 --- /dev/null +++ b/mysql-test/suite/rpl/t/mdev_17588-slave.opt @@ -0,0 +1 @@ +--loose-disable-innodb --replicate-ignore-table=test.t3 diff --git a/mysql-test/suite/rpl/t/mdev_17588.test b/mysql-test/suite/rpl/t/mdev_17588.test new file mode 100644 index 0000000000000000000000000000000000000000..e9a340cbd253df48237ade62517522ec472a06cf --- /dev/null +++ b/mysql-test/suite/rpl/t/mdev_17588.test @@ -0,0 +1,39 @@ +--source include/master-slave.inc +--source include/have_innodb.inc + +--connection master +create table t1 (a int) engine=innodb; +create table t2 (a int); +create table t3 (a int) engine=innodb; +--source include/save_master_gtid.inc + +--connection slave +# Using ER_UNKNOWN_STORAGE_ENGINE wont work +let $slave_sql_errno= 1286; +--source include/wait_for_slave_sql_error.inc +--let $status_items= Last_Error +--source include/show_slave_status.inc +STOP SLAVE IO_THREAD; +source include/wait_for_slave_to_stop.inc; +SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; +--source include/start_slave.inc +--source include/sync_with_master_gtid.inc +show tables; +show create table t2; +--error ER_NO_SUCH_TABLE +show create table t1; +--error ER_NO_SUCH_TABLE +show create table t3; + +--connection master +drop table if exists t1; +drop table if exists t2; +drop table if exists t3; +--source include/save_master_gtid.inc + +--connection slave +--source include/sync_with_master_gtid.inc + + +CALL mtr.add_suppression('Slave: Unknown storage engine .* Error_code: 1286'); +--source include/rpl_end.inc diff --git a/mysql-test/suite/rpl/t/rpl_blackhole.test b/mysql-test/suite/rpl/t/rpl_blackhole.test index 76b2e2421c9c9da970da4083bc2213a2ff1180ab..9128382d12baae53c300ece9ed0426cc596753c9 100644 --- a/mysql-test/suite/rpl/t/rpl_blackhole.test +++ b/mysql-test/suite/rpl/t/rpl_blackhole.test @@ -20,81 +20,6 @@ source include/master-slave.inc; call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT"); -# We start with no primary key -CREATE TABLE t1 (a INT, b INT, c INT); -CREATE TABLE t2 (a INT, b INT, c INT); +source extra/rpl_tests/rpl_blackhole_basic.test; -sync_slave_with_master; -ALTER TABLE t1 ENGINE=BLACKHOLE; - -connection master; -INSERT INTO t2 VALUES (1,9,1), (2,9,2), (3,9,3), (4,9,4); -sync_slave_with_master; - -# Test insert, no primary key -let $statement = INSERT INTO t1 VALUES (1,1,1),(2,1,2),(3,1,3),(4,1,4); -source extra/rpl_tests/rpl_blackhole.test; - -# Test update, no primary key -let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 1; -source extra/rpl_tests/rpl_blackhole.test; - -# Test delete, no primary key -let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 1; -source extra/rpl_tests/rpl_blackhole.test; - -# Test INSERT-SELECT into Blackhole, no primary key -let $statement = INSERT INTO t1 SELECT * FROM t2; -source extra/rpl_tests/rpl_blackhole.test; - -# -# The MASTER has MyISAM as the engine for both tables. The SLAVE has Blackhole -# on t1 (transactional engine) and MyISAM on t2 (non-transactional engine). -# -# In MIXED mode, the command "INSERT INTO t2 SELECT * FROM t1" is logged as -# statement on the master. On the slave, it is tagged as unsafe because the -# statement mixes both transactional and non-transactional engines and as such -# its changes are logged as rows. However, due to the nature of the blackhole -# engine, no rows are returned and thus any chain replication would make the -# next master on the chain diverge. -# -# Fo this reason, we have disabled the statement. -# -# Test INSERT-SELECT from Blackhole, no primary key -# let $statement = INSERT INTO t2 SELECT * FROM t1; -# source extra/rpl_tests/rpl_blackhole.test; -# - -connection master; -ALTER TABLE t1 ADD PRIMARY KEY pk_t1 (a,b); - -# Test insert, primary key -let $statement = INSERT INTO t1 VALUES (1,2,1),(2,2,2),(3,2,3),(4,2,4); -source extra/rpl_tests/rpl_blackhole.test; - -# Test update, primary key -let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 2; -source extra/rpl_tests/rpl_blackhole.test; - -# Test delete, primary key -let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 2; -source extra/rpl_tests/rpl_blackhole.test; - -connection master; -ALTER TABLE t1 DROP PRIMARY KEY, ADD KEY key_t1 (a); - -# Test insert, key -let $statement = INSERT INTO t1 VALUES (1,3,1),(2,3,2),(3,3,3),(4,3,4); -source extra/rpl_tests/rpl_blackhole.test; - -# Test update, key -let $statement = UPDATE t1 SET c = 2*c WHERE a % 2 = 0 AND b = 3; -source extra/rpl_tests/rpl_blackhole.test; - -# Test delete, key -let $statement = DELETE FROM t1 WHERE a % 2 = 0 AND b = 3; -source extra/rpl_tests/rpl_blackhole.test; - -connection master; -DROP TABLE t1,t2; --source include/rpl_end.inc diff --git a/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-master.opt b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-master.opt new file mode 100644 index 0000000000000000000000000000000000000000..91302791099998718084823f422cb21c6c29bb67 --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-master.opt @@ -0,0 +1 @@ +--binlog_annotate_row_events --timezone=GMT-3 diff --git a/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-slave.opt b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-slave.opt new file mode 100644 index 0000000000000000000000000000000000000000..7ac6a84faa74512f3e3e7fa2543120ca1bcdfd78 --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate-slave.opt @@ -0,0 +1 @@ +--binlog_annotate_row_events --replicate_annotate_row_events diff --git a/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate.test b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate.test new file mode 100644 index 0000000000000000000000000000000000000000..77384d91475b06abc7605b8c389863c502fab72c --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_blackhole_row_annotate.test @@ -0,0 +1,49 @@ +# ==== Purpose ==== +# +# Test verifies that when "replicate_annotate_row_events" are enabled on slave +# the DML operations on blackhole engine will be successful. It also ensures +# that Annotate events are logged into slave's binary log. +# +# ==== Implementation ==== +# +# Steps: +# 0 - Enable "replicate_annotate_row_events" on slave and do DML operations +# on master. +# 1 - Slave server will successfully apply the DML operations and it is in +# sync with master. +# 2 - Verify that the "show binlog events" prints all annotate events. +# 3 - Stream the slave's binary log using "mysqlbinlog" tool and verify +# that the Annotate events are being displayed. +# +# ==== References ==== +# +# MDEV-11094: Blackhole table updates on slave fail when row annotation is +# enabled + +source include/have_blackhole.inc; +source include/have_binlog_format_row.inc; +source include/binlog_start_pos.inc; +source include/master-slave.inc; + +SET timestamp=1000000000; +RESET MASTER; +connection slave; +SET timestamp=1000000000; +RESET MASTER; + +connection master; +source extra/rpl_tests/rpl_blackhole_basic.test; + +# Verify on slave. +connection slave; +FLUSH LOGS; +--replace_column 2 # 5 # +--replace_result $binlog_start_pos +--replace_regex /table_id: [0-9]+/table_id: #/ /\/\* xid=.* \*\//\/* xid= *\// +--eval show binlog events in 'slave-bin.000001' from $binlog_start_pos + +let $MYSQLD_DATADIR= `select @@datadir`; +--replace_regex /server id [0-9]*/server id #/ /server v [^ ]*/server v #.##.##/ /exec_time=[0-9]*/exec_time=#/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ +--exec $MYSQL_BINLOG --base64-output=decode-rows $MYSQLD_DATADIR/slave-bin.000001 + +source include/rpl_end.inc; diff --git a/mysql-test/suite/rpl/t/rpl_row_drop_temp_table.test b/mysql-test/suite/rpl/t/rpl_row_drop_temp_table.test new file mode 100644 index 0000000000000000000000000000000000000000..5484928f383fe7860114f092f76413a3e67884f3 --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_row_drop_temp_table.test @@ -0,0 +1,54 @@ +# ==== Purpose ==== +# +# Test verifies that plain DROP TEMPORARY TABLE IF EXISTS statements are not +# replicated during row based replication. +# +# ==== Implementation ==== +# +# Steps: +# 0 - Have a read_only master and slave. Binlog format should be "ROW". +# 1 - Create a procedure which executes DROP TEMPORARY TABLE IF EXISTS +# statements prior to CREATE TEMPORARY TABLE. +# 2 - Execute the procedure. +# 3 - Verify that the DROP TEMPORARY TABLE IF EXISTS statements within the +# procedure are not written to the binary log. +# +# ==== References ==== +# +# MDEV-20091: DROP TEMPORARY table is logged despite no CREATE was logged +# + +--source include/have_binlog_format_row.inc +--source include/have_innodb.inc +--source include/master-slave.inc + +--source include/rpl_connection_slave.inc +SET GLOBAL read_only=1; + +--source include/rpl_connection_master.inc +DELIMITER |; +CREATE PROCEDURE testproc() +BEGIN + DROP TEMPORARY TABLE IF EXISTS t1_tmp; + DROP TEMPORARY TABLE IF EXISTS t2_tmp; + CREATE TEMPORARY TABLE IF NOT EXISTS t1_tmp ( t1 varchar(400) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8; + CREATE TEMPORARY TABLE IF NOT EXISTS t2_tmp ( t2 varchar(16) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +END| +DELIMITER ;| +SET GLOBAL read_only=1; +CALL testproc(); +--echo ******** None of the above DROP TEMPORARY TABLE statement should be found in binary log ******** +--source include/show_binlog_events.inc +--sync_slave_with_master +SELECT @@read_only; + +--echo ======== CLEAN UP ========= +--source include/rpl_connection_master.inc +DROP TEMPORARY TABLE t1_tmp; +DROP TEMPORARY TABLE t2_tmp; +DROP PROCEDURE testproc; +SET GLOBAL read_only=0; +--sync_slave_with_master +SET GLOBAL read_only=0; + +--source include/rpl_end.inc diff --git a/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test b/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test index 678679f0cf13217e8a4264ff9dde6651d74c1b0d..a249043fa1977d00cdd509ea82356e3a74cada05 100644 --- a/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test +++ b/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test @@ -151,8 +151,7 @@ remove_file $MYSQLTEST_VARDIR/tmp/master.sql; --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --stop-position=$stop_position --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 --echo --- Test 4 Second Remote test -- ---exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql ---exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002 >> $MYSQLTEST_VARDIR/tmp/remote.sql +--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT --to-last-log master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql # Now that we have our file, lets get rid of the current database. # Cleanup the master and the slave and try to recreate. diff --git a/mysql-test/suite/rpl/t/rpl_semi_sync_skip_repl.test b/mysql-test/suite/rpl/t/rpl_semi_sync_skip_repl.test index 2f6da18067c6b5528d53a12dcf42d8cae4eebba6..8c00bae06cdd62d9cb46b04f2a21d50e1fd28dd3 100644 --- a/mysql-test/suite/rpl/t/rpl_semi_sync_skip_repl.test +++ b/mysql-test/suite/rpl/t/rpl_semi_sync_skip_repl.test @@ -16,29 +16,34 @@ source include/master-slave.inc; # Suppress warnings that might be generated during the test call mtr.add_suppression("Timeout waiting for reply of binlog"); ---let $sav_enabled_master=`SELECT @@GLOBAL.rpl_semi_sync_master_enabled ` ---let $sav_timeout_master=`SELECT @@GLOBAL.rpl_semi_sync_master_timeout ` +--let $sav_enabled_master=`SELECT @@GLOBAL.rpl_semi_sync_master_enabled` +--let $sav_timeout_master=`SELECT @@GLOBAL.rpl_semi_sync_master_timeout` SET @@GLOBAL.rpl_semi_sync_master_enabled = 1; SET @@GLOBAL.rpl_semi_sync_master_timeout=100; --connection slave +--let $sav_skip_marked_slave=`SELECT @@GLOBAL.replicate_events_marked_for_skip` +--let $sav_enabled_slave=`SELECT @@GLOBAL.rpl_semi_sync_slave_enabled` source include/stop_slave.inc; ---let $sav_skip_marked_slave=`SELECT @@GLOBAL.replicate_events_marked_for_skip ` SET @@GLOBAL.replicate_events_marked_for_skip=FILTER_ON_MASTER; ---let $sav_enabled_slave=`SELECT @@GLOBAL.rpl_semi_sync_slave_enabled ` -SET @@GLOBAL. rpl_semi_sync_slave_enabled = 1; - +SET @@GLOBAL.rpl_semi_sync_slave_enabled = 1; source include/start_slave.inc; --connection master CREATE TABLE t1 (a INT) ENGINE=innodb; # Make the following events as if they offset over 2GB from the beginning of binlog -SET @@GLOBAL.debug_dbug= "d,dbug_master_binlog_over_2GB"; +--let $sav_debug_dbug=@@GLOBAL.debug_dbug +SET @@GLOBAL.debug_dbug="d,dbug_master_binlog_over_2GB"; SET @@SESSION.skip_replication=1; INSERT INTO t1 SET a=1; SET @@SESSION.skip_replication=0; INSERT INTO t1 SET a=0; +SET @@GLOBAL.debug_dbug=""; + +# The current binlog is inconsistent so let's rotate it away +# to clean up simulation results. +FLUSH LOGS; --sync_slave_with_master @@ -46,17 +51,17 @@ INSERT INTO t1 SET a=0; # Clean up # --connection master -SET @@GLOBAL.debug_dbug=""; ---eval SET @@GLOBAL. rpl_semi_sync_master_timeout = $sav_timeout_master ---eval SET @@GLOBAL. rpl_semi_sync_master_enabled = $sav_enabled_master +--eval SET @@GLOBAL.debug_dbug=$sav_debug_dbug +--eval SET @@GLOBAL.rpl_semi_sync_master_timeout = $sav_timeout_master +--eval SET @@GLOBAL.rpl_semi_sync_master_enabled = $sav_enabled_master --connection master DROP TABLE t1; --sync_slave_with_master source include/stop_slave.inc; ---eval SET @@GLOBAL. rpl_semi_sync_slave_enabled = $sav_enabled_slave +--eval SET @@GLOBAL.rpl_semi_sync_slave_enabled = $sav_enabled_slave --eval SET @@GLOBAL.replicate_events_marked_for_skip = $sav_skip_marked_slave ---let $rpl_only_running_threads= 1 +source include/start_slave.inc; --source include/rpl_end.inc diff --git a/mysql-test/suite/rpl/t/rpl_semi_sync_uninstall_plugin.test b/mysql-test/suite/rpl/t/rpl_semi_sync_uninstall_plugin.test index 0f86789cced2cfde72b2b5213a852be5ddad4996..8bb0322d79b211d4cd18b55fc94f3fd75936ae35 100644 --- a/mysql-test/suite/rpl/t/rpl_semi_sync_uninstall_plugin.test +++ b/mysql-test/suite/rpl/t/rpl_semi_sync_uninstall_plugin.test @@ -68,8 +68,13 @@ select plugin_name,plugin_status from information_schema.plugins where plugin_na --echo [connection master] # The following is to catch errors if the next uninstall plugin would succeed -show global status like "Slave%_connect%"; - +let $slaves_connected_value= query_get_value(SHOW GLOBAL STATUS LIKE 'Slaves_connected', Value, 1); +if (`SELECT $slaves_connected_value <> 1`) +{ + SHOW GLOBAL STATUS LIKE 'Slave_connections'; + SHOW GLOBAL STATUS LIKE 'Slaves_connected'; + --die *** Unexpected number of connected slaves *** +} UNINSTALL PLUGIN rpl_semi_sync_master; select plugin_name,plugin_status from information_schema.plugins where plugin_name like 'rpl_%'; diff --git a/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit,32bit.rdiff b/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit,32bit.rdiff new file mode 100644 index 0000000000000000000000000000000000000000..cd9a004a6865aa4599581dbee4a2fd9d9574f430 --- /dev/null +++ b/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit,32bit.rdiff @@ -0,0 +1,11 @@ +--- mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit.result 2019-05-07 15:09:57.220599318 +0530 ++++ mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit.reject 2019-05-07 15:10:20.012718538 +0530 +@@ -1,5 +1,7 @@ + set global innodb_ft_result_cache_limit=5000000000; ++Warnings: ++Warning 1292 Truncated incorrect innodb_ft_result_cache_limit value: '5000000000' + select @@innodb_ft_result_cache_limit; + @@innodb_ft_result_cache_limit +-5000000000 ++4294967295 + set global innodb_ft_result_cache_limit=2000000000; diff --git a/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_64.result b/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit.result similarity index 100% rename from mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_64.result rename to mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit.result diff --git a/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_32.result b/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_32.result deleted file mode 100644 index b3bec1eecdd2a9b173f55b036470dbca4e9b09e8..0000000000000000000000000000000000000000 --- a/mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_32.result +++ /dev/null @@ -1,7 +0,0 @@ -set global innodb_ft_result_cache_limit=5000000000; -Warnings: -Warning 1292 Truncated incorrect innodb_ft_result_cache_limit value: '5000000000' -select @@innodb_ft_result_cache_limit; -@@innodb_ft_result_cache_limit -4294967295 -set global innodb_ft_result_cache_limit=2000000000; diff --git a/mysql-test/suite/sys_vars/r/sysvars_innodb,32bit,xtradb.rdiff b/mysql-test/suite/sys_vars/r/sysvars_innodb,32bit,xtradb.rdiff index 794e93a108bd499c7ce382127124ba89adf20cb5..8b8c69d05bfb4f34c12c52bdac52d816e69795d0 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_innodb,32bit,xtradb.rdiff +++ b/mysql-test/suite/sys_vars/r/sysvars_innodb,32bit,xtradb.rdiff @@ -1214,8 +1214,8 @@ COMMAND_LINE_ARGUMENT OPTIONAL VARIABLE_NAME INNODB_VERSION SESSION_VALUE NULL --GLOBAL_VALUE 5.6.44 -+GLOBAL_VALUE 5.6.43-84.3 +-GLOBAL_VALUE 5.6.45 ++GLOBAL_VALUE 5.6.44-86.0 GLOBAL_VALUE_ORIGIN COMPILE-TIME DEFAULT_VALUE NULL VARIABLE_SCOPE GLOBAL diff --git a/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff b/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff index 195eda13c52d437c090537f39045e49a1251e324..d5a5a0147f5ed252b48e3c7afb444f29621b3414 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff +++ b/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff @@ -684,8 +684,8 @@ COMMAND_LINE_ARGUMENT OPTIONAL VARIABLE_NAME INNODB_VERSION SESSION_VALUE NULL --GLOBAL_VALUE 5.6.44 -+GLOBAL_VALUE 5.6.43-84.3 +-GLOBAL_VALUE 5.6.45 ++GLOBAL_VALUE 5.6.44-86.0 GLOBAL_VALUE_ORIGIN COMPILE-TIME DEFAULT_VALUE NULL VARIABLE_SCOPE GLOBAL diff --git a/mysql-test/suite/sys_vars/r/sysvars_innodb.result b/mysql-test/suite/sys_vars/r/sysvars_innodb.result index 7d18ab15085965ff2ab4b0c45b0795e7b700960a..7c8ce321cb2a1dbfab820a2e32bac758347e9b3a 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_innodb.result +++ b/mysql-test/suite/sys_vars/r/sysvars_innodb.result @@ -2401,7 +2401,7 @@ READ_ONLY NO COMMAND_LINE_ARGUMENT OPTIONAL VARIABLE_NAME INNODB_VERSION SESSION_VALUE NULL -GLOBAL_VALUE 5.6.44 +GLOBAL_VALUE 5.6.45 GLOBAL_VALUE_ORIGIN COMPILE-TIME DEFAULT_VALUE NULL VARIABLE_SCOPE GLOBAL diff --git a/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_32.test b/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit.test similarity index 90% rename from mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_32.test rename to mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit.test index d9defc7447bac6d5da07ff98cc10afa203383860..b1ad2cd3821acd26d602f57ad2f75cf3797f05f7 100644 --- a/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_32.test +++ b/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit.test @@ -1,4 +1,4 @@ ---source include/have_32bit.inc +--source include/word_size.inc --source include/have_innodb.inc let $innodb_ft_result_cache_limit_orig=`select @@innodb_ft_result_cache_limit`; diff --git a/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_64.test b/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_64.test deleted file mode 100644 index 2606d2b5ca8167521c713bbdb93d80c5623ae032..0000000000000000000000000000000000000000 --- a/mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_64.test +++ /dev/null @@ -1,9 +0,0 @@ ---source include/have_64bit.inc ---source include/have_innodb.inc - -let $innodb_ft_result_cache_limit_orig=`select @@innodb_ft_result_cache_limit`; - -set global innodb_ft_result_cache_limit=5000000000; -select @@innodb_ft_result_cache_limit; - -eval set global innodb_ft_result_cache_limit=$innodb_ft_result_cache_limit_orig; diff --git a/mysql-test/suite/sys_vars/t/max_digest_length_basic.test b/mysql-test/suite/sys_vars/t/max_digest_length_basic.test index 38b493b3babb77109831d355f76811e3ba5f11c9..92a7417568ea06c73a8ebe0c2c297e062b01fca9 100644 --- a/mysql-test/suite/sys_vars/t/max_digest_length_basic.test +++ b/mysql-test/suite/sys_vars/t/max_digest_length_basic.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA --source include/not_embedded.inc diff --git a/mysql-test/suite/sys_vars/t/pfs_digests_size_basic.test b/mysql-test/suite/sys_vars/t/pfs_digests_size_basic.test index 31692081053825c18e8572f7509f2a29fc2c06f0..6b48ba95102ca1052163d5be4d47b115137c563a 100644 --- a/mysql-test/suite/sys_vars/t/pfs_digests_size_basic.test +++ b/mysql-test/suite/sys_vars/t/pfs_digests_size_basic.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA --source include/not_embedded.inc --source include/have_perfschema.inc diff --git a/mysql-test/suite/sys_vars/t/pfs_max_digest_length_basic.test b/mysql-test/suite/sys_vars/t/pfs_max_digest_length_basic.test index cf87c1a7c688313c1112dc44140e9b282bded241..9a89f9aff9ea60bfc71a95ee511c13a53b1b8313 100644 --- a/mysql-test/suite/sys_vars/t/pfs_max_digest_length_basic.test +++ b/mysql-test/suite/sys_vars/t/pfs_max_digest_length_basic.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA --source include/not_embedded.inc --source include/have_perfschema.inc diff --git a/mysql-test/suite/sys_vars/t/pfs_session_connect_attrs_size_basic.test b/mysql-test/suite/sys_vars/t/pfs_session_connect_attrs_size_basic.test index c10700b890337c9234500c503ec49627ccb9a87f..378646b0fc95eec5bfcc368f867907372d5f320b 100644 --- a/mysql-test/suite/sys_vars/t/pfs_session_connect_attrs_size_basic.test +++ b/mysql-test/suite/sys_vars/t/pfs_session_connect_attrs_size_basic.test @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA --source include/not_embedded.inc --source include/have_perfschema.inc diff --git a/mysql-test/t/bootstrap.test b/mysql-test/t/bootstrap.test index 8508c6c9dc6a19fc55de892274f0820ebd086076..879d42be2d60c0187a9f73e6d0246ad20153f728 100644 --- a/mysql-test/t/bootstrap.test +++ b/mysql-test/t/bootstrap.test @@ -65,6 +65,15 @@ SELECT 'bug' as '' FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb' --error 1 --exec $MYSQLD_BOOTSTRAP_CMD --myisam_recover_options=NONE +# +# MDEV-19349 mysql_install_db: segfault at tmp_file_prefix check +# +--write_file $MYSQLTEST_VARDIR/tmp/1 +use test; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/1 >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/1 + --echo End of 5.5 tests --source include/not_windows_embedded.inc diff --git a/mysql-test/t/connect_debug.test b/mysql-test/t/connect_debug.test index 299b605b2cd081884532443115755bc561547da7..7a2f2872b795f6986d3fbeb4eb62e921097704b8 100644 --- a/mysql-test/t/connect_debug.test +++ b/mysql-test/t/connect_debug.test @@ -1,3 +1,4 @@ +source include/not_embedded.inc; source include/have_debug.inc; set @old_dbug=@@global.debug_dbug; @@ -10,3 +11,13 @@ create user 'bad' identified by 'worse'; --exec $MYSQL --default-auth=mysql_old_password --user=bad --password=worse set global debug_dbug=@old_dbug; drop user bad; + +# +# malicious server, invalid plugin name +# +set global debug_dbug='+d,auth_invalid_plugin'; +create user 'bad' identified by 'worse'; +--error 1 +--exec $MYSQL --default-auth=mysql_old_password --user=bad --password=worse 2>&1 +set global debug_dbug=@old_dbug; +drop user bad; diff --git a/mysql-test/t/ctype_utf8_def_upgrade.opt b/mysql-test/t/ctype_utf8_def_upgrade.opt new file mode 100644 index 0000000000000000000000000000000000000000..61a472b45c5cd47e65dd26b543055eb7346b53af --- /dev/null +++ b/mysql-test/t/ctype_utf8_def_upgrade.opt @@ -0,0 +1 @@ +--character-set-server=utf8 diff --git a/mysql-test/t/ctype_utf8_def_upgrade.test b/mysql-test/t/ctype_utf8_def_upgrade.test new file mode 100644 index 0000000000000000000000000000000000000000..4751faa0622dc37812b95012d43fadfc4a305062 --- /dev/null +++ b/mysql-test/t/ctype_utf8_def_upgrade.test @@ -0,0 +1,61 @@ +let $MYSQLD_DATADIR= `select @@datadir`; + +--echo # +--echo # Start of 10.1 tests +--echo # + +--echo # +--echo # MDEV-19675 Wrong charset is chosen when opening a pre-4.1 table +--echo # + +--echo # Test with a saved table from 3.23 + +SELECT @@character_set_database; +SET @@character_set_database="latin1"; +--copy_file std_data/host_old.frm $MYSQLD_DATADIR/test/t1.frm +--copy_file std_data/host_old.MYD $MYSQLD_DATADIR/test/t1.MYD +--copy_file std_data/host_old.MYI $MYSQLD_DATADIR/test/t1.MYI + +--error ER_GET_ERRNO +SELECT COUNT(*) FROM t1; +CHECK TABLE t1; +REPAIR TABLE t1; +REPAIR TABLE t1 USE_FRM; +SELECT COUNT(*) FROM t1; +CHECK TABLE t1; +SHOW CREATE TABLE t1; +DROP TABLE t1; +SET @@character_set_database=DEFAULT; + + +--echo # Now do the same, but doing 'ALTER DATABASE' to create the db.opt file, +--echo # instead of setting variables directly. + +--echo # Emulate a pre-4.1 database without db.opt +--mkdir $MYSQLD_DATADIR/db1 +SHOW CREATE DATABASE db1; +USE db1; +SELECT @@character_set_database, 'taken from defaults' AS comment; +USE test; +ALTER DATABASE db1 DEFAULT CHARACTER SET latin1; +USE db1; +SELECT @@character_set_database, 'taken from db.opt' AS comment; + +--copy_file std_data/host_old.frm $MYSQLD_DATADIR/db1/t1.frm +--copy_file std_data/host_old.MYD $MYSQLD_DATADIR/db1/t1.MYD +--copy_file std_data/host_old.MYI $MYSQLD_DATADIR/db1/t1.MYI + +--error ER_GET_ERRNO +SELECT COUNT(*) FROM t1; +REPAIR TABLE t1 USE_FRM; +SELECT COUNT(*) FROM t1; +CHECK TABLE t1; +SHOW CREATE TABLE t1; +DROP TABLE t1; + +DROP DATABASE db1; +USE test; + +--echo # +--echo # End of 10.1 tests +--echo # diff --git a/mysql-test/t/derived.test b/mysql-test/t/derived.test index 778d141b80fc9a46863ce23604b4c98ff5b21e94..470060d83dbbede265ff31e8d09a73d41acf462d 100644 --- a/mysql-test/t/derived.test +++ b/mysql-test/t/derived.test @@ -1,7 +1,4 @@ # Initialize ---disable_warnings -drop table if exists t1,t2,t3; ---enable_warnings set @save_derived_optimizer_switch=@@optimizer_switch; set optimizer_switch='derived_merge=off,derived_with_keys=off'; @@ -536,6 +533,10 @@ insert into t2 values(4),(5),(6); select x.id, message from (select id from t1) x left join (select id, 1 as message from t2) y on x.id=y.id where coalesce(message,0) <> 0; +explain extended +select x.id, message from (select id from t1) x left join +(select id, 1 as message from t2) y on x.id=y.id +where message <> 0; drop table t1,t2; --echo # diff --git a/mysql-test/t/derived_view.test b/mysql-test/t/derived_view.test index 1c0749346cae8da325c53e1f2a75a363321bfa86..ad0e0001b6bce59423b735d51010059e1cff0f7b 100644 --- a/mysql-test/t/derived_view.test +++ b/mysql-test/t/derived_view.test @@ -1934,3 +1934,297 @@ DROP TABLE t1, t2; # The following command must be the last one the file set optimizer_switch=@exit_optimizer_switch; set join_cache_level=@exit_join_cache_level; + +--echo # +--echo # Bug mdev-18479: EXPLAIN for query with many expensive derived +--echo # + +CREATE TABLE t1 +(id int auto_increment primary key, + uid int NOT NULL, + gp_id int NOT NULL, + r int NOT NULL +); + +INSERT INTO t1(uid,gp_id,r) VALUES +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1),(1,1,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1),(1,2,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1),(1,3,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1),(1,4,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1),(1,5,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1),(1,6,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1),(1,7,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1),(1,8,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1),(1,9,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1), +(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,10,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1),(1,11,1), +(1,11,1); + +CREATE TABLE t2 (id int) ; +INSERT INTO t2 VALUES (1); + +explain SELECT 1 FROM t2 JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_1 ON gp_1.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_2 ON gp_2.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id + JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_3 ON gp_3.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id + JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_4 ON gp_4.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id + JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_5 ON gp_5.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id + JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_6 ON gp_6.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p1 ON p1.r=1 AND p1.uid=t2.id + JOIN t1 p3 ON p3.r=3 AND p3.uid=t2.id + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + WHERE p1.gp_id=7) gp_7 ON gp_7.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_8 ON gp_8.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_9 ON gp_9.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_14 ON gp_14.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_15 ON gp_15.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + ) gp_16 ON gp_16.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + )gp_17 ON gp_17.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + )gp_18 ON gp_18.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + JOIN t1 p9 ON p9.r=9 AND p9.uid=t2.id + JOIN t1 p10 ON p10.r=10 AND p10.uid=t2.id + )gp_19 ON gp_19.id=t2.id +JOIN +(SELECT t2.id + FROM t2 + JOIN t1 p4 ON p4.r=4 AND p4.uid=t2.id + JOIN t1 p5 ON p5.r=5 AND p5.uid=t2.id + JOIN t1 p6 ON p6.r=6 AND p6.uid=t2.id + JOIN t1 p7 ON p7.r=7 AND p7.uid=t2.id + JOIN t1 p8 ON p8.r=8 AND p8.uid=t2.id + ) gp_20 ON gp_20.id=t2.id ; + +DROP TABLE t1, t2; + +--echo # +--echo # MDEV-19778: equality condition for mergeable view returning constants +--echo # in its columns and used as inner table of outer join +--echo # + +create table t1 (pk int, a int); +insert into t1 values (1,7), (2,3), (3,2), (4,3); +create table t2 (b int); +insert into t2 values (5), (1), (NULL), (3); +create table t3 (c int); +insert into t3 values (1), (8); + +create view v1 as +select 3 as d, t2.b from t2; + +let $q= +select * from t1 left join v1 on t1.pk <= 2 where t1.a=v1.d; +eval $q; +eval explain extended $q; + +let $q= +select * from t1 left join (select 3 as d, t2.b from t2) dt on t1.pk <= 2 + where t1.a=dt.d; +eval $q; +eval explain extended $q; + +let $q= +select * from t1 left join (v1,t3) on t1.pk <= 2 where t1.a=v1.d; +eval $q; +eval explain extended $q; + +drop view v1; +drop table t1,t2,t3; diff --git a/mysql-test/t/information_schema_parameters.test b/mysql-test/t/information_schema_parameters.test index 3f0b11cba5fc47f36817e8341e713fd6ac9eb148..0563941c17c9d841c3e7262d5f8c884bb78f2870 100644 --- a/mysql-test/t/information_schema_parameters.test +++ b/mysql-test/t/information_schema_parameters.test @@ -92,7 +92,7 @@ CREATE DATABASE i_s_parameters_test; USE i_s_parameters_test; delimiter //; -CREATE PROCEDURE testproc (OUT param1 INT) +CREATE PROCEDURE testproc (IN param1 INT) BEGIN SELECT 2+2 as param1; END; diff --git a/mysql-test/t/join.test b/mysql-test/t/join.test index 3d2a02e23466436e2c0d0f6c48d920f8559c0fba..632ee947940f62c08db89f6bfc33f5c557aeef38 100644 --- a/mysql-test/t/join.test +++ b/mysql-test/t/join.test @@ -1209,6 +1209,410 @@ CALL p1; DROP PROCEDURE p1; DROP TABLE t1,t2,t3,t4,t5; +--echo # +--echo # MDEV-19421: Embedding inner joins +--echo # + +create table t1 (a int); +insert into t1 values (7), (5), (3); +create table s1 (b int); +insert into s1 values (7), (5), (3); +create table t2 (a int); +insert into t2 values (5), (1), (7); +create table s2 (b int); +insert into s2 values (5), (1), (7); +create table t3 (a int); +insert into t3 values (2), (7), (3); +create table t4 (a int); +insert into t4 values (4), (7), (9), (5); + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a on t1.a=t2.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a on t1.a=t2.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a on t1.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 using(a) using(a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 using(a) using(a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 using(a) using(a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 on t1.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 left join t3 on t1.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 right join t3 on t1.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 join t3 on t2.a=t3.a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 left join t3 on t2.a=t3.a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join (t2 right join t3 on t2.a=t3.a); +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 left join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 right join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 left join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b, t2.a as t2_a, t3.a as t3_a +from s1 join t2 right join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b, t2.a as t2_a, t3.a as t3_a +from (s1 join t2) right join t3 using(a); +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 natural join t3; +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 natural left join t3; +eval explain extended $q; +eval $q; + +let $q= +select * +from s1 join t2 natural right join t3; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from t1 join t2 join t3 +where t1.a=t2.a and t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 left join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 left join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 right join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 join t4 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 left join t4 using(a); +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t3.a as t3_a, t4.a as t4_a +from s1 join s2 join t3 right join t4 using(a); +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 join t3 on t2.a=t3.a join t4; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 left join t3 on t2.a=t3.a join t4; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 on t2.a=t3.a join t4; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 join t3 using(a) join t4; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 left join t3 using(a) join t4; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t2 right join t3 using(a) join t4; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 left join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 left join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 right join t2 on t1.a=t2.a join t3 right join t4 on t3.a=t4.a; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 join t4 on t4.a=s1.b; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 left join t4 on t4.a=s1.b; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from s1 join t1 left join t2 on s1.b=t2.a join t3 right join t4 on t4.a=s1.b; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 left join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +eval explain extended $q; +eval $q; + +let $q= +select s1.b as s1_b, s2.b as s2_b, t1.a as t1_a, t2.a as t2_a, t3.a as t3_a +from s1 right join s2 on s1.b=s2.b join t1 right join t2 on t1.a=t2.a join t3; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from t1 join t2 right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1 join t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +let $q= +select t1.a as t1_a, t2.a as t2_a, t3.a as t3_a, t4.a as t4_a +from (t1, t2) right join t3 right join t4 on t3.a=t4.a on t2.a=t3.a; +eval explain extended $q; +eval $q; + +drop table t1,t2,t3,t4,s1,s2; + --echo # --echo # End of MariaDB 5.5 tests --echo # diff --git a/mysql-test/t/join_cache.test b/mysql-test/t/join_cache.test index 24dd637052c7ac3d15da0048d11f5a9a360f9cbe..48f129c676dd9c708301bda9779379fc186e72fd 100644 --- a/mysql-test/t/join_cache.test +++ b/mysql-test/t/join_cache.test @@ -967,6 +967,40 @@ SELECT City.Name, Country.Name, Country.PopulationBar FROM City,Country set join_cache_level=default; set join_buffer_size=default; + +--echo # +--echo # MDEV-17752: Plan changes from hash_index_merge to index_merge with new optimizer defaults +--echo # + +set @save_optimizer_use_condition_selectivity=@@optimizer_use_condition_selectivity; +set @save_use_stat_tables=@@use_stat_tables; +set optimizer_use_condition_selectivity=4; +set use_stat_tables='preferably'; + +use world; +set join_cache_level=4; +CREATE INDEX City_Name ON City(Name); + +--disable_result_log +ANALYZE TABLE City, Country; +--enable_result_log + +EXPLAIN +SELECT Country.Name, Country.Population, City.Name, City.Population + FROM Country LEFT JOIN City + ON City.Country=Country.Code AND City.Population > 5000000 + WHERE Country.Name LIKE 'C%' AND Country.Population > 10000000; + +EXPLAIN +SELECT Country.Name, Country.Population, City.Name, City.Population + FROM Country LEFT JOIN City + ON City.Country=Country.Code AND + (City.Population > 5000000 OR City.Name LIKE 'Za%') + WHERE Country.Name LIKE 'C%' AND Country.Population > 10000000; +set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; +set @@use_stat_tables=@save_use_stat_tables; +set join_cache_level=default; + DROP DATABASE world; use test; diff --git a/mysql-test/t/join_nested.test b/mysql-test/t/join_nested.test index e60b7827f759315a2f0840055555078f510a0c61..cfb24a6330415ecd14350eda9fa235b95852827d 100644 --- a/mysql-test/t/join_nested.test +++ b/mysql-test/t/join_nested.test @@ -1380,3 +1380,37 @@ DROP VIEW v1; DROP TABLE t1,t2; set optimizer_search_depth= @tmp_mdev621; + +--echo # +--echo # MDEV-19588: Nested left joins using optimized join cache +--echo # + +set optimizer_switch='optimize_join_buffer_size=on'; + +set @save_join_cache_level= @@join_cache_level; +set join_cache_level=2; + +CREATE TABLE t1 (i1 int, c1 varchar(20), pk int) engine=myisam; + +CREATE TABLE t2 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t2 VALUES (7,'a',-912),(8,'a',5); + +CREATE TABLE t3 (pk int, c1 varchar(20), i1 int) engine=myisam; +INSERT INTO t3 VALUES +(1,'a',-145),(2,'a',6),(3,'a',1),(7,'a',NULL),(8,'a',889),(9,'a',146), +(10,'a',177),(16,'a',-433),(17,'a',NULL),(18,'a',2),(19,'a',3),(20,'a',5), +(21,'a',-484),(22,'a',369),(23,'a',-192),(24,'a',-163),(25,'a',5),(26,'a',NULL); + +let $q= +SELECT t3.* +FROM t3 LEFT JOIN t1 LEFT JOIN t2 ON t1.i1 = t2.i1 ON t3.i1 = t1.i1 +WHERE t2.pk < 13 OR t3.i1 IS NULL; + +eval $q; +eval explain extended $q; + +DROP TABLE t1,t2,t3; + +set join_cache_level= @save_join_cache_level; + +set optimizer_switch=@save_optimizer_switch; diff --git a/mysql-test/t/join_outer.test b/mysql-test/t/join_outer.test index 6d20c089bd9245e75148bc74a6480cc5b66ed384..b242b42710b5e3dd814116c3f3d2e6253c7c4711 100644 --- a/mysql-test/t/join_outer.test +++ b/mysql-test/t/join_outer.test @@ -1976,7 +1976,7 @@ set @save_join_cache_level= @@join_cache_level; SET @@join_cache_level = 3; SELECT t1.b1+'0' , t2.b2 + '0' FROM t1 LEFT JOIN t2 ON b1 = b2; DROP TABLE t1, t2; -set @join_cache_level= @save_join_cache_level; +set @@join_cache_level= @save_join_cache_level; --echo # --echo # MDEV-14779: using left join causes incorrect results with materialization and derived tables @@ -2040,6 +2040,154 @@ ORDER BY tb1.i1; DROP TABLE t1,t2; +--echo # +--echo # MDEV-19790 : IS NOT TRUE / IS NOT FALSE predicates over +--echo # inner tables of outer joins +--echo # + +create table t1 (a int); +create table t2 (b int); +insert into t1 values (3), (7), (1); +insert into t2 values (7), (4), (3); +select * from t1 left join t2 on a=b; + +let $q= +select * from t1 left join t2 on a=b where (b > 3) is not true; +eval $q; +eval explain extended $q; + +let $q= +select * from t1 left join t2 on a=b where (b > 3) is not false; +eval $q; +eval explain extended $q; + +drop table t1,t2; + --echo # end of 5.5 tests +--echo # +--echo # MDEV-19258: chained right joins all converted to inner joins +--echo # + + CREATE TABLE t1 ( + id int NOT NULL AUTO_INCREMENT, + timestamp bigint NOT NULL, + modifiedBy varchar(255) DEFAULT NULL, + PRIMARY KEY (id) +); + +CREATE TABLE t2 ( + id int NOT NULL, + REV int NOT NULL, + REVTYPE tinyint DEFAULT NULL, + profile_id int DEFAULT NULL, + PRIMARY KEY (id,REV) +); + +CREATE TABLE t3 ( + id int NOT NULL, + REV int NOT NULL, + person_id int DEFAULT NULL, + PRIMARY KEY (id,REV) +); + +CREATE TABLE t4 ( + id int NOT NULL, + REV int NOT NULL, + PRIMARY KEY (id,REV) +); + +INSERT INTO t1 VALUES +(1,1294391193890,'Cxqy$*9.kKeE'),(2,1294643906883,'rE4wqGV0gif@'), +(3,1294643927456,'L?3yt(%dY$Br'),(4,1294644343525,'WH&ObiZ$#2S4'), +(5,1294644616416,'YXnCbt?olUZ0'),(6,1294644954537,'8Npe4!(#lU@k'), +(7,1294645046659,'knc0GhXB1#ib'),(8,1294645183829,'w*oPpVfuS8^m'), +(9,1294645386701,'hwXR@3qVzrbU'),(10,1294645525982,'BeLW*Y9ndP0l'), +(11,1294645627723,'nTegib^)qZ$I'),(12,1294650860266,'u62C^Kzx3wH8'), +(13,1294657613745,'4&BkFjGa!qLg'),(14,1294660627161,')anpt312SCoh'), +(15,1294661023336,'LtJ2PX?*kTmx'),(16,1294662838066,'POGRr@?#ofpl'), +(17,1294663020989,'o.)1EOT2jnF7'),(18,1294663308065,'&TZ0F0LHE6.h'), +(19,1294664900039,'j)kSC%^In$9d'),(20,1294668904556,'97glN50)cAo.'), +(21,1294728056853,'lrKZxmw?I.Ek'),(22,1294728157174,'@P*SRg!pT.q?'), +(23,1294728327099,'W9gPrptF.)8n'),(24,1294728418481,'$q*c^sM&URd#'), +(25,1294728729620,'9*f4&bTPRtHo'),(26,1294728906014,')4VtTEnS7$oI'), +(27,1294732190003,'8dkNSPq2u3AQ'),(28,1294733205065,'SV2N6IoEf438'), +(29,1294741984927,'rBKj.0S^Ey%*'),(30,1294751748352,'j$2DvlBqk)Fw'), +(31,1294753902212,'C$N6OrEw8elz'),(32,1294758120598,'DCSVZw!rnxXq'), +(33,1294761769556,'OTS@QU8a6s5c'),(34,1294816845305,'IUE2stG0D3L5'), +(35,1294816966909,'Xd16yka.9nHe'),(36,1294817116302,'lOQHZpm%!8qb'), +(37,1294817374775,'^&pE3IhNf7ey'),(38,1294817538907,'oEn4#7C0Vhfp'), +(39,1294818482950,'bx54J*O0Va&?'),(40,1294819047024,'J%@a&1.qgdb?'), +(41,1294821826077,'C9kojr$L3Phz'),(42,1294825454458,'gG#BOnM80ZPi'), +(43,1294904129918,'F^!TrjM#zdvc'),(44,1294904254166,'Va&Tb)k0RvlM'), +(45,1294904414964,'dJjq0M6HvhR#'),(46,1294904505784,'nJmxg)ELqY(b'), +(47,1294904602835,'dhF#or$Vge!7'),(48,1294904684728,'?bIh5E3l!0em'), +(49,1294904877898,'Y*WflOdcxnk.'),(50,1294905002390,'*?H!lUgez5A.'), +(51,1294905096043,'wlEIY3n9uz!p'),(52,1294905404621,'T?qv3H6&hlQD'), +(53,1294905603922,'S@Bhys^Ti7bt'),(54,1294905788416,'KR?a5NVukz#l'), +(55,1294905993190,'A*&q4kWhED!o'),(56,1294906205254,'fT0%7z0DF6h*'), +(57,1294906319680,'LhzdW4?ivjR0'),(58,1294906424296,'h0KDlns%U*6T'), +(59,1294906623844,'b$CfB1noI6Ax'),(60,1294911258896,'#T1*LP!3$Oys'); + + +INSERT INTO t2 VALUES +(1,1,0,10209),(1,42480,1,10209),(1,61612,1,10209),(1,257545,1,10209), +(1,385332,1,10209),(1,1687999,1,10209),(3,1,0,10210),(3,617411,2,10210), +(4,11,0,14),(4,95149,1,10211),(4,607890,2,10211),(5,1,0,10212), +(6,1,0,10213),(6,93344,1,10213),(6,295578,1,10213),(6,295579,1,10213), +(6,295644,1,10213),(7,1,0,10214),(7,12,1,7),(7,688796,1,10214), +(7,1140433,1,10214),(7,1715227,1,10214),(8,1,0,10215),(8,74253,1,10215), +(8,93345,1,10215),(8,12,2,2),(9,1,0,10216),(9,93342,1,10216), +(9,122354,1,10216),(9,301499,2,10216),(10,11,0,5),(10,93343,1,10217), +(10,122355,1,10217),(10,123050,1,10217),(10,301500,2,10217),(11,1,0,10218), +(11,87852,1,10218),(11,605499,2,10218),(12,1,0,10219),(12,88024,1,10219), +(12,605892,2,10219),(13,1,0,10220); + +INSERT INTO t3 VALUES +(1,1,300003),(1,117548,NULL),(2,1,300003),(2,117548,300006), +(3,1,300153),(3,117548,NULL),(4,1,300153),(4,117548,NULL), +(5,1,300153),(5,117548,NULL),(6,1,300182),(6,117548,NULL), +(7,1,300205),(7,117548,NULL),(8,1,300217),(8,117548,NULL), +(9,1,300290),(9,117548,NULL),(10,1,300290),(10,117548,NULL), +(11,1,300405),(11,117548,NULL),(12,1,300670),(12,117548,NULL), +(13,1,300670),(13,117548,NULL),(14,1,300006),(14,117548,NULL), +(15,1,300671),(15,117548,NULL),(16,1,300732),(16,117548,NULL); + +INSERT INTO t4 VALUES +(300000,1),(300001,1),(300003,1),(300004,1), +(300005,1),(300005,688796),(300006,1),(300006,97697), +(300009,1),(300010,1),(300011,1),(300012,1),(300013,1), +(300014,1),(300015,1),(300016,1),(300017,1),(300018,1), +(300019,1),(300020,1),(300021,1),(300022,1),(300023,1), +(300024,1),(300025,1),(300026,1),(300027,1),(300028,1); + +let $q1= +SELECT * +FROM t1 INNER JOIN t2 ON t2.REV=t1.id + INNER JOIN t3 ON t3.id=t2.profile_id + INNER JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 AND + t2.REVTYPE=2; + +--echo # This should have join order of t2,t3,t4,t1 +eval EXPLAIN EXTENDED $q1; +eval $q1; + +let $q2= +SELECT * +FROM t1 RIGHT JOIN t2 ON t2.REV=t1.id + RIGHT JOIN t3 ON t3.id=t2.profile_id + RIGHT JOIN t4 ON t4.id=t3.person_id +WHERE t1.timestamp < 1294664900039 AND t1.timestamp > 1294644616416 + AND t2.REVTYPE=2; + +--echo # This should have join order of t2,t3,t4,t1 with the same plan as above +--echo # because all RIGHT JOIN operations are converted into INNER JOIN +eval EXPLAIN EXTENDED $q2; +eval $q2; + +DROP TABLE t1,t2,t3,t4; + +--echo # end of 10.1 tests + SET optimizer_switch=@save_optimizer_switch; diff --git a/mysql-test/t/join_outer_innodb.test b/mysql-test/t/join_outer_innodb.test index 539d85a8b119fc3a86eac5d430551f5a42cd9d45..365c78183eb8a1e502a4019bfa067a315cfcdfc8 100644 --- a/mysql-test/t/join_outer_innodb.test +++ b/mysql-test/t/join_outer_innodb.test @@ -358,7 +358,7 @@ drop table t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16; drop table if exists t1,t2,t3; create table t2(a int,unique key (a)) engine=innodb; create table t3(b int) engine=innodb; -create table t1(a int,b int)engine=innodb; +create table t1(c int,b int)engine=innodb; set @mdev4270_opl= @@optimizer_prune_level; set @mdev4270_osd= @@optimizer_search_depth; diff --git a/mysql-test/t/multi_update.test b/mysql-test/t/multi_update.test index 8399c465562cf5d1934ceadce6ab0231d74b7515..146277b2985aaa1a3c1b1d57d0083672c57102a1 100644 --- a/mysql-test/t/multi_update.test +++ b/mysql-test/t/multi_update.test @@ -371,7 +371,6 @@ drop table t1, t2; # connect (root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK); -connection root; --disable_warnings create database mysqltest; --enable_warnings @@ -382,7 +381,6 @@ create user mysqltest_1@localhost; grant select on mysqltest.* to mysqltest_1@localhost; grant update on mysqltest.t1 to mysqltest_1@localhost; connect (user1,localhost,mysqltest_1,,mysqltest,$MASTER_MYPORT,$MASTER_MYSOCK); -connection user1; update t1, t2 set t1.b=1 where t1.a=t2.a; update t1, t2 set t1.b=(select t3.b from t3 where t1.a=t3.a) where t1.a=t2.a; connection root; @@ -495,15 +493,12 @@ insert into t2 values (10), (20), (30); create view v1 as select a as b, a/10 as a from t2; connect (locker,localhost,root,,test); -connection locker; lock table t1 write; connect (changer,localhost,root,,test); -connection changer; send alter table t1 add column c int default 100 after a; connect (updater,localhost,root,,test); -connection updater; # Wait till "alter table t1 ..." of session changer is in work. # = There is one session waiting. let $wait_condition= select count(*)= 1 from information_schema.processlist @@ -1087,7 +1082,38 @@ select * from t2; drop table t1,t2, t3; drop user foo; ---echo end of 5.5 tests +# +# Another test on not-opening tables unnecessary +# +create table t1 (a int, b int); +create table t2 (c int, d int); +insert t1 values (1,2),(3,4); +insert t2 values (5,6),(7,8); +create table t0 (x int); +insert t0 values (11), (22); +create trigger tr1 before update on t2 for each row insert t0 values (new.c); +connect con1, localhost, root; +lock table t0 write; +connection default; +update t1 join t2 on (a=c+4) set b=d; +disconnect con1; +drop table t1, t2, t0; + +# +# MDEV-19521 Update Table Fails with Trigger and Stored Function +# +create table t1 (a int, b varchar(50), c varchar(50)); +insert t1 (a,b) values (1,'1'), (2,'2'), (3,'3'); +create function f1() returns varchar(50) return 'result'; +create trigger tr before update on t1 for each row set new.c = (select f1()); +create table t2 select a, b from t1; +update t1 join t2 using (a) set t1.b = t2.b; +drop table t1, t2; +drop function f1; + +--echo # +--echo # end of 5.5 tests +--echo # --source include/have_xtradb.inc diff --git a/mysql-test/t/multi_update_debug.test b/mysql-test/t/multi_update_debug.test new file mode 100644 index 0000000000000000000000000000000000000000..2da376e1b87443f95e711153f33d0dff8534f975 --- /dev/null +++ b/mysql-test/t/multi_update_debug.test @@ -0,0 +1,27 @@ +# +# test MDL backoff-and-retry during multi-update +# +source include/have_debug_sync.inc; +create table t1 (a int, b int); +create table t2 (c int, d int); +insert t1 values (1,2),(3,4); +insert t2 values (5,6),(7,8); +create table t0 (x int); +insert t0 values (11), (22); +create trigger tr1 before update on t1 for each row insert t0 values (new.b); + +set debug_sync='open_tables_after_open_and_process_table WAIT_FOR cont'; +send update t1 join t2 on (a=c+4) set b=d; + +connect con1, localhost, root; +let $wait_condition= select count(*) from information_schema.processlist where state = ' debug sync point: open_tables_after_open_and_process_table' +source include/wait_condition.inc; +set debug_sync='mdl_acquire_lock_wait SIGNAL cont'; +lock table t1 write, t0 write; +let $wait_condition= select count(*) from information_schema.processlist where state = 'Waiting for table metadata lock' +source include/wait_condition.inc; +disconnect con1; +connection default; +reap; +drop table t1, t2, t0; +set debug_sync='reset'; diff --git a/mysql-test/t/multi_update_innodb.test b/mysql-test/t/multi_update_innodb.test index 51757c29553b3cbc13db9c002b95351d73150121..9042f267c667764a90f7f62d4769c33ae33fb127 100644 --- a/mysql-test/t/multi_update_innodb.test +++ b/mysql-test/t/multi_update_innodb.test @@ -75,3 +75,25 @@ UPDATE t2 AS A NATURAL JOIN t2 B SET A.pk_2=10,B.pk_2=11; SELECT * FROM t2; DROP TABLE t1,t2; + +# +# MDEV-19491 update query stopped working after mariadb upgrade 10.2.23 -> 10.2.24 +# +create table t1 (id serial, size int(11)) engine=innodb; +create table t2 (id serial, size int, account_id int) engine=innodb; +create table t3 (id serial, size int, article_id int) engine=innodb; +create table t4 (id serial, file_id int, article_id int) engine=innodb; +insert t1 values(null, 400); +insert t2 values(null, 0, 1), (null, 1, 1); +insert t3 values(null, 100, 1); +insert t4 values(null, 1, 2); +create trigger file_update_article before update on t3 for each row + update t2 set t2.size = new.size where t2.id = new.article_id; +create trigger article_update_account before update on t2 for each row + update t1 set t1.size = t1.size + new.size where t1.id = new.account_id; +update t3 join t4 on t4.file_id =t3.id and t4.article_id=2 set t3.size=t3.size + 2; +drop table t1, t2, t3, t4; + +--echo # +--echo # end of 5.5 tests +--echo # diff --git a/mysql-test/t/mysqld--help.test b/mysql-test/t/mysqld--help.test index 8b4674c140c68ab6587227080b8ad4ec587d0135..8924d2c45da378afe08789b994b6e253d822bf1f 100644 --- a/mysql-test/t/mysqld--help.test +++ b/mysql-test/t/mysqld--help.test @@ -42,7 +42,7 @@ perl; $re2=join('|', @plugins); $skip=0; open(F, '<', "$ENV{MYSQL_TMP_DIR}/mysqld--help.txt") or die; - print "Windows bug: happens when a new line is exactly at the right offset.\n"; + print "Windows bug: new line disappears when it is exactly at the right offset.\n"; while () { next if 1../The following groups are read/; # formatting, skip line consisting entirely of dashes and blanks diff --git a/mysql-test/t/mysqldump.test b/mysql-test/t/mysqldump.test index e8a0cc3f81fcffb338a17c6ea84fc76c97d187a7..7382bd455c856193348dda2488ff3a70925a3568 100644 --- a/mysql-test/t/mysqldump.test +++ b/mysql-test/t/mysqldump.test @@ -2484,6 +2484,7 @@ DROP TABLE t1; DROP TABLE t2; DROP DATABASE db_20772273; USE test; +--remove_file $MYSQLTEST_VARDIR/tmp/t2.txt --echo # --echo # Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY @@ -2649,3 +2650,31 @@ DROP FUNCTION f; --echo # DROP VIEW v1; DROP FUNCTION f; + +--echo # +--echo # MDEV-788 New option to ignore foreign key contraints in mysqlimport +--echo # +create table t1 ( + id int primary key +) engine=InnoDB; + +create table t2 ( + t1_id int, + CONSTRAINT fk + FOREIGN KEY (t1_id) REFERENCES t1 (id) +) ENGINE = InnoDB; + +--write_file $MYSQLTEST_VARDIR/tmp/t2.txt +0 +EOF + +--error 1 +--exec $MYSQL_IMPORT --silent test $MYSQLTEST_VARDIR/tmp/t2.txt +--exec $MYSQL_IMPORT --silent -k test $MYSQLTEST_VARDIR/tmp/t2.txt +select count(*) from t2; + +--exec $MYSQL_IMPORT --silent --ignore-foreign-keys test $MYSQLTEST_VARDIR/tmp/t2.txt +select count(*) from t2; + +--remove_file $MYSQLTEST_VARDIR/tmp/t2.txt +drop tables t2, t1; diff --git a/mysql-test/t/plugin.test b/mysql-test/t/plugin.test index 68c4d5afd6490989ad26971b7df968ca03650eab..e1a17d4917478c89d8fec2cdde06e20c18436554 100644 --- a/mysql-test/t/plugin.test +++ b/mysql-test/t/plugin.test @@ -252,6 +252,15 @@ select plugin_name from information_schema.plugins where plugin_library like 'ha uninstall soname 'ha_example'; select plugin_name from information_schema.plugins where plugin_library like 'ha_example%'; +# +# +# +set names utf8; +select convert('admin𝌆' using utf8); +--error ER_UDF_NO_PATHS +install plugin foo soname 'admin𝌆'; + +--echo # End of 5.5 test --echo # --echo # MDEV-5309 - RENAME TABLE does not check for existence of the table's @@ -265,3 +274,5 @@ UNINSTALL PLUGIN example; --error ER_NO_SUCH_TABLE RENAME TABLE t1 TO t2; DROP TABLE t1; + +--echo # End of 10.1 test diff --git a/mysql-test/t/plugin_not_embedded.test b/mysql-test/t/plugin_not_embedded.test index 3b4129b6b6be0ce3449c667f90ffb69352f88521..a9126053f18246aa708ffd5923325c11b72655c5 100644 --- a/mysql-test/t/plugin_not_embedded.test +++ b/mysql-test/t/plugin_not_embedded.test @@ -30,3 +30,12 @@ let $path = `select CONCAT_WS('/', '..', '$HA_EXAMPLE_SO')`; --replace_regex /\.dll/.so/ --error ER_UDF_NO_PATHS eval INSTALL PLUGIN example SONAME '$path'; + +# +# Bug#27302459: EMPTY VALUE IN MYSQL.PLUGIN TABLE CAUSES SERVER TO EXIT ON STARTUP +# +insert mysql.plugin values (); +source include/restart_mysqld.inc; +delete from mysql.plugin where name = ''; + +--echo # End of 5.5 tests diff --git a/mysql-test/t/ps.test b/mysql-test/t/ps.test index c8fc3e3177efb7dbaedfe59c2e8299729968758c..6d6d8274651d4807114756695555f35796033b3f 100644 --- a/mysql-test/t/ps.test +++ b/mysql-test/t/ps.test @@ -3875,6 +3875,83 @@ FROM FROM t1 A, (SELECT @cnt := 0) C) T ) X; drop table t1; + +--echo # +--echo # MDEV-17042: prepared statement does not return error with +--echo # SQL_MODE STRICT_TRANS_TABLES. (Part 1) +--echo # + +set @save_sql_mode=@@sql_mode; +set sql_mode='STRICT_ALL_TABLES'; + +CREATE TABLE t1 (id int, count int); +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id decimal(10,5), count int); +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id double, count int); +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id date, count int); +insert into t1 values ("2019-06-11",1),("2019-06-12",2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; +set sql_mode=@save_sql_mode; --echo # End of 5.5 tests --echo # diff --git a/mysql-test/t/ps_innodb.test b/mysql-test/t/ps_innodb.test new file mode 100644 index 0000000000000000000000000000000000000000..6f56af352718d5f11871367b47b62f58212aab75 --- /dev/null +++ b/mysql-test/t/ps_innodb.test @@ -0,0 +1,80 @@ +--source include/have_innodb.inc + +--echo # +--echo # MDEV-17042: prepared statement does not return error with +--echo # SQL_MODE STRICT_TRANS_TABLES. (Part 2) +--echo # + +set @save_sql_mode=@@sql_mode; +set sql_mode='STRICT_TRANS_TABLES'; + +CREATE TABLE t1 (id int, count int) engine=innodb; +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id decimal(10,5), count int) engine=innodb; +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id double, count int) engine=innodb; +insert into t1 values (1,1),(0,2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; + +CREATE TABLE t1 (id date, count int) engine=innodb; +insert into t1 values ("2019-06-11",1),("2019-06-12",2); +--error ER_TRUNCATED_WRONG_VALUE +update t1 set count = count + 1 where id = '1bad'; + +prepare stmt from "update t1 set count = count + 1 where id = '1bad'"; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt; +deallocate prepare stmt; + +prepare stmt from 'update t1 set count = count + 1 where id = ?'; +set @a = '1bad'; +--error ER_TRUNCATED_WRONG_VALUE +execute stmt using @a; +deallocate prepare stmt; +drop table t1; +set sql_mode=@save_sql_mode; + +--echo # End of 5.5 tests diff --git a/mysql-test/t/repair_symlink-5543.test b/mysql-test/t/repair_symlink-5543.test index 4c120334d056793509c88bb5550cc3d64a886619..ac7bb497f24d6ee0c13911001a5ce0b7cd9760ba 100644 --- a/mysql-test/t/repair_symlink-5543.test +++ b/mysql-test/t/repair_symlink-5543.test @@ -9,9 +9,9 @@ eval create table t1 (a int) engine=myisam data directory='$MYSQL_TMP_DIR'; insert t1 values (1); --system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t1.TMD ---echo # Some systems fail with errcode 40, when doing openat, while others ---echo # don't have openat and fail with errcode 20. ---replace_regex / '.*\/t1/ 'MYSQL_TMP_DIR\/t1/ /40/20/ /".*"/""/ +--echo # Some systems fail with errcode 40, or 90 (MIPS) when doing openat, +--echo # while others don't have openat and fail with errcode 20. +--replace_regex / '.*\/t1/ 'MYSQL_TMP_DIR\/t1/ /[49]0/20/ /".*"/""/ repair table t1; drop table t1; @@ -19,7 +19,7 @@ drop table t1; eval create table t2 (a int) engine=aria data directory='$MYSQL_TMP_DIR'; insert t2 values (1); --system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t2.TMD ---replace_regex / '.*\/t2/ 'MYSQL_TMP_DIR\/t2/ /40/20/ /".*"/""/ +--replace_regex / '.*\/t2/ 'MYSQL_TMP_DIR\/t2/ /[49]0/20/ /".*"/""/ repair table t2; drop table t2; diff --git a/mysql-test/t/sp.test b/mysql-test/t/sp.test index 0e95fb5c2718121dc0b4d7619d5295b5b45b1331..a2a40f87ef02447016eb2cf24dedf5e70ee5a924 100644 --- a/mysql-test/t/sp.test +++ b/mysql-test/t/sp.test @@ -9840,4 +9840,24 @@ SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS; DROP FUNCTION f; DROP VIEW v; +--echo # +--echo # MDEV-17963: Assertion `field_pos < field_count' failed in Protocol_text::store, +--echo # Assertion `field_handlers == 0 || field_pos < field_count' +--echo # + +CREATE TABLE t1 (ct time); +INSERT INTO t1 VALUES ('16:11:28'); + +DELIMITER |; +--error ER_SP_NO_RETSET +CREATE FUNCTION f1 () RETURNS varchar(100) +BEGIN +DECLARE xxx varchar(100); +ANALYZE SELECT sum(ct) FROM t1 INTO xxx ; +RETURN xxx; +END| + +DELIMITER ;| +drop table t1; + --echo #End of 10.1 tests diff --git a/mysql-test/t/stat_tables.test b/mysql-test/t/stat_tables.test index 97f9f08569f236c83968adab3ac10492cbf093a9..e9f37698a730df7ffdce7fa8012f632da36ba5be 100644 --- a/mysql-test/t/stat_tables.test +++ b/mysql-test/t/stat_tables.test @@ -453,6 +453,53 @@ delete from mysql.table_stats; delete from mysql.column_stats; delete from mysql.index_stats; +--echo # +--echo # MDEV-19352: Server crash in alloc_histograms_for_table_share upon query from information schema +--echo # + +use test; +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; + +CREATE TABLE t1 (a INT); +CREATE TABLE t2 (b INT); +CREATE VIEW v AS SELECT * FROM t1 JOIN t2; +--error ER_NO_SUCH_TABLE +INSERT INTO t2 SELECT * FROM x; + +select * from information_schema.tables where table_name='v'; +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; + +drop table t1,t2; +drop view v; + +--echo # +--echo # MDEV-19407: Assertion `field->table->stats_is_read' failed in is_eits_usable +--echo # + +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @@optimizer_use_condition_selectivity= 1; +set @@use_stat_tables='never'; +create table t1(pk int); +insert into t1 values (4),(3); +set @@optimizer_use_condition_selectivity= 4; +set use_stat_tables='preferably'; + +--error ER_NO_SUCH_TABLE +INSERT INTO t1 SELECT * FROM x; +CREATE TABLE t2 SELECT pk FROM t1 WHERE pk>2; +select * from t2; +drop table t1,t2; + +create table t1(a int,b int, key k1(a) ); +insert into t1 values(1,1),(2,2),(3,3); +analyze table t1; +select * from mysql.index_stats, t1 where index_name='k1' and t1.a > 1 and t1.b > 1; +drop table t1; + +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; + set @save_optimizer_switch=@@optimizer_switch; set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/t/subselect.test b/mysql-test/t/subselect.test index a4c4c21610e9058fcbfd5c4b254882940df549b6..871f5ee9622c7b2f87d458f934c570872ac4ebf6 100644 --- a/mysql-test/t/subselect.test +++ b/mysql-test/t/subselect.test @@ -6113,6 +6113,30 @@ explain select * from t1 where (select max(b) from t2) = 10 and t1.a > 3; drop table t1,t2; + +--echo # +--echo # MDEV-19429: Wrong query result with EXISTS and LIMIT 0 +--echo # +create table t10 (a int); +insert into t10 values (1),(2),(3); +create table t12 (a int); +insert into t12 values (1),(2),(3); +select * from t10 where exists (select * from t12 order by a limit 0); +explain select * from t10 where exists (select * from t12 order by a limit 0); + +prepare stmt1 from "select * from t10 where exists (select * from t12 order by a limit ?)"; + +set @l=1; +execute stmt1 using @l; +set @l=2; +execute stmt1 using @l; +set @l=0; +execute stmt1 using @l; + +deallocate prepare stmt1; + +drop table t10, t12; + --echo End of 5.5 tests --echo # End of 10.0 tests diff --git a/mysql-test/t/subselect_sj.test b/mysql-test/t/subselect_sj.test index 1a1b8757864faa05288baa3b6f8a1d1a75c93605..33ac85f9cf2973d03ef7526af90de1bd23659575 100644 --- a/mysql-test/t/subselect_sj.test +++ b/mysql-test/t/subselect_sj.test @@ -2877,6 +2877,8 @@ drop table t1,t2,t3; --echo # MDEV-18896: IN subquery in WHERE of a table-less query used for INSERT --echo # +set @@optimizer_switch= @subselect_sj_tmp; + create table t1 (a1 varchar(25)); create table t2 (a2 varchar(25)) ; insert into t1 select 'xxx' from dual where 'xxx' in (select a2 from t2); diff --git a/mysql-test/t/subselect_sj_mat.test b/mysql-test/t/subselect_sj_mat.test index 1f514be23d24edeba763e7227d874f223c7fa9be..f68620577697c1ec760f1d94ed37576683b9fde8 100644 --- a/mysql-test/t/subselect_sj_mat.test +++ b/mysql-test/t/subselect_sj_mat.test @@ -2238,6 +2238,81 @@ explain SELECT 1 FROM t1 where t1.id IN (SELECT v1.i1 from v1); SELECT 1 FROM t1 where t1.id IN (SELECT v1.i1 from v1); drop table t1,t2; drop view v1; + + +--echo # +--echo # MDEV-19580: function invocation in the left part of IN subquery +--echo # + +create table t1 (id int, a varchar(50), b int); +insert into t1 values +(1,'mrs',2), (2,'joe',2), (3,'paul',1), (4,'art',1); + +create table t2 (id int, a varchar(50), x int); +insert into t2 values +(1,'grand',1),(2,'average',1),(3,'serf',0); + +create table t3 (d1 date, d2 date, t1_id int, t2_id int ); +insert into t3 values +('1972-01-01','1988-12-31',3,1), ('1972-01-01','1988-12-31',4,1), +('1972-01-01','1988-12-31',1,2), ('1972-01-01','1988-12-31',2,3); + +create table t4 ( id int, a varchar(50) ); +insert into t4 values +(1,'songwriter'),(2,'song character'); + +delimiter $$; + +create function f1(who int, dt date) returns int +deterministic +begin + declare result int; + select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; + return result; +end$$ + +create function f2(who int, dt date) returns int +begin + declare result int; + select t2_id into result from t3 where dt>=d1 and dt<=d2 and t1_id=who; + return result; +end$$ + +delimiter ;$$ + +--echo # Deterministic function in left part of IN subquery: semi-join is OK + +let $q1= +select * from t1 + left join t4 on t1.b = t4.id + where f1(t1.id, '1980-01-01') in (select id from t2 where x=1); + +eval $q1; +eval explain extended $q1; + +--echo # Non-deterministic function in left part of IN subq: semi-join is OK + +let $q2= +select * from t1 + left join t4 on t1.b = t4.id + where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); + +eval $q2; +eval explain extended $q2; + +let $q3= +select t1.*, t4.*, + (select max(t4.id) from t4 where t4.id=t1.b and sleep(0) = 0) as s + from t1 left join t4 on t1.b = t4.id + where f2(t1.id, '1980-01-01') in (select id from t2 where x=1); + +eval $q3; +eval explain extended $q3; + +drop function f1; +drop function f2; +drop table t1,t2,t3,t4; + --echo # End of 5.5 tests --echo # --echo # MDEV-7220: Materialization strategy is not used for REPLACE ... SELECT diff --git a/mysql-test/t/trigger_null-8605.test b/mysql-test/t/trigger_null-8605.test index 34a57654b48d5c9656cfeb8e786f6f32c3cc1261..7645b61f5adb1edda5b1fdeed50ad8b379d6cc7d 100644 --- a/mysql-test/t/trigger_null-8605.test +++ b/mysql-test/t/trigger_null-8605.test @@ -149,6 +149,7 @@ EOF load data infile 'mdev8605.txt' into table t1 fields terminated by ','; select * from t1; drop table t1; +--remove_file $datadir/test/mdev8605.txt # timestamps (on NULL = NOW()) create table t1 (a timestamp, b int auto_increment primary key); @@ -218,6 +219,7 @@ load data infile 'sep8605.txt' into table t1 fields terminated by ',' (@a,a2,a3,b,c) set a1=100-@a; select 100-a1,a2,a3,b,c from t1; delete from t1; +--remove_file $datadir/test/sep8605.txt --write_file $datadir/test/fix8605.txt 00012010-11-12 01:02:030010000000000000000 @@ -231,6 +233,7 @@ set statement timestamp=777777777 for load data infile 'fix8605.txt' into table t1 fields terminated by ''; select * from t1; delete from t1; +--remove_file $datadir/test/fix8605.txt --write_file $datadir/test/xml8605.txt @@ -300,6 +303,7 @@ set statement timestamp=777777777 for load xml infile 'xml8605.txt' into table t1 rows identified by ''; select * from t1; drop table t1; +--remove_file $datadir/test/xml8605.txt # explicit DEFAULT create table t1 (a int not null default 5, b int, c int); diff --git a/mysql-test/t/type_datetime.test b/mysql-test/t/type_datetime.test index f16613d18a14907ea48b0ac7d4172bd0edf4037e..726510b74e89e103c13492e91e5edef7d90b51e7 100644 --- a/mysql-test/t/type_datetime.test +++ b/mysql-test/t/type_datetime.test @@ -700,6 +700,16 @@ SELECT 1 FROM t1 WHERE 20160101 > SOME (SELECT CAST(a AS DATETIME) FROM t1); SELECT * FROM t1 WHERE 20160101 > CAST(a AS DATETIME); DROP TABLE t1; + +--echo # +--echo # MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY +--echo # + +CREATE TABLE t1 (i INT, d DATETIME); +INSERT INTO t1 VALUES (3,NULL),(3,'1976-12-14 13:21:07'),(NULL,'1981-09-24 01:04:47'); +SELECT ExtractValue('foo','bar'), i, MIN(d) FROM t1 GROUP BY i; +DROP TABLE t1; + --echo # --echo # End of 10.1 tests --echo # diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test index 2d1266dd17a6773bcd55c14e07b0e00b777f3cfa..f7c9ffbc99bacd4b676d8bf893c0d5e032d8efe5 100644 --- a/mysql-test/t/view.test +++ b/mysql-test/t/view.test @@ -5691,6 +5691,26 @@ t46, t47, t48, t49, t50, t51, t52, t53, t54, t55, t56, t57, t58, t59,t60; drop view v60; +--echo # +--echo # MDEV-15572: view.test, server crash with --big-tables=1 +--echo # + +set @save_big_tables=@@big_tables; +set big_tables=ON; +CREATE TABLE t1 ( f1 int , f2 int , f3 int , f4 int); +CREATE TABLE t2 ( f1 int , f2 int , f3 int , f4 int); + +CREATE VIEW v1 AS + SELECT t2.f1, t1.f2, t2.f3, t2.f4 FROM (t1 JOIN t2); + +--error ER_VIEW_MULTIUPDATE +REPLACE INTO v1 (f1, f2, f3, f4) + SELECT f1, f2, f3, f4 FROM t1; + +drop view v1; +drop table t1, t2; +set big_tables=@save_big_tables; + --echo # ----------------------------------------------------------------- --echo # -- End of 5.5 tests. --echo # ----------------------------------------------------------------- diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index b400c4e971e525e3957fbfbff2409bf9df63ec43..f09647523af879773844fcf5d97c3f399a762b75 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -22,17 +22,15 @@ # To use the list, run MTR with --skip-test-list=unstable-tests option. # ############################################################################## - -# Based on 10.1 5b035c84567b60c2ca680de96f5179a6dd3d9e61 +# +# Based on 10.1 2382cd14a8c96cf8b4375d7338abfa6e1b333a86 main.alter_table_trans : MDEV-12084 - timeout main.analyze_stmt : Modified in 10.1.39 main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 -main.auto_increment_ranges_innodb : Modified in 10.1.38 -main.bigint : Modified in 10.1.38 -main.bootstrap : MDEV-19199 - error: 34304, status: 134, errno: 2 -main.connect : Modified in 10.1.38 +main.bootstrap : Modified in 10.1.41 +main.connect_debug : Modified in 10.1.41 main.count_distinct2 : MDEV-11768 - timeout main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result @@ -48,11 +46,12 @@ main.ctype_uca : Include file modified in 10.1.39 main.ctype_ucs : Include file modified in 10.1.39 main.ctype_ujis : Include file modified in 10.1.39 main.ctype_utf16 : MDEV-10675: timeout or extra warnings; include file modified in 10.1.39 -main.ctype_utf16le : Include file modified in 10.1.39 main.ctype_utf16_uca : Include file modified in 10.1.39 +main.ctype_utf16le : Include file modified in 10.1.39 main.ctype_utf32 : Include file modified in 10.1.39 main.ctype_utf32_uca : Include file modified in 10.1.39 main.ctype_utf8 : Include file modified in 10.1.39 +main.ctype_utf8_def_upgrade : Added in 10.1.41 main.ctype_utf8mb4 : Include file modified in 10.1.39 main.ctype_utf8mb4_heap : Include file modified in 10.1.39 main.ctype_utf8mb4_innodb : Include file modified in 10.1.39 @@ -60,38 +59,39 @@ main.ctype_utf8mb4_myisam : Include file modified in 10.1.39 main.ddl_i18n_koi8r : Modified in 10.1.39 main.ddl_i18n_utf8 : Modified in 10.1.39 main.debug_sync : MDEV-10607 - internal error +main.derived : Modified in 10.1.41 main.derived_opt : MDEV-11768 - timeout +main.derived_view : Modified in 10.1.41 main.dirty_close : MDEV-19368 - mysqltest failed but provided no output main.events_1 : Modified in 10.1.39 main.events_2 : MDEV-13277 - Server crash main.events_bugs : MDEV-12892 - Crash in fill_schema_processlist -main.events_slowlog : MDEV-12821 - Wrong result main.events_restart : MDEV-12236 - Server shutdown problem -main.flush : Modified in 10.1.38 +main.events_slowlog : MDEV-12821 - Wrong result +main.flush : MDEV-19368 - mysqltest failed but provided no output main.func_gconcat : Modified in 10.1.39 -main.func_group_innodb : Modified in 10.1.38 main.func_hybrid_type : Modified in 10.1.39 main.func_math : Modified in 10.1.39 -main.func_misc : Modified in 10.1.38 main.func_str : Modified in 10.1.39 main.func_time : Modified in 10.1.39 main.gis : MDEV-13411 - wrong result on P8; modified in 10.1.39 main.gis-precise : Modified in 10.1.39 main.gis_notembedded : Added in 10.1.39 main.grant4 : Modified in 10.1.39 -main.grant5 : Modified in 10.1.38 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown -main.huge_frm-6224 : Modified in 10.1.38 main.index_intersect_innodb : MDEV-10643 - failed with timeout main.index_merge_innodb : MDEV-7142 - Wrong execution plan, timeout with valgrind; modified in 10.1.39 main.index_merge_myisam : Include files modified in 10.1.39 +main.information_schema_parameters : Modified in 10.1.41 main.information_schema_prepare : Added in 10.1.39 main.innodb_mysql_lock : MDEV-7861 - sporadic lock detection failure +main.join : Modified in 10.1.41 +main.join_cache : Modified in 10.1.41 +main.join_nested : Modified in 10.1.41 +main.join_outer : Modified in 10.1.41 +main.join_outer_innodb : Modified in 10.1.41 main.kill_processlist-6619 : MDEV-10793 - wrong result in processlist; modified in 10.1.39 main.loaddata : MDEV-19368 - mysqltest failed but provided no output; modified in 10.1.39 -main.lock : Modified in 10.1.38 -main.lock_multi : Modified in 10.1.38 -main.lock_sync : Modified in 10.1.38 main.log_slow : MDEV-13263 - Wrong result; modified in 10.1.39 main.log_slow_debug : Added in 10.1.39 main.log_tables-big : MDEV-13408 - wrong result @@ -99,16 +99,17 @@ main.mdev-504 : MDEV-10607 - sporadic "can't connect" main.mdev375 : MDEV-10607 - sporadic "can't connect" main.mdev_19276 : Added in 10.1.39 main.merge : MDEV-10607 - sporadic "can't connect" -main.multi_update : Modified in 10.1.39 +main.multi_update : Modified in 10.1.41 main.multi_update_big : Added in 10.1.39 +main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out; added in 10.1.41 +main.multi_update_innodb : Modified in 10.1.41 main.mysql : Modified in 10.1.39 main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_comp : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_nonblock : MDEV-15096 - exec failed main.mysql_upgrade_noengine : MDEV-14355 - Plugin is busy -main.mysqlbinlog_row_minimal : Modified in 10.1.38 -main.mysqld--help : Modified in 10.1.39 -main.mysqldump : Modified in 10.1.38 +main.mysqld--help : Modified in 10.1.41 +main.mysqldump : Modified in 10.1.41 main.mysqldump-compat : Modified in 10.1.39 main.mysqlhotcopy_myisam : MDEV-10995 - test hangs on debug build main.mysqlslap : MDEV-11801 - timeout @@ -120,47 +121,49 @@ main.partition : Modified in 10.1.39 main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock main.partition_innodb : Modified in 10.1.39 main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings -main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.1.39 +main.plugin : Modified in 10.1.41 +main.plugin_not_embedded : Modified in 10.1.41 +main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.1.41 +main.ps_innodb : Added in 10.1.41 main.query_cache : MDEV-12895 - Wrong result main.query_cache_debug : MDEV-15281 - Resize or similar command in progress -main.range_innodb : Modified in 10.1.38 main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away -main.read_only : Modified in 10.1.38 -main.row-checksum : Modified in 10.1.38 +main.repair_symlink-5543 : Modified in 10.1.41 main.set_statement : MDEV-13183 - Wrong result main.show_explain : MDEV-10674 - sporadic failure -main.sp : Modified in 10.1.39 -main.sp_notembedded : MDEV-10607 - internal error; modified in 10.1.39 +main.sp : Modified in 10.1.41 main.sp-security : MDEV-10607 - sporadic "can't connect" -main.sp_trans : Modified in 10.1.39 main.sp-ucs2 : Modified in 10.1.39 +main.sp_notembedded : MDEV-10607 - internal error; modified in 10.1.39 +main.sp_trans : Modified in 10.1.39 main.ssl_verify_ip : Added in 10.1.39 -main.statistics : Modified in 10.1.39 -main.stat_tables : Modified in 10.1.39 +main.stat_tables : Modified in 10.1.41 main.stat_tables_par_innodb : MDEV-14155 - wrong rounding +main.statistics : Modified in 10.1.39 main.status : MDEV-8510 - sporadic wrong result main.status2 : Modified in 10.1.39 +main.subselect : Modified in 10.1.41 main.subselect_innodb : MDEV-10614 - sporadic wrong results -main.subselect_mat : Modified in 10.1.38 -main.subselect_sj : Modified in 10.1.39 -main.subselect2 : Modified in 10.1.38 +main.subselect_sj : Modified in 10.1.41 +main.subselect_sj_mat : Modified in 10.1.41 main.tc_heuristic_recover : MDEV-15200 - wrong error on mysqld_stub_cmd main.timezone2 : Modified in 10.1.39 +main.trigger_null-8605 : Modified in 10.1.41 main.type_bit : Modified in 10.1.39 main.type_blob : MDEV-15195 - Wrong result main.type_date : Modified in 10.1.39 +main.type_datetime : Modified in 10.1.41 main.type_datetime_hires : MDEV-10687 - timeout main.type_decimal : Modified in 10.1.39 main.type_year : Modified in 10.1.39 -main.union : Modified in 10.1.38 main.update_innodb : Modified in 10.1.39 main.userstat : Modified in 10.1.39 -main.view : Modified in 10.1.39 +main.view : Modified in 10.1.41 main.view_grant : Modified in 10.1.39 main.wait_timeout : Lost connection to MySQL server during query main.xa : MDEV-11769 - lock wait timeout -#---------------------------------------------------------------- +#----------------------------------------------------------------------- archive.archive_bitfield : MDEV-11771 - Extra warning archive.archive_eits : Added in 10.1.39 @@ -168,67 +171,78 @@ archive.archive_symlink : MDEV-12170 - unexpected error on rmdir archive.discover : MDEV-10510 - Table is marked as crashed archive.mysqlhotcopy_archive : MDEV-14726 - Table is marked as crashed -archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed +#----------------------------------------------------------------------- -#---------------------------------------------------------------- +archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed -binlog.binlog_base64_flag : Modified in 10.1.38 -binlog.binlog_commit_wait : MDEV-10150 - Error: too much time elapsed -binlog.binlog_innodb_stm : Added in 10.1.39 -binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_mysqlbinlog2 : Modified in 10.1.39 -binlog.binlog_mysqlbinlog_row_frag : Added in 10.1.38 -binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint +#----------------------------------------------------------------------- + +binlog.binlog_commit_wait : MDEV-10150 - Error: too much time elapsed +binlog.binlog_innodb_stm : Added in 10.1.39 +binlog.binlog_killed : MDEV-12925 - Wrong result +binlog.binlog_mysqlbinlog2 : Modified in 10.1.39 +binlog.binlog_mysqlbinlog_stop_never : Added in 10.1.41 +binlog.binlog_parallel_replication_marks_row : Include file modified in 10.1.41 +binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.1.41 +binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.1.41 +binlog.binlog_stm_drop_tmp_tbl : MDEV-20188 - Unknown table on exec; include file modified in 10.1.41 +binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint +binlog.load_data_stm_view : MDEV-16948 - Wrong result + +#----------------------------------------------------------------------- + +binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint +binlog_encryption.encrypted_master : MDEV-12906 - Failed to sync +binlog_encryption.rpl_parallel : MDEV-10653 - Timeout +binlog_encryption.rpl_relayrotate : MDEV-15194 - Timeout +binlog_encryption.rpl_semi_sync : MDEV-11220 - Wrong result, MDEV-11673 - Valgrind warning +binlog_encryption.rpl_ssl : MDEV-14507 - Timeout on SLES 11.4 +binlog_encryption.rpl_stm_relay_ign_space : MDEV-19375 - Test assertion failed in assertion.inc +binlog_encryption.rpl_typeconv : MDEV-14362 - Lost connection to MySQL server during query -#---------------------------------------------------------------- +#----------------------------------------------------------------------- -binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint -binlog_encryption.encrypted_master : MDEV-12906 - Failed to sync -binlog_encryption.rpl_parallel : MDEV-10653 - Timeout -binlog_encryption.rpl_relayrotate : MDEV-15194 - Timeout -binlog_encryption.rpl_semi_sync : MDEV-11220 - Wrong result, MDEV-11673 - Valgrind warning -binlog_encryption.rpl_ssl : MDEV-14507 - Timeout on SLES 11.4 -binlog_encryption.rpl_stm_relay_ign_space : MDEV-19375 - Test assertion failed in assertion.inc -binlog_encryption.rpl_typeconv : MDEV-14362 - Lost connection to MySQL server during query -binlog.load_data_stm_view : MDEV-16948 - Wrong result +connect.pivot : MDEV-14803 - failed to discover table +connect.zip : MDEV-13884 - Wrong result -#---------------------------------------------------------------- +#----------------------------------------------------------------------- -connect.part_table : Modified in 10.1.38 -connect.pivot : MDEV-14803 - failed to discover table -connect.zip : MDEV-13884 - Wrong result +disks.disks_notembedded : Added in 10.1.41 -#---------------------------------------------------------------- +#----------------------------------------------------------------------- -encryption.create_or_replace : MDEV-16115 - Trying to access tablespace -encryption.debug_key_management : MDEV-13841 - Timeout on wait condition -encryption.encrypt_and_grep : MDEV-13765 - Wrong result -encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect through socket -encryption.innodb-checksum-algorithm : Modified in 10.1.38 -encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certificate -encryption.innodb-encryption-alter : Modified in 10.1.39 -encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result +encryption.create_or_replace : MDEV-16115 - Trying to access tablespace +encryption.debug_key_management : MDEV-13841 - Timeout on wait condition +encryption.encrypt_and_grep : MDEV-13765 - Wrong result +encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect through socket +encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certificate +encryption.innodb-encryption-alter : Modified in 10.1.39 +encryption.innodb-first-page-read : MDEV-14356 - Timeout on wait condition +encryption.innodb-page_encryption : MDEV-10641 - mutex problem +encryption.innodb-read-only : MDEV-14728 - Unable to get certificate; MDEV-16563 - Crash on startup +encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup +encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure -encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash -encryption.innodb_first_page : MDEV-10689 - Crash -encryption.innodb-first-page-read : MDEV-14356 - Timeout on wait condition -encryption.innodb-force-corrupt : Modified in 10.1.38 -encryption.innodb_lotoftables : MDEV-16111 - Wrong result -encryption.innodb-page_encryption : MDEV-10641 - mutex problem -encryption.innodb-read-only : MDEV-14728 - Unable to get certificate; MDEV-16563 - Crash on startup -encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup -encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition -encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing -encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing -encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing - -#---------------------------------------------------------------- - -engines/iuds.* : Not maintained in timely manner -engines/funcs.* : Not maintained in timely manner -engines/rr_trx.* : MDEV-10998 - tests not maintained - -#---------------------------------------------------------------- +encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result +encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash +encryption.innodb_first_page : MDEV-10689 - Crash +encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing +encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing +encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing + +#----------------------------------------------------------------------- + +engines/funcs.* : Not maintained in timely manner + +#----------------------------------------------------------------------- + +engines/iuds.* : Not maintained in timely manner + +#----------------------------------------------------------------------- + +engines/rr_trx.* : MDEV-10998 - tests not maintained + +#----------------------------------------------------------------------- federated.federated_bug_35333 : MDEV-13410 - Wrong result federated.federated_bug_585688 : MDEV-12907 - Valgrind, MDEV-14805 - server crash @@ -237,7 +251,7 @@ federated.federated_partition : MDEV-10417 - Fails on Mips federated.federated_transactions : MDEV-10617, MDEV-10417 - Wrong checksum, timeouts, fails on Mips federated.federatedx : MDEV-10617 - Wrong checksum, timeouts -#---------------------------------------------------------------- +#----------------------------------------------------------------------- funcs_1.memory_views : MDEV-11773 - timeout funcs_1.processlist_priv_no_prot : Include file modified in 10.1.39 @@ -245,84 +259,90 @@ funcs_1.processlist_priv_ps : Include file modified in 10.1.39 funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result; include file modified in 10.1.39 funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan; include file modified in 10.1.39 -funcs_2.memory_charset : MDEV-10290 - Timeout -funcs_2.myisam_charset : MDEV-11535 - Timeout -funcs_2/charset.* : MDEV-10999 - test not maintained - -#---------------------------------------------------------------- - -galera.* : The suite was enabled in 10.1.27 and is still unstable -galera_3nodes.* : The suite has not been stabilized yet - -#---------------------------------------------------------------- - -innodb.alter_candidate_key : Added in 10.1.38 -innodb.alter_crash : Added in 10.1.39 -innodb.binlog_consistent : MDEV-10618 - Server fails to start -innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server -innodb.foreign-keys : Modified in 10.1.39 -innodb.foreign_key : Modified in 10.1.39 -innodb.group_commit_crash : MDEV-11770 - checksum mismatch -innodb.group_commit_crash_no_optimize_thread : MDEV-11770 - checksum mismatch -innodb.innodb_28867993 : Added in 10.1.38 -innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup -innodb.innodb-alter : Modified in 10.1.38 -innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS; modified in 10.1.38 -innodb.innodb-alter-nullable : Modified in 10.1.39 -innodb.innodb-alter-table : MDEV-10619 - Testcase timeout -innodb.innodb-blob : MDEV-12053 - Client crash -innodb.innodb_bug14147491 : MDEV-11808 - wrong error codes -innodb.innodb_bug30423 : MDEV-7311 - Wrong number of rows in the plan -innodb.innodb_bug48024 : MDEV-14352 - Assertion failure -innodb.innodb-corrupted-table : Modified in 10.1.39 -innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown -innodb.innodb-index : Modified in 10.1.39 -innodb.innodb_max_recordsize_64k : MDEV-15203 - wrong result -innodb.innodb_monitor : MDEV-10939 - Testcase timeout -innodb.innodb-page_compression_default : MDEV-14121 - Assertion failure -innodb.innodb-page_compression_lzma : MDEV-14353 - wrong result on Fedora 25 -innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem -innodb.innodb_simulate_comp_failures : MDEV-18417 - ASAN failures -innodb.innodb_stats : MDEV-10682 - wrong result -innodb.innodb_sys_semaphore_waits : MDEV-10331 - wrong result -innodb.innodb-table-online : Modified in 10.1.38 -innodb.innodb-truncate : Modified in 10.1.39 -innodb.innodb-virtual-columns : Modified in 10.1.38 -innodb.innodb_zip_innochecksum : Modified in 10.1.38 -innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks -innodb.log_file_size : MDEV-15668 - Not found pattern -innodb.recovery_shutdown : MDEV-15671 - Warning: database page corruption -innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace -innodb.table_definition_cache_debug : MDEV-14206 - Extra warning -innodb.table_flags : MDEV-19374 - Server failed to restart -innodb.xa_debug : Added in 10.1.39 -innodb.xa_recovery : MDEV-15279 - mysqld got exception - -#---------------------------------------------------------------- - -innodb_fts.innodb-fts-fic : MDEV-14154 - Assertion failure -innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning - -#---------------------------------------------------------------- - -maria.insert_select : MDEV-12757 - Timeout -maria.insert_select-7314 : MDEV-16492 - Timeout -maria.maria : MDEV-14430 - Wrong result - -#---------------------------------------------------------------- - -mariabackup.absolute_ibdata_paths : Modified in 10.1.39 -mariabackup.encrypted_page_compressed : Added in 10.1.38 -mariabackup.encrypted_page_corruption : Added in 10.1.38 -mariabackup.huge_lsn : Opt file modified in 10.1.38 -mariabackup.incremental_encrypted : MDEV-15667 - Timeout -mariabackup.mdev-14447 : MDEV-15201 - Timeout -mariabackup.page_compression_level : Added in 10.1.39 -mariabackup.unencrypted_page_compressed : Added in 10.1.38 -mariabackup.xb_compressed_encrypted : MDEV-14812 - Segfault -mariabackup.xb_partition : MDEV-17584 - Crash on shutdown - -#---------------------------------------------------------------- +#----------------------------------------------------------------------- + +funcs_2.memory_charset : MDEV-10290 - Timeout +funcs_2.myisam_charset : MDEV-11535 - Timeout + +#----------------------------------------------------------------------- + +funcs_2/charset.* : MDEV-10999 - test not maintained + +#----------------------------------------------------------------------- + +galera.* : The suite was enabled in 10.1.27 and is still unstable + +#----------------------------------------------------------------------- + +galera_3nodes.* : The suite has not been stabilized yet + +#----------------------------------------------------------------------- + +innodb.alter_crash : Added in 10.1.39 +innodb.binlog_consistent : MDEV-10618 - Server fails to start +innodb.check_ibd_filesize : Added in 10.1.41 +innodb.create_select : Added in 10.1.41 +innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server +innodb.foreign-keys : Modified in 10.1.41 +innodb.foreign_key : Modified in 10.1.39 +innodb.group_commit_crash : MDEV-11770 - Checksum mismatch +innodb.group_commit_crash_no_optimize_thread : MDEV-11770 - Checksum mismatch +innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup +innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS +innodb.innodb-alter-nullable : Modified in 10.1.39 +innodb.innodb-alter-table : MDEV-10619 - Testcase timeout +innodb.innodb-autoinc : Modified in 10.1.41 +innodb.innodb-blob : MDEV-12053 - Client crash +innodb.innodb-corrupted-table : Modified in 10.1.39 +innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown +innodb.innodb-index : Modified in 10.1.39 +innodb.innodb-page_compression_default : MDEV-14121 - Assertion failure +innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result on Fedora 25 +innodb.innodb-page_compression_zip : MDEV-10641 - Mutex problem +innodb.innodb-system-table-view : Added in 10.1.41 +innodb.innodb-truncate : Modified in 10.1.39 +innodb.innodb-wl5980-debug : Added in 10.1.41 +innodb.innodb_bug14147491 : MDEV-11808 - Wrong error codes +innodb.innodb_bug30423 : MDEV-7311 - Wrong number of rows in the plan +innodb.innodb_bug48024 : MDEV-14352 - Assertion failure +innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result +innodb.innodb_monitor : MDEV-10939 - Testcase timeout +innodb.innodb_mysql : MDEV-19873 - Wrong result +innodb.innodb_stats : MDEV-10682 - Wrong result +innodb.innodb_sys_semaphore_waits : MDEV-10331 - Wrong result +innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks +innodb.log_file_size : MDEV-15668 - Not found pattern +innodb.recovery_shutdown : MDEV-15671 - Warning: database page corruption +innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace +innodb.table_definition_cache_debug : MDEV-14206 - Extra warning +innodb.table_flags : MDEV-19374 - Server failed to restart +innodb.trx_id_future : MDEV-20138 - Table doesn't exist in engine; added in 10.1.41 +innodb.xa_debug : Added in 10.1.39 +innodb.xa_recovery : MDEV-15279 - mysqld got exception + +#----------------------------------------------------------------------- + +innodb_fts.innodb_ft_aux_table : Added in 10.1.41 +innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning + +#----------------------------------------------------------------------- + +maria.insert_select : MDEV-12757 - Timeout +maria.insert_select-7314 : MDEV-16492 - Timeout +maria.maria : MDEV-14430 - Wrong result + +#----------------------------------------------------------------------- + +mariabackup.absolute_ibdata_paths : Modified in 10.1.39 +mariabackup.apply-log-only : MDEV-20135 - Timeout +mariabackup.huge_lsn : MDEV-17286 - SSL error +mariabackup.incremental_encrypted : MDEV-15667 - Timeout +mariabackup.mdev-14447 : MDEV-15201 - Timeout +mariabackup.page_compression_level : Added in 10.1.39 +mariabackup.xb_compressed_encrypted : MDEV-14812 - Segfault +mariabackup.xb_partition : MDEV-17584 - Crash on shutdown + +#----------------------------------------------------------------------- mroonga/storage.column_datetime_32bit_2038 : Wrong result on Alpha mroonga/storage.column_datetime_32bit_before_unix_epoch : Wrong result on Alpha @@ -333,231 +353,260 @@ mroonga/storage.index_multiple_column_unique_date_order_32bit_desc : Wrong resul mroonga/storage.index_multiple_column_unique_datetime_index_read : MDEV-8643 - valgrind warnings mroonga/storage.repair_table_no_index_file : MDEV-9364 - wrong result, MDEV-14807 - wrong error message -mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message +#----------------------------------------------------------------------- + +mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message -#---------------------------------------------------------------- +#----------------------------------------------------------------------- multi_source.gtid : MDEV-10417 - Fails on Mips multi_source.info_logs : MDEV-10042 - Wrong result, MDEV-12629 - Valgrind warnings +multi_source.mdev-8874 : Added in 10.1.41 multi_source.multisource : MDEV-10417 - Fails on Mips multi_source.reset_slave : MDEV-10690 - wrong result multi_source.simple : MDEV-4633 - Wrong slave status output multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_heartbeats -#---------------------------------------------------------------- +#----------------------------------------------------------------------- -parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query +parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query parts.partition_auto_increment_archive : MDEV-16491 - Table marked as crashed -parts.partition_auto_increment_maria : MDEV-14430 - Wrong result -parts.partition_auto_increment_max : Added in 10.1.39 -parts.partition_exch_qa_10 : MDEV-11765 - wrong result -parts.partition_innodb_status_file : MDEV-12901 - Valgrind +parts.partition_auto_increment_maria : MDEV-14430 - Wrong result +parts.partition_auto_increment_max : Added in 10.1.39 +parts.partition_exch_qa_10 : MDEV-11765 - wrong result +parts.partition_innodb_status_file : MDEV-12901 - Valgrind -#---------------------------------------------------------------- +#----------------------------------------------------------------------- perfschema.connect_attrs : MDEV-17283 - Wrong result -perfschema.dml_setup_instruments : Modified in 10.1.38 perfschema.func_file_io : MDEV-5708 - fails for s390x perfschema.func_mutex : MDEV-5708 - fails for s390x perfschema.hostcache_ipv6_ssl : MDEV-10696 - crash on shutdown perfschema.privilege_table_io : MDEV-13184 - Extra lines perfschema.rpl_gtid_func : MDEV-16897 - Wrong result -perfschema.socket_connect : Modified in 10.1.38 perfschema.socket_summary_by_event_name_func : MDEV-10622 - Socket summary tables do not match perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders perfschema.stage_mdl_procedure : MDEV-11545 - Wrong result perfschema.stage_mdl_table : MDEV-12638 - Wrong result perfschema.threads_mysql : MDEV-10677 - sporadic wrong result -perfschema_stress.* : MDEV-10996 - tests not maintained +#----------------------------------------------------------------------- + +perfschema_stress.* : MDEV-10996 - tests not maintained -#---------------------------------------------------------------- +#----------------------------------------------------------------------- plugins.feedback_plugin_send : MDEV-7932 - ssl failed for url plugins.pam : Modified in 10.1.39 plugins.server_audit : MDEV-9562 - crashes on sol10-sparc plugins.thread_pool_server_audit : MDEV-9562 - crashes on sol10-sparc -#---------------------------------------------------------------- - -roles.create_and_grant_role : MDEV-11772 - wrong result -roles.flush_roles-17898 : Modified in 10.1.39 - -#---------------------------------------------------------------- - -rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free -rpl.kill_race_condition : MDEV-19370 - Wrong value for slave parameter; added in 10.1.39 -rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_index : MDEV-9501 - Warning: failed registering on master -rpl.rpl_colSize : MDEV-16112 - Server crash -rpl.rpl_ddl : MDEV-10417 - Fails on Mips -rpl.rpl_domain_id_filter_io_crash : MDEV-14357 - Wrong result -rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors -rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Warnings/errors -rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start -rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_gtid_basic : MDEV-10681 - server startup problem -rpl.rpl_gtid_crash : MDEV-9501 - Warning: failed registering on master -rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout in include -rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings -rpl.rpl_gtid_reconnect : MDEV-14497 - Timeout -rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings -rpl.rpl_gtid_until : MDEV-10625 - warnings in error log -rpl.rpl_idempotency : Modified in 10.1.38 -rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips -rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_id : MDEV-15197 - Wrong result -rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure -rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query -rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips -rpl.rpl_mariadb_slave_capability : MDEV-11018 - sporadic wrong events in binlog -rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors -rpl.rpl_mdev6020 : MDEV-10417 - Fails on Mips -rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed +#----------------------------------------------------------------------- + +roles.create_and_grant_role : MDEV-11772 - wrong result +roles.flush_roles-17898 : Modified in 10.1.39 + +#----------------------------------------------------------------------- + +rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free +rpl.create_or_replace_mix : Include file modified in 10.1.41 +rpl.create_or_replace_row : Include file modified in 10.1.41 +rpl.create_or_replace_statement : Include file modified in 10.1.41 +rpl.create_select : MDEV-14121 - Assertion failure +rpl.kill_race_condition : Modified in 10.1.41 +rpl.last_insert_id : MDEV-10625 - warnings in error log +rpl.mdev_17588 : MDEV-20137 - Table doesn't exist; added in 10.1.41 +rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log +rpl.rpl_binlog_index : MDEV-9501 - Warning: failed registering on master +rpl.rpl_blackhole : Modified in 10.1.41 +rpl.rpl_blackhole_row_annotate : Added in 10.1.41 +rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_ddl : MDEV-10417 - Fails on Mips +rpl.rpl_domain_id_filter_io_crash : MDEV-14357 - Wrong result +rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors +rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Warnings/errors +rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start +rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_gtid_basic : MDEV-10681 - server startup problem +rpl.rpl_gtid_crash : MDEV-9501 - Warning: failed registering on master +rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout in include +rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings +rpl.rpl_gtid_reconnect : MDEV-14497 - Timeout +rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings +rpl.rpl_gtid_until : MDEV-10625 - warnings in error log +rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips +rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_id : MDEV-15197 - Wrong result +rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure +rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query +rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_mariadb_slave_capability : MDEV-11018 - sporadic wrong events in binlog +rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors +rpl.rpl_mdev6020 : MDEV-10417 - Fails on Mips +rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master pos wait -rpl.rpl_non_direct_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_parallel : MDEV-10653 - Timeouts -rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure -rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout -rpl.rpl_parallel_optimistic : MDEV-10511 - Timeout -rpl.rpl_parallel_retry : MDEV-11119 - Server crash -rpl.rpl_parallel_temptable : MDEV-10356 - Crash in close_thread_tables -rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips -rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings -rpl.rpl_rewrt_db : Modified in 10.1.39 -rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start -rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_big_table_id : Added in 10.1.38 -rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result -rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_min : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_semi_sync : MDEV-11220 - Wrong result -rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Wrong plugin status -rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition -rpl.rpl_show_slave_hosts : MDEV-10681 - server startup problem -rpl.rpl_skip_replication : MDEV-9268 - Fails with timeout in sync_slave_with_master on Alpha -rpl.rpl_slave_grp_exec : MDEV-10514 - Unexpected deadlock -rpl.rpl_slave_invalid_external_user : Added in 10.1.39 -rpl.rpl_start_stop_slave : MDEV-13567 - Replication failure -rpl.rpl_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion -rpl.rpl_sync : MDEV-10633 - Database page corruption -rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries -rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_trigger : MDEV-18055 - Wrong result -rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result - -rpl/extra/rpl_tests.* : MDEV-10994 - tests not maintained - -#---------------------------------------------------------------- +rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master pos wait +rpl.rpl_non_direct_stm_mixing_engines : MDEV-14489 - Sync slave with master failed +rpl.rpl_parallel : MDEV-10653 - Timeouts +rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure +rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout +rpl.rpl_parallel_optimistic : MDEV-10511 - Timeout +rpl.rpl_parallel_retry : MDEV-11119 - Server crash +rpl.rpl_parallel_temptable : MDEV-10356 - Crash in close_thread_tables +rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips +rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings +rpl.rpl_rewrt_db : Modified in 10.1.39 +rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start +rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result +rpl.rpl_row_drop_temp_table : Added in 10.1.41 +rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_min : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_index_choice : MDEV-15196 - Slave crash +rpl.rpl_row_mysqlbinlog : Modified in 10.1.41 +rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_semi_sync : MDEV-11220 - Wrong result +rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings +rpl.rpl_semi_sync_skip_repl : Modified in 10.1.41 +rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Wrong plugin status; modified in 10.1.41 +rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition +rpl.rpl_show_slave_hosts : MDEV-10681 - server startup problem +rpl.rpl_skip_replication : MDEV-9268 - Fails with timeout in sync_slave_with_master on Alpha +rpl.rpl_slave_grp_exec : MDEV-10514 - Unexpected deadlock +rpl.rpl_slave_invalid_external_user : Added in 10.1.39 +rpl.rpl_start_stop_slave : MDEV-13567 - Replication failure +rpl.rpl_stm_mixing_engines : MDEV-14489 - Sync slave with master failed +rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion +rpl.rpl_sync : MDEV-10633 - Database page corruption +rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_trigger : MDEV-18055 - Wrong result +rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error in test +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result + +#----------------------------------------------------------------------- + +rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc + +#----------------------------------------------------------------------- + +rpl/extra/rpl_tests.* : MDEV-10994 - tests not maintained + +#----------------------------------------------------------------------- + +sphinx.* : MDEV-10986 - Tests have not been maintained + +#----------------------------------------------------------------------- spider.* : MDEV-9329 - tests are too memory-consuming +#----------------------------------------------------------------------- + spider/bg.direct_aggregate : MDEV-7098 - Trying to unlock mutex that wasn't locked spider/bg.direct_aggregate_part : MDEV-7098 - Trying to unlock mutex that wasn't locked spider/bg.ha : MDEV-9329 - failures on s390x spider/bg.ha_part : MDEV-9329 - Fails on Ubuntu/s390x +spider/bg.spider3_fixes : MDEV-12639 - Packets out of order spider/bg.spider_fixes : MDEV-7098 -Mutex problem, MDEV-9329 - failures on s390x spider/bg.spider_fixes_part : MDEV-7098 - Trying to unlock mutex that wasn't locked -spider/bg.spider3_fixes : MDEV-12639 - Packets out of order spider/bg.vp_fixes : MDEV-9329 - Fails on Ubuntu/s390x -spider/handler.* : MDEV-10987, MDEV-10990 - Tests have not been maintained +#----------------------------------------------------------------------- -#---------------------------------------------------------------- - -sphinx.* : MDEV-10986 - Tests have not been maintained +spider/handler.* : MDEV-10987, MDEV-10990 - Tests have not been maintained -#---------------------------------------------------------------- +#----------------------------------------------------------------------- -storage_engine* : Tests are not always timely maintained +storage_engine.* : Tests are not always timely maintained -#---------------------------------------------------------------- +#----------------------------------------------------------------------- stress.ddl_innodb : MDEV-10635 - Testcase timeout -#---------------------------------------------------------------- - -sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : MDEV-17683 - Wrong result; modified in 10.1.38 -sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout -sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash -sys_vars.rpl_init_slave_func : MDEV-10149 - wrong results -sys_vars.sql_low_priority_updates_func : Modified in 10.1.38 -sys_vars.table_definition_cache_basic : Modified in 10.1.38 -sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result -sys_vars.thread_stack_basic : Modified in 10.1.39 -sys_vars.transaction_prealloc_size_bug27322 : Modified in 10.1.39 -sys_vars.wait_timeout_func : MDEV-12896 - Wrong result -sys_vars.wsrep_sst_method_basic : Modified in 10.1.38 - -#---------------------------------------------------------------- - -tokudb.change_column_all_1000_10 : MDEV-12640 - Crash -tokudb.change_column_bin : MDEV-12640 - Crash -tokudb.change_column_char : MDEV-12822 - Lost connection to MySQL server -tokudb.cluster_filter : MDEV-10678 - Wrong execution plan -tokudb.cluster_filter_hidden : MDEV-10678 - Wrong execution plan -tokudb.cluster_filter_unpack_varchar : MDEV-10636 - Wrong execution plan -tokudb.dir_per_db : MDEV-11537 - Wrong result +#----------------------------------------------------------------------- + +sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x +sys_vars.delayed_insert_limit_func : MDEV-17683 - Wrong result +sys_vars.innodb_ft_result_cache_limit_32 : Modified in 10.1.41 +sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout +sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash +sys_vars.rpl_init_slave_func : MDEV-10149 - wrong results +sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result +sys_vars.thread_stack_basic : Modified in 10.1.39 +sys_vars.transaction_prealloc_size_bug27322 : Modified in 10.1.39 +sys_vars.wait_timeout_func : MDEV-12896 - Wrong result + +#----------------------------------------------------------------------- + +tokudb.change_column_all_1000_10 : MDEV-12640 - Crash +tokudb.change_column_bin : MDEV-12640 - Crash +tokudb.change_column_char : MDEV-12822 - Lost connection to MySQL server +tokudb.cluster_filter : MDEV-10678 - Wrong execution plan +tokudb.cluster_filter_hidden : MDEV-10678 - Wrong execution plan +tokudb.cluster_filter_unpack_varchar : MDEV-10636 - Wrong execution plan +tokudb.dir_per_db : MDEV-11537 - Wrong result tokudb.dir_per_db_rename_to_nonexisting_schema : MDEV-14359 - Directory not empty -tokudb.hotindex-insert-bigchar : MDEV-12640 - Crash -tokudb.hotindex-insert-0 : MDEV-15271 - Timeout -tokudb.hotindex-insert-1 : MDEV-13870 - Lost connection to MySQL server -tokudb.hotindex-update-0 : MDEV-15198 - Timeout -tokudb.hotindex-update-1 : MDEV-12640 - Crash -tokudb.locks-select-update-1 : MDEV-13406 - Lock wait timeout -tokudb.rows-32m-rand-insert : MDEV-12640 - Crash -tokudb.rows-32m-seq-insert : MDEV-12640 - Crash -tokudb.savepoint-5 : MDEV-15280 - Wrong result -tokudb.type_datetime : MDEV-15193 - Wrong result - -tokudb_backup.* : MDEV-11001 - tests don't work - -tokudb_bugs.PS-4979 : Added in 10.1.38 -tokudb_bugs.PS-5158 : Added in 10.1.39 -tokudb_bugs.PS-5163 : Added in 10.1.39 -tokudb_bugs.checkpoint_lock : MDEV-10637 - Wrong processlist output -tokudb_bugs.checkpoint_lock_3 : MDEV-10637 - Wrong processlist output -tokudb_bugs.frm_store : MDEV-12823 - Valgrind -tokudb_bugs.frm_store2 : MDEV-12823 - Valgrind -tokudb_bugs.frm_store3 : MDEV-12823 - Valgrind -tokudb_bugs.xa : MDEV-11804 - Lock wait timeout - -tokudb_rpl.* : MDEV-11001 - tests don't work -tokudb_sys_vars.* : MDEV-11001 - tests don't work - -rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc - -#---------------------------------------------------------------- +tokudb.hotindex-insert-0 : MDEV-15271 - Timeout +tokudb.hotindex-insert-1 : MDEV-13870 - Lost connection to MySQL server +tokudb.hotindex-insert-bigchar : MDEV-12640 - Crash +tokudb.hotindex-update-0 : MDEV-15198 - Timeout +tokudb.hotindex-update-1 : MDEV-12640 - Crash +tokudb.locks-select-update-1 : MDEV-13406 - Lock wait timeout +tokudb.rows-32m-rand-insert : MDEV-12640 - Crash +tokudb.rows-32m-seq-insert : MDEV-12640 - Crash +tokudb.savepoint-5 : MDEV-15280 - Wrong result +tokudb.type_datetime : MDEV-15193 - Wrong result + +#----------------------------------------------------------------------- + +tokudb_backup.* : MDEV-11001 - tests don't work + +#----------------------------------------------------------------------- + +tokudb_bugs.PS-5158 : Added in 10.1.39 +tokudb_bugs.PS-5163 : Added in 10.1.39 +tokudb_bugs.checkpoint_lock : MDEV-10637 - Wrong processlist output +tokudb_bugs.checkpoint_lock_3 : MDEV-10637 - Wrong processlist output +tokudb_bugs.frm_store : MDEV-12823 - Valgrind +tokudb_bugs.frm_store2 : MDEV-12823 - Valgrind +tokudb_bugs.frm_store3 : MDEV-12823 - Valgrind +tokudb_bugs.xa : MDEV-11804 - Lock wait timeout + +#----------------------------------------------------------------------- + +tokudb_rpl.* : MDEV-11001 - tests don't work + +#----------------------------------------------------------------------- + +tokudb_sys_vars.* : MDEV-11001 - tests don't work + +#----------------------------------------------------------------------- unit.ma_pagecache_consist_64kRD : MDEV-19367 - AddressSanitizer CHECK failed unit.ma_pagecache_consist_64kWR : MDEV-19367 - AddressSanitizer CHECK failed unit.ma_test_loghandler : MDEV-10638 - record read not ok -#---------------------------------------------------------------- +#----------------------------------------------------------------------- vcol.not_supported : MDEV-10639 - Testcase timeout vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout vcol.vcol_misc : MDEV-16651 - Wrong error message vcol.wrong_arena : Modified in 10.1.39 -#---------------------------------------------------------------- +#----------------------------------------------------------------------- wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node wsrep.mdev_6832 : MDEV-14195 - Failure upon check-testcase wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use wsrep.variables : MDEV-17585 - Deadlock -wsrep_info.plugin : MDEV-12909 - Wrong result +#----------------------------------------------------------------------- + +wsrep_info.* : Cnf file modified in 10.1.41 +wsrep_info.plugin : MDEV-12909 - Wrong result diff --git a/mysql-test/valgrind.supp b/mysql-test/valgrind.supp index c4a0cae994592b319d1b0a5f533eda34e9288bce..80e9e044dbe5ef8b8b892d2a4a2b0bf37f626e9d 100644 --- a/mysql-test/valgrind.supp +++ b/mysql-test/valgrind.supp @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # Suppress some common (not fatal) errors in system libraries found by valgrind diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt index 704ddf8bb49e995223bdb19de2b88b7f90fa0a4a..22b46e3893ad5a4809f042acd7ff616713fc4c18 100644 --- a/mysys/CMakeLists.txt +++ b/mysys/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/mysys) diff --git a/mysys/array.c b/mysys/array.c index 5548ca1b69482d83c3993d2f4ff73bce2edf42ce..07abc460de71194fe199a188841f4660125af77d 100644 --- a/mysys/array.c +++ b/mysys/array.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Handling of arrays that can grow dynamicly. */ diff --git a/mysys/base64.c b/mysys/base64.c index 04411418857a2906e583b42830a7690ca72142e8..d0569d3485526623f84867ba2256f1a7c0ada6d8 100644 --- a/mysys/base64.c +++ b/mysys/base64.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include /* strchr() */ diff --git a/mysys/charset-def.c b/mysys/charset-def.c index defb5c0062d255c734b58d339959ac4ac1f0f925..8539f7b28032689d3364b20a548d28be5635b362 100644 --- a/mysys/charset-def.c +++ b/mysys/charset-def.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/charset.c b/mysys/charset.c index ad3eb78ae0e28cb4652995b27df00e3359eb17ce..31bde080dc22926aa8338a25eb68b3d4a2e5fdd3 100644 --- a/mysys/charset.c +++ b/mysys/charset.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/checksum.c b/mysys/checksum.c index a948785d9351e3b42d1024ff1fd1848143d72032..e48535813d36dceff938017a8624320b08672f07 100644 --- a/mysys/checksum.c +++ b/mysys/checksum.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/mysys/errors.c b/mysys/errors.c index 2d29740a689dd377a4ddbe73c26fa26798a3c0ed..786ad9afb3a839af2f2895e6f8bf616803efb1e9 100644 --- a/mysys/errors.c +++ b/mysys/errors.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/file_logger.c b/mysys/file_logger.c index 078286cd7d0898279952d78e81626897402c20b6..8420ee075b01fda28ff27a32518288d872b7645b 100644 --- a/mysys/file_logger.c +++ b/mysys/file_logger.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef FLOGGER_SKIP_INCLUDES diff --git a/mysys/hash.c b/mysys/hash.c index 3c17dcb991c42a862a3973345a21ac8fd4aff30e..50a1d0a54f841979bf5715ab048305b6254263ec 100644 --- a/mysys/hash.c +++ b/mysys/hash.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* The hash functions used for saveing keys */ /* One of key_length or key_length_offset must be given */ diff --git a/mysys/lf_alloc-pin.c b/mysys/lf_alloc-pin.c index b9260b115bd921f1617d97a02210cda0ad298109..c7777cc8f543497b128384fe13ce2c2c2832bc4e 100644 --- a/mysys/lf_alloc-pin.c +++ b/mysys/lf_alloc-pin.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* wait-free concurrent allocator based on pinning addresses diff --git a/mysys/lf_dynarray.c b/mysys/lf_dynarray.c index bb6cbcefc49420039ab76ea71096f2b8a6f485ac..be23690c70b616c8998fb628bca8b52fe5037b9d 100644 --- a/mysys/lf_dynarray.c +++ b/mysys/lf_dynarray.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Analog of DYNAMIC_ARRAY that never reallocs diff --git a/mysys/lf_hash.c b/mysys/lf_hash.c index 5e407e9caece59acdb0459a9ac44d567ca8ad729..c0e7917055b93406a07f02331ff3ec60847e63b2 100644 --- a/mysys/lf_hash.c +++ b/mysys/lf_hash.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* extensible hash diff --git a/mysys/list.c b/mysys/list.c index fb46120db04874f545c1e19b0fd72bd87a3f7db5..8f4c934f64e86a28faf870776b59632f71f2d674 100644 --- a/mysys/list.c +++ b/mysys/list.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Code for handling dubble-linked lists in C diff --git a/mysys/mf_arr_appstr.c b/mysys/mf_arr_appstr.c index d5a0e0707dcb0ecd8e6dfe1afe8f9ca8c2fbf230..7c105bcf86b64507f545017507951052002c178e 100644 --- a/mysys/mf_arr_appstr.c +++ b/mysys/mf_arr_appstr.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include /* strcmp() */ diff --git a/mysys/mf_cache.c b/mysys/mf_cache.c index a3426889a82007f90c954368452d9d2836aac021..0e8a01266c1560272b94d0d2a833596201b60b33 100644 --- a/mysys/mf_cache.c +++ b/mysys/mf_cache.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Open a temporary file and cache it with io_cache. Delete it on close */ diff --git a/mysys/mf_dirname.c b/mysys/mf_dirname.c index bc827f60d44c321f16d8121fd84d2f2565c10ff8..700a68e4f3a97c17859c6e3f93f8ce1d70f1ab56 100644 --- a/mysys/mf_dirname.c +++ b/mysys/mf_dirname.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_fn_ext.c b/mysys/mf_fn_ext.c index debed8afed39fd79c7f8a2a9866cf448a5660151..3501ca7c231d8d6171d881eff7f8b2d27ce7c83b 100644 --- a/mysys/mf_fn_ext.c +++ b/mysys/mf_fn_ext.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/mf_format.c b/mysys/mf_format.c index 6672a4386e4726925b855565789163f9c761224a..57ac3ea43fab670ab43a305bf5f96a1c9a877b14 100644 --- a/mysys/mf_format.c +++ b/mysys/mf_format.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_getdate.c b/mysys/mf_getdate.c index ed8544a23fe402cfa9f1d4c37a212cc4b0af116e..3db0398bbfe1fa6ce219f0da99d3711446790617 100644 --- a/mysys/mf_getdate.c +++ b/mysys/mf_getdate.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Get date in a printable form: yyyy-mm-dd hh:mm:ss */ diff --git a/mysys/mf_iocache.c b/mysys/mf_iocache.c index 5072a32206be6f5f521b00809735c13971676dcb..1245a622262ba0be37d3416207ca1e331dd9faea 100644 --- a/mysys/mf_iocache.c +++ b/mysys/mf_iocache.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Cashing of files with only does (sequential) read or writes of fixed- diff --git a/mysys/mf_iocache2.c b/mysys/mf_iocache2.c index f38773316643e784e60f4c71e25554b6669d5b0f..ea426347c183e70745fdae2368bc11ebd86c0b59 100644 --- a/mysys/mf_iocache2.c +++ b/mysys/mf_iocache2.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* More functions to be used with IO_CACHE files diff --git a/mysys/mf_keycache.c b/mysys/mf_keycache.c index 9356f9154f0694c0fd3702de2c568db623882da4..299a9390b9b9ca818c0f1325077edc783e14d804 100644 --- a/mysys/mf_keycache.c +++ b/mysys/mf_keycache.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ diff --git a/mysys/mf_keycaches.c b/mysys/mf_keycaches.c index 7dbfc26a3658ef98c92acf1d4b23280a5b7f1e87..199fb10988b1948c56b4146df64e3993668ab94e 100644 --- a/mysys/mf_keycaches.c +++ b/mysys/mf_keycaches.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Handling of multiple key caches diff --git a/mysys/mf_loadpath.c b/mysys/mf_loadpath.c index 7bad535585ad4c0e2b367ecb33c6cae07e865aab..0a716aa57a5bf11db28af7741dc4d13c14559114 100644 --- a/mysys/mf_loadpath.c +++ b/mysys/mf_loadpath.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_pack.c b/mysys/mf_pack.c index e246ff17f22748dfa4898f238b85afc0779d4df1..d79aa18dab2c45d617d3651e2b68a288fb748d64 100644 --- a/mysys/mf_pack.c +++ b/mysys/mf_pack.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ #include "mysys_priv.h" diff --git a/mysys/mf_path.c b/mysys/mf_path.c index 725cf278f6f4e40dc841805e7aa7d1ae3a8f7dfe..7da925d6f5f4e123d30791dd84d8b9222894b943 100644 --- a/mysys/mf_path.c +++ b/mysys/mf_path.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_qsort.c b/mysys/mf_qsort.c index 3e91c0ac0b0d7b660e2b142b0b76bb457b30617a..3f91bb353547968a16ba06ffe8491581962a4d89 100644 --- a/mysys/mf_qsort.c +++ b/mysys/mf_qsort.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* qsort implementation optimized for comparison of pointers diff --git a/mysys/mf_qsort2.c b/mysys/mf_qsort2.c index 501f08c5dce5c59ee42a57316d02b33ac8061854..cee460f8de126ffca64326a3eb362436c097e55f 100644 --- a/mysys/mf_qsort2.c +++ b/mysys/mf_qsort2.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* qsort that sends one extra argument to the compare subrutine */ diff --git a/mysys/mf_radix.c b/mysys/mf_radix.c index 11c4ac45a939ec8e372cd9f623a511abae836a03..8f044cf9b2912419ac650dee690d6372d057cd7b 100644 --- a/mysys/mf_radix.c +++ b/mysys/mf_radix.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Radixsort for pointers to fixed length strings. diff --git a/mysys/mf_same.c b/mysys/mf_same.c index 244dc650d8b9e717a0d8654c7caaaf2052b10aa5..fda0710ca16cde419ee8f279b7a811932c305584 100644 --- a/mysys/mf_same.c +++ b/mysys/mf_same.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Kopierar biblioteksstrukturen och extensionen fr}n ett filnamn */ diff --git a/mysys/mf_sort.c b/mysys/mf_sort.c index b2c58c26624b6d12a21ab2758bb586e6139b3ba3..3cbad020cb1d5bbb9ff44854d05e3a598c78e7c7 100644 --- a/mysys/mf_sort.c +++ b/mysys/mf_sort.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Sort of string pointers in string-order with radix or qsort */ diff --git a/mysys/mf_soundex.c b/mysys/mf_soundex.c index 2784d11280506790f66c5ead7e24427fd9021f65..b686cac89b4b8c13b019fe00b834fb749b629aa9 100644 --- a/mysys/mf_soundex.c +++ b/mysys/mf_soundex.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /**************************************************************** * SOUNDEX ALGORITHM in C * diff --git a/mysys/mf_tempdir.c b/mysys/mf_tempdir.c index 2fbbedc4e89f96ed1ec2015ce9a42d97d7c4a6f3..39de3570fad2263b1c885e18e173bb5f8b44736b 100644 --- a/mysys/mf_tempdir.c +++ b/mysys/mf_tempdir.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_tempfile.c b/mysys/mf_tempfile.c index 62b3e09747fe61ae4bbd979c671a37c4ebea751e..a535d35a53ffcfa73dcc09189ad922b1a9ab6d6f 100644 --- a/mysys/mf_tempfile.c +++ b/mysys/mf_tempfile.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_unixpath.c b/mysys/mf_unixpath.c index 6777c27bc96543701c0eee36209df31701372ee0..cc2b671ab64fff364a595f2f31516ff939ea39d2 100644 --- a/mysys/mf_unixpath.c +++ b/mysys/mf_unixpath.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/mf_wcomp.c b/mysys/mf_wcomp.c index fe64d06f2db104fa29fe493888c87316bbaf5c63..6fb19ebae698e4389724bd3f6f2ddcd260515c89 100644 --- a/mysys/mf_wcomp.c +++ b/mysys/mf_wcomp.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Funktions for comparing with wild-cards */ diff --git a/mysys/mulalloc.c b/mysys/mulalloc.c index fceecdc1dc7359695aae77846fba07dc73f5a2a2..f22464e45eef1e5705f375e218d1734ee8a48e97 100644 --- a/mysys/mulalloc.c +++ b/mysys/mulalloc.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_access.c b/mysys/my_access.c index 75774240406074b3b60793a31e00c2cf9c562d7a..4fbea8bd3b0bfa2c26f3da6ba571e27fad4cd216 100644 --- a/mysys/my_access.c +++ b/mysys/my_access.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_addr_resolve.c b/mysys/my_addr_resolve.c index b82792fc4b5b10def60d224fddbb8e02b42fb90e..d16f33036ab190360f925c089a1e9b28f294add8 100644 --- a/mysys/my_addr_resolve.c +++ b/mysys/my_addr_resolve.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_alarm.c b/mysys/my_alarm.c index 4672627a90874d6321884b85884d7babc9719b8a..ee11dc9ce8570677588ee037d58b227ffed8596c 100644 --- a/mysys/my_alarm.c +++ b/mysys/my_alarm.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Function to set a varible when we got a alarm */ /* Used by my_lock samt functions in m_alarm.h */ diff --git a/mysys/my_alloc.c b/mysys/my_alloc.c index 276ad080520f64b56a381de97e7ac94e350787c7..3b614cb4c15518a241cb976506a2f9d7ba0f5ce1 100644 --- a/mysys/my_alloc.c +++ b/mysys/my_alloc.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Routines to handle mallocing of results which will be freed the same time */ @@ -217,7 +217,7 @@ void *alloc_root(MEM_ROOT *mem_root, size_t length) DBUG_SET("-d,simulate_out_of_memory"); DBUG_RETURN((void*) 0); /* purecov: inspected */ }); - length= ALIGN_SIZE(length); + length= ALIGN_SIZE(length) + REDZONE_SIZE; if ((*(prev= &mem_root->free)) != NULL) { if ((*prev)->left < length && @@ -265,6 +265,7 @@ void *alloc_root(MEM_ROOT *mem_root, size_t length) mem_root->used= next; mem_root->first_block_usage= 0; } + point+= REDZONE_SIZE; TRASH_ALLOC(point, original_length); DBUG_PRINT("exit",("ptr: %p", point)); DBUG_RETURN((void*) point); diff --git a/mysys/my_atomic.c b/mysys/my_atomic.c index 26348b518ae1028033056d8f3cedd30e44bf7c9a..72d7f132988bbf86436a6e0002a3c9815e3afbce 100644 --- a/mysys/my_atomic.c +++ b/mysys/my_atomic.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/my_basename.c b/mysys/my_basename.c index 9d1eaf53efabe3eaf361efe0351ee7a8297597e5..68f5565b269c8e989bee5f171629dba65cc0e0e3 100644 --- a/mysys/my_basename.c +++ b/mysys/my_basename.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include /** diff --git a/mysys/my_bit.c b/mysys/my_bit.c index d36f52bb3c0fb71d3936dd0c34ffd57ce91d6088..fdf767fa5beafec5fb03023466eb9fa289999af1 100644 --- a/mysys/my_bit.c +++ b/mysys/my_bit.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/mysys/my_bitmap.c b/mysys/my_bitmap.c index 0eaf1a88aa1ab7959c4b407e84bf8b6c1d4ba615..ce48b9fdf411c02f5f43ba55b9a61806154cd878 100644 --- a/mysys/my_bitmap.c +++ b/mysys/my_bitmap.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Handling of uchar arrays as large bitmaps. diff --git a/mysys/my_chmod.c b/mysys/my_chmod.c index 095ac858834a98db2c24c87bcbe895219bbf6863..3d0863936a7e55d4f68dada159aa5794befc24e7 100644 --- a/mysys/my_chmod.c +++ b/mysys/my_chmod.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_chsize.c b/mysys/my_chsize.c index 51da6be79358e67e6fbc98b5a1f3b12aafb37fbe..4fd443f536447cae15b9e1407eaf1fc4f11cbe34 100644 --- a/mysys/my_chsize.c +++ b/mysys/my_chsize.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_compare.c b/mysys/my_compare.c index 7fb2ef979162c3a5e9cedae2d3305c1136082655..7e11f5ffb4eea630bb435d443eb248ffbad29a7a 100644 --- a/mysys/my_compare.c +++ b/mysys/my_compare.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/my_compress.c b/mysys/my_compress.c index 0e4db5c3b17447c159480c032f0214f4079c17ee..7cd85d57dd8a45c8b85366a910d58dd88325d671 100644 --- a/mysys/my_compress.c +++ b/mysys/my_compress.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Written by Sinisa Milivojevic */ diff --git a/mysys/my_conio.c b/mysys/my_conio.c index 0af5706cace44eba88219702bf3ad445dd6cd303..bac9f4afdf9fe357ad1d61cf2918765e3bdfa28e 100644 --- a/mysys/my_conio.c +++ b/mysys/my_conio.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_copy.c b/mysys/my_copy.c index bd23dfc48cdb0ff0dba755499f474dbb29a69fc9..f73737828ce5fa9bcf2c211f790475baaf1d934f 100644 --- a/mysys/my_copy.c +++ b/mysys/my_copy.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_crc32.c b/mysys/my_crc32.c index 0981c75755dc9ab73c6a5755d8e4d16ff87f33bc..3fa8c4b83ebdf02c6d350c3665dac4ebc6e633bc 100644 --- a/mysys/my_crc32.c +++ b/mysys/my_crc32.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_create.c b/mysys/my_create.c index 014b65c4e14f423252ce6309add2da1036591e8a..6fb817da8df047916824a3e52e8c39c4c4a8785f 100644 --- a/mysys/my_create.c +++ b/mysys/my_create.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_default.c b/mysys/my_default.c index 5c4e33141a62673442d7899ba23ca5ba1f7e0415..32faf2045f9a99d9c6a19ed5a94674f2a27d3906 100644 --- a/mysys/my_default.c +++ b/mysys/my_default.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /**************************************************************************** Add all options from files named "group".cnf from the default_directories diff --git a/mysys/my_delete.c b/mysys/my_delete.c index 0faf6079d989653e0d189b7a1778289ab3dbd6e4..28889df280bd4d5df61743583aeff871d42536e1 100644 --- a/mysys/my_delete.c +++ b/mysys/my_delete.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_div.c b/mysys/my_div.c index 44eb5392421a4a09f73719350449f66ba1675452..3395d1422caa33ae2d80b47d52110c7285a83b45 100644 --- a/mysys/my_div.c +++ b/mysys/my_div.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_dlerror.c b/mysys/my_dlerror.c index db21b7fc274e60a94d18f82f368a72d15e2fd256..ab34da0e3af1413aacd3dfa55e312d4ce51e1873 100644 --- a/mysys/my_dlerror.c +++ b/mysys/my_dlerror.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/my_error.c b/mysys/my_error.c index 44d112bc049d3662af2751bee0421e7408c9765b..ce20c8067ecb1fe0daf49a38457da75fe2e73255 100644 --- a/mysys/my_error.c +++ b/mysys/my_error.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_file.c b/mysys/my_file.c index 23226595b2e49e2768d24de07ab9e2c8fbadef81..17b2493962a4fc1a85559a9fd0de465b566951e5 100644 --- a/mysys/my_file.c +++ b/mysys/my_file.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "my_static.h" diff --git a/mysys/my_fopen.c b/mysys/my_fopen.c index c720e2c91683dcb84f2779cbe93356768ffc2c50..e962b9d03a4601138d525e22ab1643b10817557a 100644 --- a/mysys/my_fopen.c +++ b/mysys/my_fopen.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "my_static.h" diff --git a/mysys/my_fstream.c b/mysys/my_fstream.c index de752fa149f8f0f0f5865740461a5699104ac72c..9c8edb644d4d94ddb5afb09e60018a1c778991c8 100644 --- a/mysys/my_fstream.c +++ b/mysys/my_fstream.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* USE_MY_STREAM isn't set because we can't thrust my_fclose! */ diff --git a/mysys/my_gethwaddr.c b/mysys/my_gethwaddr.c index 0fad7f905527a8a62c7293012f8fd8d31069fa52..70e1d549e1565b269805cdac9ee74b1c36cb1865 100644 --- a/mysys/my_gethwaddr.c +++ b/mysys/my_gethwaddr.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* get hardware address for an interface */ /* if there are many available, any non-zero one can be used */ diff --git a/mysys/my_getncpus.c b/mysys/my_getncpus.c index cc2c3843e0e4c46f5d159d372ccba50820627cd9..38585161c22cfc28145277b718541bfcf56eac1e 100644 --- a/mysys/my_getncpus.c +++ b/mysys/my_getncpus.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* get the number of (online) CPUs */ diff --git a/mysys/my_getopt.c b/mysys/my_getopt.c index 57b28d1fd8a28dfa8b6b890d078d4b2d203a4a5b..980a24882d4f10e9bb70ec77d2b61efb282b1764 100644 --- a/mysys/my_getopt.c +++ b/mysys/my_getopt.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/my_getpagesize.c b/mysys/my_getpagesize.c index e1c1fcb168dc15929ad31bdd638bc6c7380d1bfb..030a62deb61d4d72a49993b1092b0ad232b3d8fa 100644 --- a/mysys/my_getpagesize.c +++ b/mysys/my_getpagesize.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_getsystime.c b/mysys/my_getsystime.c index 1cedeb21d6e4f11213d7faf3c93705bdbc05d703..e2e6e8e398a1f8e21af3418ec26e5a216ad0721f 100644 --- a/mysys/my_getsystime.c +++ b/mysys/my_getsystime.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_getwd.c b/mysys/my_getwd.c index bfa28f1d37211eefe3642bae14c925f6f5b8ed0c..a6eb5f6581f9cc7c2ccfaaaaeb0f06908ff23f40 100644 --- a/mysys/my_getwd.c +++ b/mysys/my_getwd.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* my_setwd() and my_getwd() works with intern_filenames !! */ diff --git a/mysys/my_init.c b/mysys/my_init.c index 84489a994e3c6a53eb5dd18357555cccb0847986..d1ed42c9f19971b4e4a733223cf98d2d83a84dde 100644 --- a/mysys/my_init.c +++ b/mysys/my_init.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "my_static.h" diff --git a/mysys/my_largepage.c b/mysys/my_largepage.c index 59f815a9d87b8d75e04a9bdaa82ab9caf7fb1cc0..c5e33388e2a55e374de4d9569abdd5e6f457fa35 100644 --- a/mysys/my_largepage.c +++ b/mysys/my_largepage.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_lib.c b/mysys/my_lib.c index 8daed1101ecc86c39ba94482fb9ad958479da565..977352345c1c0e8abb890aa07267c99c2a184b33 100644 --- a/mysys/my_lib.c +++ b/mysys/my_lib.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */ /* TODO: check for overrun of memory for names. */ diff --git a/mysys/my_libwrap.c b/mysys/my_libwrap.c index 6c69757ec6fa42d3af0f6a806a4ed18f2b00c533..45ab3a7fc768f03953c1ae09255b6f9ce69da9cb 100644 --- a/mysys/my_libwrap.c +++ b/mysys/my_libwrap.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This is needed to be able to compile with original libwrap header diff --git a/mysys/my_lock.c b/mysys/my_lock.c index 082d8e9f5a09b44901770c1b02838f58fc74656a..0fd280ca963b3b77b3ec9b596eeda400426c5739 100644 --- a/mysys/my_lock.c +++ b/mysys/my_lock.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_lockmem.c b/mysys/my_lockmem.c index 3e27564f1003d4055ad78614d2fc14e1188af929..ce569b78c73032e3ebed6fc7f4bb55a55a7a4d3c 100644 --- a/mysys/my_lockmem.c +++ b/mysys/my_lockmem.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Alloc a block of locked memory */ diff --git a/mysys/my_malloc.c b/mysys/my_malloc.c index 99a15e6f432975eb1252111f3e2b6a809192baf0..0640c0e577e4cfc1fdd8a6445c49e514286e2179 100644 --- a/mysys/my_malloc.c +++ b/mysys/my_malloc.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_memmem.c b/mysys/my_memmem.c index 5806c502b2bc8c7da29be9db971dae9d828bc004..98b45fed2394950930f71a104bab921a3ab301e6 100644 --- a/mysys/my_memmem.c +++ b/mysys/my_memmem.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/my_mess.c b/mysys/my_mess.c index 8ee816b385ae3df40d1b7f3f6d2775f8505b346a..7bc4c038cb68dec4168a6f8e0c303097923de6ce 100644 --- a/mysys/my_mess.c +++ b/mysys/my_mess.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_mkdir.c b/mysys/my_mkdir.c index 5e9691f5b9184f564deecaa1f973825870762c00..6c0a01abb73b86dbad821e8d2061157113a93396 100644 --- a/mysys/my_mkdir.c +++ b/mysys/my_mkdir.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_mmap.c b/mysys/my_mmap.c index acd4862eaca471cea5ed89a82673bb99c3f7d84e..9d84c1c76f63bbe929f2418149c305da0e7deb9a 100644 --- a/mysys/my_mmap.c +++ b/mysys/my_mmap.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" diff --git a/mysys/my_new.cc b/mysys/my_new.cc index a401ccff1354fe27fb478b9c9fe65b1758775094..88080f3e7ebbf9b51a3e18097bb0d8242f8861e0 100644 --- a/mysys/my_new.cc +++ b/mysys/my_new.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This is a replacement of new/delete operators to be used when compiling diff --git a/mysys/my_once.c b/mysys/my_once.c index dfd5de81ac7415551a2bf1569c5faeeca5dca469..28a175579fd63bad79d83a208de82c973b843452 100644 --- a/mysys/my_once.c +++ b/mysys/my_once.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Not MT-SAFE */ diff --git a/mysys/my_open.c b/mysys/my_open.c index 3999810eb2ec6d2b882b17abf861aba1d1fa163c..951a52c28dcd7525bbdf586f01a21dd8f242afe1 100644 --- a/mysys/my_open.c +++ b/mysys/my_open.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_port.c b/mysys/my_port.c index 75a07b03efeaaa727a39f6422437e10bb66c3339..c0e36eafc2d778c6481a481fb9a772cb2106e8fd 100644 --- a/mysys/my_port.c +++ b/mysys/my_port.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - MA 02111-1301, USA */ + MA 02110-1335 USA */ /* Small functions to make code portable diff --git a/mysys/my_pread.c b/mysys/my_pread.c index 2b3bfdc9e3dbff79d8f3c573aafe01cc62cce30c..08285738528b587a7e69714569f26f9e4f94dac2 100644 --- a/mysys/my_pread.c +++ b/mysys/my_pread.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_pthread.c b/mysys/my_pthread.c index 20e53a23ab5b6c4747b95d376c915082b74a95c9..b8121f9a52ffcf44e9899f671ec5bc7a3c129b67 100644 --- a/mysys/my_pthread.c +++ b/mysys/my_pthread.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to get threads more portable */ diff --git a/mysys/my_quick.c b/mysys/my_quick.c index 2d5e9fb95ca5eff9a570ce67190c97ce998bd6c0..ae7f5cca391bde73d98cd247fedf660328a14428 100644 --- a/mysys/my_quick.c +++ b/mysys/my_quick.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Quicker interface to read & write. Used with my_nosys.h */ diff --git a/mysys/my_rdtsc.c b/mysys/my_rdtsc.c index 4228973caa85d086e231818f3471bc8116241e48..afb97553dd77912b78cc4f5c2ae5299be05b93f8 100644 --- a/mysys/my_rdtsc.c +++ b/mysys/my_rdtsc.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* rdtsc3 -- multi-platform timer code diff --git a/mysys/my_read.c b/mysys/my_read.c index 58ab9070c8cbb58d175ea5ba181eb26a143fa604..caf47a6ed4d4f3a0c6e38b292fb4f410a214c7f9 100644 --- a/mysys/my_read.c +++ b/mysys/my_read.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_redel.c b/mysys/my_redel.c index 9091c74e6b5a83b47d8898f41d07cbd7aa4bf18f..96ab410a382a00847102a2eac0b712ab9ac8bc72 100644 --- a/mysys/my_redel.c +++ b/mysys/my_redel.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_rename.c b/mysys/my_rename.c index 17f693629a8b5d5af387395ed99557e7e9bb14e5..81b43064ea83120ebefe1849e336a1914b03c4ea 100644 --- a/mysys/my_rename.c +++ b/mysys/my_rename.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_rnd.c b/mysys/my_rnd.c index fc38d5586cebcc332a7d7575c15336253d9ae2df..c38682a20126ce5ffb67c6ce7933cbd7b7d743b7 100644 --- a/mysys/my_rnd.c +++ b/mysys/my_rnd.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include diff --git a/mysys/my_safehash.c b/mysys/my_safehash.c index c34f3c456cdd53319c21f377c55c1fe0198986b3..e4e72bd6506ae35795ad78080c4a737028bb160c 100644 --- a/mysys/my_safehash.c +++ b/mysys/my_safehash.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Handling of multiple key caches diff --git a/mysys/my_safehash.h b/mysys/my_safehash.h index 3d3aa1e6006cc355c91c85dddc7321a101328ad8..71aaf5d0c6ffdb5f68a6ed5a2f33cc85e7b5428f 100644 --- a/mysys/my_safehash.h +++ b/mysys/my_safehash.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Handling of multiple key caches diff --git a/mysys/my_seek.c b/mysys/my_seek.c index e15179a408f0f95d0f63459658ab9316e9b0f1cc..6a370b0ad4378406acf780c217c3df6b5014d539 100644 --- a/mysys/my_seek.c +++ b/mysys/my_seek.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_sleep.c b/mysys/my_sleep.c index 77eb466aee8d8cbd2725437234fe90acfdc44f30..1c54b696aea53ee651659d52f9235b81ce3216b8 100644 --- a/mysys/my_sleep.c +++ b/mysys/my_sleep.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Wait a given number of microseconds */ diff --git a/mysys/my_static.c b/mysys/my_static.c index 9236c1395fb86d95a8b760e7f7dab9ea21c57a2a..845d3e9612fd4d4123c0582136167c70ba83b038 100644 --- a/mysys/my_static.c +++ b/mysys/my_static.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Static variables for mysys library. All definied here for easy making of diff --git a/mysys/my_static.h b/mysys/my_static.h index a44a4b26c3d7c3b7d075eeb8429bb98120a0071b..b30540b1ce40107dc7f7834a796fc02484bb56f9 100644 --- a/mysys/my_static.h +++ b/mysys/my_static.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Static variables for mysys library. All definied here for easy making of diff --git a/mysys/my_symlink.c b/mysys/my_symlink.c index 8580fac3595c5d6fad6c5064fd7a5aec80696ead..cbee78a7f5c35b4073b23b933e60b3af15840c46 100644 --- a/mysys/my_symlink.c +++ b/mysys/my_symlink.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_symlink2.c b/mysys/my_symlink2.c index f1ace5dcd77ccdce903decde7c76b449c0761a38..aef77333e7549182d5f2d6b052c68900cc3fdaf7 100644 --- a/mysys/my_symlink2.c +++ b/mysys/my_symlink2.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Advanced symlink handling. diff --git a/mysys/my_sync.c b/mysys/my_sync.c index d1e239692f136b70abbc92bce4329d67fb52e0fe..2ed62e4541a619f2278d649a97f1eac4fcc5700d 100644 --- a/mysys/my_sync.c +++ b/mysys/my_sync.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/my_thr_init.c b/mysys/my_thr_init.c index f827fb136d36eb468f1b14f00727b65cbe0a78ff..cc47bfc72d072a169b99ecf9bc4eb531bbc36dd7 100644 --- a/mysys/my_thr_init.c +++ b/mysys/my_thr_init.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to handle initializating and allocationg of all mysys & debug diff --git a/mysys/my_timer_cycles.il b/mysys/my_timer_cycles.il index e655cad2a2ebec5679f2d5acf7e0b782ce287f2d..f6eb922c8fcd1516f66aa3e516f5684aefd52bc0 100644 --- a/mysys/my_timer_cycles.il +++ b/mysys/my_timer_cycles.il @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Sun Studio SPARC inline templates for cycle timer */ /* Sun Studio i386 and x86_64 inline templates for cycle timer */ diff --git a/mysys/my_uuid.c b/mysys/my_uuid.c index f167ebe1d6e98572ad00a3af47841854f358d73d..da947b09c48bac436d03b4917cc3d06ff35174bd 100644 --- a/mysys/my_uuid.c +++ b/mysys/my_uuid.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* implements Universal Unique Identifiers (UUIDs), as in diff --git a/mysys/my_wincond.c b/mysys/my_wincond.c index 07ba4f5c58799a00aedab35b30e282afdc1bb87e..d68de3f4d03cfdddfa1da0b6bade765f04c5f54b 100644 --- a/mysys/my_wincond.c +++ b/mysys/my_wincond.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /***************************************************************************** ** The following is a simple implementation of posix conditions diff --git a/mysys/my_windac.c b/mysys/my_windac.c index 9b489759625820992195652aa8bd770ab3bd9151..677207b2e07125a182ccf254c9d595882c98d2c2 100644 --- a/mysys/my_windac.c +++ b/mysys/my_windac.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "m_string.h" diff --git a/mysys/my_winerr.c b/mysys/my_winerr.c index a3f6229b74eaff1f9a97a3e29417b901fec4e7ba..299db267289573684fdd343f37ecb28829bcc7fb 100644 --- a/mysys/my_winerr.c +++ b/mysys/my_winerr.c @@ -12,7 +12,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Convert Windows API error (GetLastError() to Posix equivalent (errno) diff --git a/mysys/my_winfile.c b/mysys/my_winfile.c index ad87bf718d25cbfba13f18eb810456fcb22aaf94..a250b3d2e065c6ca2cbd6f9bf6c010251d922a49 100644 --- a/mysys/my_winfile.c +++ b/mysys/my_winfile.c @@ -11,7 +11,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* The purpose of this file is to provide implementation of file IO routines on diff --git a/mysys/my_winthread.c b/mysys/my_winthread.c index 81fd0e7277cb8ee5b4ac316df54cda0c4726aeb6..725bd6ac31fdc84c6e95982690b9ed5d902d136f 100644 --- a/mysys/my_winthread.c +++ b/mysys/my_winthread.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /***************************************************************************** ** Simulation of posix threads calls for Windows diff --git a/mysys/my_write.c b/mysys/my_write.c index 43735c18f0ab5931667c2c5df4aa3b435608f636..53288b43f2ee815895d4b563bdbd824408cf0eaf 100644 --- a/mysys/my_write.c +++ b/mysys/my_write.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "mysys_priv.h" #include "mysys_err.h" diff --git a/mysys/mysys_priv.h b/mysys/mysys_priv.h index 892e09148efd0345988c44904005e81d7e532659..c0a040bd482bab1f78d487ae2cf9a956cbaf42f9 100644 --- a/mysys/mysys_priv.h +++ b/mysys/mysys_priv.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSYS_PRIV_INCLUDED #define MYSYS_PRIV_INCLUDED diff --git a/mysys/psi_noop.c b/mysys/psi_noop.c index 6eecf56f79789a22377d8b82996a8ad91409077d..1cf544be0e1eb92dfe67f6eaa3e4185e0665689d 100644 --- a/mysys/psi_noop.c +++ b/mysys/psi_noop.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Always provide the noop performance interface, for plugins. diff --git a/mysys/ptr_cmp.c b/mysys/ptr_cmp.c index add92edd713eed1581d82940340d9516ed4088d5..287e884305c32013743608000973a1ade0d2f906 100644 --- a/mysys/ptr_cmp.c +++ b/mysys/ptr_cmp.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* get_ptr_compare(len) returns a pointer to a optimal byte-compare function diff --git a/mysys/safemalloc.c b/mysys/safemalloc.c index 08e43d0a80a6878e2b443f239b0cb7f81c02d296..c439dadbd9972e0ebff245115d0c0339c4d24adf 100644 --- a/mysys/safemalloc.c +++ b/mysys/safemalloc.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /******************************************************************** memory debugger diff --git a/mysys/stacktrace.c b/mysys/stacktrace.c index 0d4d5fce8031c5877fd6564436bef107409630a7..7daed0df6733f680fe91b68a88b29c33a57d2a75 100644 --- a/mysys/stacktrace.c +++ b/mysys/stacktrace.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/string.c b/mysys/string.c index a0fa3a02e17b920dcc6cee33567b9869486f0a06..1b4254fa60d4b2978b543cfbee4f85bd3341e619 100644 --- a/mysys/string.c +++ b/mysys/string.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Code for handling strings with can grow dynamicly. diff --git a/mysys/test_charset.c b/mysys/test_charset.c index 49e25b8d5cd928de28018589fca05fd0df7f2b41..f8392a9d3a9f339ec858e3f20b3229419f28a4ea 100644 --- a/mysys/test_charset.c +++ b/mysys/test_charset.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/test_dir.c b/mysys/test_dir.c index 364562a6972e1555a202d34cca818ff8b2e9efa5..00b0c778605ae94d9a9edfc36aec006c8969f221 100644 --- a/mysys/test_dir.c +++ b/mysys/test_dir.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* TODO: Test all functions */ diff --git a/mysys/test_thr_mutex.c b/mysys/test_thr_mutex.c index fa5b6f74ba3325c30f721bfca260a4e13dda50fd..00b1f5f412c02702870e84fc327162f56fc09616 100644 --- a/mysys/test_thr_mutex.c +++ b/mysys/test_thr_mutex.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Testing of deadlock detector */ diff --git a/mysys/test_xml.c b/mysys/test_xml.c index 56b5061149832b22f9cdc6741f403f84e05cb94b..ac106da6e39edcb83917d9174ff9a90887ea6fd0 100644 --- a/mysys/test_xml.c +++ b/mysys/test_xml.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys/testhash.c b/mysys/testhash.c index 96b106bec1481a30e9867b3c7dd07d945144a679..4af25c32fc02cee9fd4e348db8580a3fcf877948 100644 --- a/mysys/testhash.c +++ b/mysys/testhash.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Test of hash library: big test */ diff --git a/mysys/thr_alarm.c b/mysys/thr_alarm.c index 61ef3657161069d2623f43d5b76342564009daca..a1ff5b6c44ac0a2195410c41ae9ce4ed64e3d009 100644 --- a/mysys/thr_alarm.c +++ b/mysys/thr_alarm.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* To avoid problems with alarms in debug code, we disable DBUG here */ #define FORCE_DBUG_OFF diff --git a/mysys/thr_lock.c b/mysys/thr_lock.c index 5c3437382a5d191f4cbd318038bf35d2837bad7e..c23ff62f2db686d6e53c2abaad3b20c076c026ac 100644 --- a/mysys/thr_lock.c +++ b/mysys/thr_lock.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Read and write locks for Posix threads. All tread must acquire diff --git a/mysys/thr_mutex.c b/mysys/thr_mutex.c index 18af5f47b1064e2eeb040488b4a17168ce385e92..6010c3ca61ac274fe150ddd228ad7fc5e166f3af 100644 --- a/mysys/thr_mutex.c +++ b/mysys/thr_mutex.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This makes a wrapper for mutex handling to make it easier to debug mutex */ diff --git a/mysys/thr_rwlock.c b/mysys/thr_rwlock.c index dd6c625a28694840b77e2cd6ded02bddf19b2062..ea8b73bf8f5852448eebc2830b4a299365588a0c 100644 --- a/mysys/thr_rwlock.c +++ b/mysys/thr_rwlock.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Synchronization - readers / writer thread locks */ diff --git a/mysys/thr_timer.c b/mysys/thr_timer.c index b8726617f446da8b0c366b4d166226e72afc0ad5..1532875d7f3f53dedb65270ccb334728312ed973 100644 --- a/mysys/thr_timer.c +++ b/mysys/thr_timer.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Implementation if OS independent timers. diff --git a/mysys/tree.c b/mysys/tree.c index 83be0a0d20f2eba4cb4179823f7cec0c11190f8f..e3e34957401a249a36d412b6599a12960dfb3dbf 100644 --- a/mysys/tree.c +++ b/mysys/tree.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Code for handling red-black (balanced) binary trees. diff --git a/mysys/typelib.c b/mysys/typelib.c index 9ca0847570f36dd1f576dbaa78ce35e0a8a97ce5..3798d970a909a8c99fcf910a404e47be949ff648 100644 --- a/mysys/typelib.c +++ b/mysys/typelib.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to handle typelib */ diff --git a/mysys/waiting_threads.c b/mysys/waiting_threads.c index 2549bd8a58759770eecc050d3f3ae69a9d5b975e..35f19aa7edb63f7dc78f04111b6c12b9eab85c43 100644 --- a/mysys/waiting_threads.c +++ b/mysys/waiting_threads.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/mysys/wqueue.c b/mysys/wqueue.c index 1dafc03b9358717de8c5ee7873ee7daf4e091914..6e4081a26e1de64768e69dfe57b972df24069807 100644 --- a/mysys/wqueue.c +++ b/mysys/wqueue.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/mysys_ssl/CMakeLists.txt b/mysys_ssl/CMakeLists.txt index 4f6f7458c5b91822242375cc7d72ab686d54b3f1..9162f7b889454cdf9815c5c38bdc104383802ce8 100644 --- a/mysys_ssl/CMakeLists.txt +++ b/mysys_ssl/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/mysys_ssl diff --git a/mysys_ssl/my_crypt.cc b/mysys_ssl/my_crypt.cc index 439339423cd56fe8ad7ccc462331728c6f2f33c6..ddad3de8d9f9cba6ea13c6c621dde9f19e3dcf69 100644 --- a/mysys_ssl/my_crypt.cc +++ b/mysys_ssl/my_crypt.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/mysys_ssl/my_md5.cc b/mysys_ssl/my_md5.cc index 7139ea9b6ffa0fae24c6c148de02a838f01957e3..8ed916eba73887358734831e57246bae4b448d7c 100644 --- a/mysys_ssl/my_md5.cc +++ b/mysys_ssl/my_md5.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/mysys_ssl/my_sha.ic b/mysys_ssl/my_sha.ic index a7ec8bad593f6df9ad912ddea4e344cc9d9e9e9b..b1940b1b7035fa1af12d54c5a405f6ecb294039b 100644 --- a/mysys_ssl/my_sha.ic +++ b/mysys_ssl/my_sha.ic @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/mysys_ssl/my_sha1.cc b/mysys_ssl/my_sha1.cc index dc6a7a4617904d68992bcbbbc8cdae9d27f3f78e..b53e214468de2dc46e2a29ac0e91f52d056dd6ad 100644 --- a/mysys_ssl/my_sha1.cc +++ b/mysys_ssl/my_sha1.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define NUM 1 diff --git a/mysys_ssl/my_sha224.cc b/mysys_ssl/my_sha224.cc index 7e8b481256b8908a352bd3dd70373a21251333d8..200b6ed161c09e198275c754c006c244968d0c42 100644 --- a/mysys_ssl/my_sha224.cc +++ b/mysys_ssl/my_sha224.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define NUM 224 diff --git a/mysys_ssl/my_sha256.cc b/mysys_ssl/my_sha256.cc index 8c1a4662009666224c70058053829ade238e7451..1562809f91a31e6a20cb42c97b714e8dd42ca243 100644 --- a/mysys_ssl/my_sha256.cc +++ b/mysys_ssl/my_sha256.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define NUM 256 diff --git a/mysys_ssl/my_sha384.cc b/mysys_ssl/my_sha384.cc index 3bad6b39248c817c50f6c282e448af7d59885193..6bb644701055620f78cb7663f987135ce3e18866 100644 --- a/mysys_ssl/my_sha384.cc +++ b/mysys_ssl/my_sha384.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define NUM 384 diff --git a/mysys_ssl/my_sha512.cc b/mysys_ssl/my_sha512.cc index 8077efd3b57bdabce3aba8344dbb8acc8ea100b8..1047d0dbe4633c976d90c588b30e8bb741a99c9a 100644 --- a/mysys_ssl/my_sha512.cc +++ b/mysys_ssl/my_sha512.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define NUM 512 diff --git a/mysys_ssl/yassl.cc b/mysys_ssl/yassl.cc index e9f8e650347ed84d1006c20253b561de81cf271c..e14b222835157d5311cc9600508edb35b42edf61 100644 --- a/mysys_ssl/yassl.cc +++ b/mysys_ssl/yassl.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* The very minimal subset of OpenSSL's EVP* functions. diff --git a/plugin/audit_null/CMakeLists.txt b/plugin/audit_null/CMakeLists.txt index e87fc2a85f5831be00b1805468a666077660e08d..2d4b6e9be26afa5103f3cbbe20e64349927f518b 100644 --- a/plugin/audit_null/CMakeLists.txt +++ b/plugin/audit_null/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MYSQL_ADD_PLUGIN(audit_null audit_null.c MODULE_ONLY MODULE_OUTPUT_NAME "adt_null" COMPONENT Test) diff --git a/plugin/audit_null/audit_null.c b/plugin/audit_null/audit_null.c index 2747063670cd320303967439c1a03dd5c74b33c3..58f9c3ef8e2ca1852e905e89e74fb097f9ae76f4 100644 --- a/plugin/audit_null/audit_null.c +++ b/plugin/audit_null/audit_null.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_dialog/CMakeLists.txt b/plugin/auth_dialog/CMakeLists.txt index d16007405dc13829993fbedb2d68997e6971f746..b612dd14fe222430007c345d2240870088e9aa67 100644 --- a/plugin/auth_dialog/CMakeLists.txt +++ b/plugin/auth_dialog/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ADD_DEFINITIONS(-DNO_GET_TTY_PASSWORD) IF(LIBDL) diff --git a/plugin/auth_dialog/dialog.c b/plugin/auth_dialog/dialog.c index da937ea6e91193836f55ecd0d8e78061ffc52e09..3ea1da229e7a81c90bef1b6c4a995dbd038b474f 100644 --- a/plugin/auth_dialog/dialog.c +++ b/plugin/auth_dialog/dialog.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/auth_ed25519/client_ed25519.c b/plugin/auth_ed25519/client_ed25519.c index 16267a156c73f1e31f7ff1198a2bd67f2e6835d4..5222da8c7e833b95e48380edd6092cbee4e7c404 100644 --- a/plugin/auth_ed25519/client_ed25519.c +++ b/plugin/auth_ed25519/client_ed25519.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /************************** CLIENT *************************************/ diff --git a/plugin/auth_ed25519/common.h b/plugin/auth_ed25519/common.h index 4a52f7742f543f605b1d16fa2f62523e78df64fa..963a8afb421cc52e0956f495580d6ecc5bab6727 100644 --- a/plugin/auth_ed25519/common.h +++ b/plugin/auth_ed25519/common.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_ed25519/ed25519-t.c b/plugin/auth_ed25519/ed25519-t.c index f7d58c48d7c056a19aab65c16be89c40cc0a1c5a..4373e59a1547a1c66de24a43a465ce01f9dcc093 100644 --- a/plugin/auth_ed25519/ed25519-t.c +++ b/plugin/auth_ed25519/ed25519-t.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_ed25519/server_ed25519.c b/plugin/auth_ed25519/server_ed25519.c index 8e442e56804053a3f2c6348d713b8e56a61ca807..753d4cb58c36268fc337c7c6c474bf5579e47372 100644 --- a/plugin/auth_ed25519/server_ed25519.c +++ b/plugin/auth_ed25519/server_ed25519.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "common.h" diff --git a/plugin/auth_examples/CMakeLists.txt b/plugin/auth_examples/CMakeLists.txt index d1152227eff93cad9de91852d899f7b591671053..7eed0f722e2073f00e17e6f2fc4eef9360c495a1 100644 --- a/plugin/auth_examples/CMakeLists.txt +++ b/plugin/auth_examples/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MYSQL_ADD_PLUGIN(dialog_examples dialog_examples.c MODULE_ONLY COMPONENT Test) diff --git a/plugin/auth_examples/auth_0x0100.c b/plugin/auth_examples/auth_0x0100.c index d1373b8a0b4bf417764ec8faecf740574ba9774a..e23f495f43b5cb5671e8397eb9fe6abbe4665175 100644 --- a/plugin/auth_examples/auth_0x0100.c +++ b/plugin/auth_examples/auth_0x0100.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/auth_examples/clear_password_client.c b/plugin/auth_examples/clear_password_client.c index 4e7dac61b2563b3f0830dde0819ab0128048cae0..726d200db91df0a0679a2e83309fafd67b091c96 100644 --- a/plugin/auth_examples/clear_password_client.c +++ b/plugin/auth_examples/clear_password_client.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_examples/dialog_examples.c b/plugin/auth_examples/dialog_examples.c index 067244d6f7d83c7689188fb2d9fae94e9199da3e..096dc3fca089350c5831af5429fa7e7f969e61fd 100644 --- a/plugin/auth_examples/dialog_examples.c +++ b/plugin/auth_examples/dialog_examples.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/auth_examples/qa_auth_client.c b/plugin/auth_examples/qa_auth_client.c index a7ee2f83a39db171f87a9c12376d9dd188756cdf..4421ceed5a031c71de08208ae7c7ef39eb91d4a9 100644 --- a/plugin/auth_examples/qa_auth_client.c +++ b/plugin/auth_examples/qa_auth_client.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_examples/qa_auth_interface.c b/plugin/auth_examples/qa_auth_interface.c index c9bc6c5aae4e51cc5f2d41d109076b253e61716f..6b7e9c42adb2609a4d3c21629eef3fa24f8ce09d 100644 --- a/plugin/auth_examples/qa_auth_interface.c +++ b/plugin/auth_examples/qa_auth_interface.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_examples/qa_auth_server.c b/plugin/auth_examples/qa_auth_server.c index 59b926b63dce53e55bff6ceea53e468348895b00..ff4d957a0a81a6dffeffc7a45c43e80232441af7 100644 --- a/plugin/auth_examples/qa_auth_server.c +++ b/plugin/auth_examples/qa_auth_server.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/auth_examples/test_plugin.c b/plugin/auth_examples/test_plugin.c index 2b20a8cb56c9e54b0c93fd625aaa9ab756f98d64..ae4e2004bb68061b8b11f9dd5b3efa715f65fecf 100644 --- a/plugin/auth_examples/test_plugin.c +++ b/plugin/auth_examples/test_plugin.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/auth_pam/auth_pam.c b/plugin/auth_pam/auth_pam.c index 83fd64e4cb1f050a64da1abad77506ba6bac2eca..fae73aea6900f510a3aed3fbb9180c04e567b603 100644 --- a/plugin/auth_pam/auth_pam.c +++ b/plugin/auth_pam/auth_pam.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define _GNU_SOURCE 1 /* for strndup */ diff --git a/plugin/auth_pipe/auth_pipe.c b/plugin/auth_pipe/auth_pipe.c index 20c33c07e846c54be5aba06f0ea281418f2e811c..ed41b94cfcac62b44db08c42fa783a832ce9780c 100644 --- a/plugin/auth_pipe/auth_pipe.c +++ b/plugin/auth_pipe/auth_pipe.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/auth_socket/CMakeLists.txt b/plugin/auth_socket/CMakeLists.txt index bfded6a55559a5346e59f543945454f6a9254185..eafa82bda9962b1ced78551abe2a9895d1e2ea6e 100644 --- a/plugin/auth_socket/CMakeLists.txt +++ b/plugin/auth_socket/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA CHECK_CXX_SOURCE_COMPILES( "#define _GNU_SOURCE diff --git a/plugin/auth_socket/auth_socket.c b/plugin/auth_socket/auth_socket.c index f04b1d9d2a17023ee0aadd559e515b720c708a92..c31f78a450019177c3d595b7e42fa2e98372ce0a 100644 --- a/plugin/auth_socket/auth_socket.c +++ b/plugin/auth_socket/auth_socket.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/plugin/aws_key_management/aws_key_management_plugin.cc b/plugin/aws_key_management/aws_key_management_plugin.cc index 60ca6fd1ff3feff19b04535578bc2800459b60b5..e396be8cbdf56b0e5c2f8b3e6a34b2030f2d9f23 100644 --- a/plugin/aws_key_management/aws_key_management_plugin.cc +++ b/plugin/aws_key_management/aws_key_management_plugin.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/plugin/cracklib_password_check/cracklib_password_check.c b/plugin/cracklib_password_check/cracklib_password_check.c index 94587a6d6590d98389e0616ee5b9ab3a8e29d41f..f8de9907dfda252668bf94b32a060a9d552b1a74 100644 --- a/plugin/cracklib_password_check/cracklib_password_check.c +++ b/plugin/cracklib_password_check/cracklib_password_check.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/daemon_example/CMakeLists.txt b/plugin/daemon_example/CMakeLists.txt index 28fbff783029dcadf53e1d2209ec51505d8f3e16..57a1135e695505b40559d41d62ae50830007f06b 100644 --- a/plugin/daemon_example/CMakeLists.txt +++ b/plugin/daemon_example/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MYSQL_ADD_PLUGIN(daemon_example daemon_example.cc RECOMPILE_FOR_EMBEDDED MODULE_ONLY MODULE_OUTPUT_NAME "libdaemon_example" COMPONENT Test) diff --git a/plugin/daemon_example/daemon_example.cc b/plugin/daemon_example/daemon_example.cc index cdea632c8f4d39e9a73a9a3b35faf5852e2b3666..87f48a1fa69cde215ace6cd2da634a6001a5a2aa 100644 --- a/plugin/daemon_example/daemon_example.cc +++ b/plugin/daemon_example/daemon_example.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/debug_key_management/debug_key_management_plugin.cc b/plugin/debug_key_management/debug_key_management_plugin.cc index 23ff78dece250736d9265d9cdb401e5bc7d82311..74ab3522e20ae98bc970e6392ade795a1d28c506 100644 --- a/plugin/debug_key_management/debug_key_management_plugin.cc +++ b/plugin/debug_key_management/debug_key_management_plugin.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** Debug key management plugin. diff --git a/plugin/disks/information_schema_disks.cc b/plugin/disks/information_schema_disks.cc index 122b3d3f17f3bc5b19fc8435f30a0b25a7c0c8f9..c4b558ba1079344cc44da64087b5ca6f6e347110 100644 --- a/plugin/disks/information_schema_disks.cc +++ b/plugin/disks/information_schema_disks.cc @@ -12,13 +12,14 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include #include #include #include +#include /* check_global_access() */ bool schema_table_store_record(THD *thd, TABLE *table); @@ -83,6 +84,9 @@ int disks_fill_table(THD* pThd, TABLE_LIST* pTables, Item* pCond) int rv = 1; TABLE* pTable = pTables->table; + if (check_global_access(pThd, FILE_ACL, true)) + return 0; + FILE* pFile = setmntent("/etc/mtab", "r"); if (pFile) @@ -144,11 +148,11 @@ maria_declare_plugin(disks) PLUGIN_LICENSE_GPL, /* license type */ disks_table_init, /* init function */ NULL, /* deinit function */ - 0x0100, /* version = 1.0 */ + 0x0101, /* version = 1.1 */ NULL, /* no status variables */ NULL, /* no system variables */ - "1.0", /* String version representation */ - MariaDB_PLUGIN_MATURITY_BETA /* Maturity (see include/mysql/plugin.h)*/ + "1.1", /* String version representation */ + MariaDB_PLUGIN_MATURITY_STABLE /* Maturity (see include/mysql/plugin.h)*/ } mysql_declare_plugin_end; diff --git a/plugin/disks/mysql-test/disks/disks_notembedded.result b/plugin/disks/mysql-test/disks/disks_notembedded.result new file mode 100644 index 0000000000000000000000000000000000000000..f0f9e46aaca0efdecd2e54c3c9855b067663cd91 --- /dev/null +++ b/plugin/disks/mysql-test/disks/disks_notembedded.result @@ -0,0 +1,15 @@ +# +# MDEV-18328: Make DISKS plugin check some privilege to access +# information_schema.DISKS table +# +CREATE USER user1@localhost; +GRANT SELECT ON *.* TO user1@localhost; +select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks; +sum(Total) > sum(Available) sum(Total)>sum(Used) +NULL NULL +GRANT FILE ON *.* TO user1@localhost; +select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks; +sum(Total) > sum(Available) sum(Total)>sum(Used) +1 1 +DROP USER user1@localhost; +# End of 10.1 tests diff --git a/plugin/disks/mysql-test/disks/disks_notembedded.test b/plugin/disks/mysql-test/disks/disks_notembedded.test new file mode 100644 index 0000000000000000000000000000000000000000..a0f6c2e5887fff5b1c964ad3dec7c4def7804c21 --- /dev/null +++ b/plugin/disks/mysql-test/disks/disks_notembedded.test @@ -0,0 +1,25 @@ +source include/not_embedded.inc; + +--echo # +--echo # MDEV-18328: Make DISKS plugin check some privilege to access +--echo # information_schema.DISKS table +--echo # + +CREATE USER user1@localhost; +GRANT SELECT ON *.* TO user1@localhost; + +connect (con1,localhost,user1,,); +connection con1; +select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks; +disconnect con1; + +connection default; +GRANT FILE ON *.* TO user1@localhost; + +connect (con1,localhost,user1,,); +connection con1; +select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks; +connection default; +DROP USER user1@localhost; + +--echo # End of 10.1 tests diff --git a/plugin/example_key_management/example_key_management_plugin.cc b/plugin/example_key_management/example_key_management_plugin.cc index 2b43729e3f75d10daf0a877b44e66c1b02868517..665e3128e52544d87f1c2ae577e1f77c1447c6a6 100644 --- a/plugin/example_key_management/example_key_management_plugin.cc +++ b/plugin/example_key_management/example_key_management_plugin.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** Example key management plugin. It demonstrates how to return diff --git a/plugin/feedback/feedback.cc b/plugin/feedback/feedback.cc index bd433efa4d35c8af5595b79fa04b54674be35025..75e6e8ddf17d924ef344a722ddb3b7b51d9a0218 100644 --- a/plugin/feedback/feedback.cc +++ b/plugin/feedback/feedback.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "feedback.h" diff --git a/plugin/feedback/feedback.h b/plugin/feedback/feedback.h index 5e7e7b1516e9371b8bf9641197c29edca45384fc..0fffeb922d52eb87a4eaac2689246c97a17a2c15 100644 --- a/plugin/feedback/feedback.h +++ b/plugin/feedback/feedback.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define MYSQL_SERVER 1 #include diff --git a/plugin/feedback/sender_thread.cc b/plugin/feedback/sender_thread.cc index d61e303e8b3ad3eadd863b177a788dd1973d95bc..e22550998a7673414c26d804f7033ccb6a1d4f6e 100644 --- a/plugin/feedback/sender_thread.cc +++ b/plugin/feedback/sender_thread.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "feedback.h" #include diff --git a/plugin/feedback/url_base.cc b/plugin/feedback/url_base.cc index 44cb0b00c9565ffa9a6f448865d742b6d3536327..21661079c98bef7e908adf2d86bf91fc5dbcb5e5 100644 --- a/plugin/feedback/url_base.cc +++ b/plugin/feedback/url_base.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "feedback.h" diff --git a/plugin/feedback/url_http.cc b/plugin/feedback/url_http.cc index 4851097e63f49de4625e0a757121703fd9812239..6ae94d5b9c4482cf0af263783a4d0ae3981b7508 100644 --- a/plugin/feedback/url_http.cc +++ b/plugin/feedback/url_http.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "feedback.h" diff --git a/plugin/feedback/utils.cc b/plugin/feedback/utils.cc index 6da1b5916529564e489d9cdc59c0b490f0dd7b35..684d95a3dbf65fe73d7e86e8788349f43a05676d 100644 --- a/plugin/feedback/utils.cc +++ b/plugin/feedback/utils.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "feedback.h" diff --git a/plugin/file_key_management/file_key_management_plugin.cc b/plugin/file_key_management/file_key_management_plugin.cc index f6f7083d5f7343c3e18e90b617b9453ae0de0d0d..b5dcbd71f1e3d57d5ca024a3a814e80355118dd8 100644 --- a/plugin/file_key_management/file_key_management_plugin.cc +++ b/plugin/file_key_management/file_key_management_plugin.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/file_key_management/parser.cc b/plugin/file_key_management/parser.cc index ac78186a488abc5269501a82ef1ffd2033bf15fe..83895fe28082d96a1998981114793877aa4f46c3 100644 --- a/plugin/file_key_management/parser.cc +++ b/plugin/file_key_management/parser.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /******************************************************************//** @file Parser.cc diff --git a/plugin/file_key_management/parser.h b/plugin/file_key_management/parser.h index 627b7fd84a632344a60ff9227674da34ebc01122..ca9dedd8acc4996493d6b00abeea6c16f399266f 100644 --- a/plugin/file_key_management/parser.h +++ b/plugin/file_key_management/parser.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /******************************************************************//** @file Parser.h diff --git a/plugin/fulltext/CMakeLists.txt b/plugin/fulltext/CMakeLists.txt index b65fcba0449afb3848fadf644e67c4e9d5895cf5..23710ee1312d9c66080f2475f1ff9a024ad1bb04 100644 --- a/plugin/fulltext/CMakeLists.txt +++ b/plugin/fulltext/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MYSQL_ADD_PLUGIN(ftexample plugin_example.c MODULE_ONLY MODULE_OUTPUT_NAME "mypluglib" COMPONENT Test) diff --git a/plugin/fulltext/plugin_example.c b/plugin/fulltext/plugin_example.c index 778918cb439c5c175342e283c2f696a3dad91232..f175179e8bbdf531f5598d65eb92f9a1f2a577aa 100644 --- a/plugin/fulltext/plugin_example.c +++ b/plugin/fulltext/plugin_example.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/metadata_lock_info/metadata_lock_info.cc b/plugin/metadata_lock_info/metadata_lock_info.cc index 39ac390b0bd680f5d390c0905fadf54c8bc7d96d..7abae275ff29b3f137ffe1949a822d0f8612387d 100644 --- a/plugin/metadata_lock_info/metadata_lock_info.cc +++ b/plugin/metadata_lock_info/metadata_lock_info.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define MYSQL_SERVER 1 #include "my_config.h" diff --git a/plugin/query_response_time/plugin.cc b/plugin/query_response_time/plugin.cc index 0ed8b88dc60ae149a9158ac84334b7902343ae14..eddf65c491be27ddaadda1a1836de039838f3610 100644 --- a/plugin/query_response_time/plugin.cc +++ b/plugin/query_response_time/plugin.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define MYSQL_SERVER #include diff --git a/plugin/semisync/CMakeLists.txt b/plugin/semisync/CMakeLists.txt index 88998fb3093c6b90e17625bb6abd26d0fec847d6..1def8fdc6829f7af34009b89dc52eec5e0580f0e 100644 --- a/plugin/semisync/CMakeLists.txt +++ b/plugin/semisync/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET(SEMISYNC_MASTER_SOURCES semisync.cc semisync_master.cc semisync_master_plugin.cc diff --git a/plugin/semisync/semisync.cc b/plugin/semisync/semisync.cc index 4a80360ba4d5eeb8a2b2ac2f83cebd747b76edfd..fe6f1d9b071d1625814de9bf0e9646f089c8a5d4 100644 --- a/plugin/semisync/semisync.cc +++ b/plugin/semisync/semisync.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "semisync.h" diff --git a/plugin/semisync/semisync.h b/plugin/semisync/semisync.h index 2857729681705d7e2b02294e1e12c549eb97d6b1..abd0bb0787c01ffb2568d98a6ce8bd915275cc20 100644 --- a/plugin/semisync/semisync.h +++ b/plugin/semisync/semisync.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef SEMISYNC_H diff --git a/plugin/semisync/semisync_master.cc b/plugin/semisync/semisync_master.cc index ab437bcfa7e010f6f198e6cecd4993122a2e09fd..cd80e86140ddc4dc092f14e33d7d311bb0e23061 100644 --- a/plugin/semisync/semisync_master.cc +++ b/plugin/semisync/semisync_master.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "semisync_master.h" diff --git a/plugin/semisync/semisync_master.h b/plugin/semisync/semisync_master.h index c2862476ec868d97d88d65e5258c7a24fd1404a5..23d3140bf2f43d3b144dbb89e2540ac7ce5a0e18 100644 --- a/plugin/semisync/semisync_master.h +++ b/plugin/semisync/semisync_master.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef SEMISYNC_MASTER_H diff --git a/plugin/semisync/semisync_master_plugin.cc b/plugin/semisync/semisync_master_plugin.cc index 309910312c433215deaf7255b4163b6ac0023513..4432b829c878cb23fb6d64dc80c731c26a59c510 100644 --- a/plugin/semisync/semisync_master_plugin.cc +++ b/plugin/semisync/semisync_master_plugin.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "semisync_master.h" diff --git a/plugin/semisync/semisync_slave.cc b/plugin/semisync/semisync_slave.cc index 5f98472d5d76c0de26e7b152db1f392a4a427d91..3223bd932d25c56d91a46d444f1c3577a844f52b 100644 --- a/plugin/semisync/semisync_slave.cc +++ b/plugin/semisync/semisync_slave.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "semisync_slave.h" diff --git a/plugin/semisync/semisync_slave.h b/plugin/semisync/semisync_slave.h index 1bf8cf31972e81c234f864bcd534b0d97278c75c..56c0a4ccc9d713cb40e915686086e20d12700049 100644 --- a/plugin/semisync/semisync_slave.h +++ b/plugin/semisync/semisync_slave.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef SEMISYNC_SLAVE_H diff --git a/plugin/semisync/semisync_slave_plugin.cc b/plugin/semisync/semisync_slave_plugin.cc index 3a6c7625d9351b74f59d1358e3b200ad9bd86703..b7a4c964c802b29f126d817f9fe7b613b67bc2a6 100644 --- a/plugin/semisync/semisync_slave_plugin.cc +++ b/plugin/semisync/semisync_slave_plugin.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "semisync_slave.h" diff --git a/plugin/server_audit/CMakeLists.txt b/plugin/server_audit/CMakeLists.txt index 056a11f375388b5a95ea0382aa5769e361bff40b..8a5333cfb9fe3cf1e06d54fe040a8071329a0b10 100644 --- a/plugin/server_audit/CMakeLists.txt +++ b/plugin/server_audit/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA SET(SOURCES server_audit.c test_audit_v4.c plugin_audit_v4.h) diff --git a/plugin/server_audit/COPYING b/plugin/server_audit/COPYING index d511905c1647a1e311e8b20d5930a37a9c2531cd..6e475df55260ed81f3bc8502fea2363c31d13bf7 100644 --- a/plugin/server_audit/COPYING +++ b/plugin/server_audit/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. Also add information on how to contact you by electronic and paper mail. diff --git a/plugin/server_audit/plugin_audit_v4.h b/plugin/server_audit/plugin_audit_v4.h index f8662c23e6b49fad2685ec43254a2ff9035cdcdc..a2a38806f4f21ba0eb9782c05592ca030f2fdb8f 100644 --- a/plugin/server_audit/plugin_audit_v4.h +++ b/plugin/server_audit/plugin_audit_v4.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _my_audit_h #define _my_audit_h diff --git a/plugin/server_audit/server_audit.c b/plugin/server_audit/server_audit.c index c4dcf082f42603b471b929f2b0cd33867cd79dc5..a18b40c21a72c0ac4bd9fe5c194c3f4c5d98aff3 100644 --- a/plugin/server_audit/server_audit.c +++ b/plugin/server_audit/server_audit.c @@ -11,11 +11,11 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #define PLUGIN_VERSION 0x104 -#define PLUGIN_STR_VERSION "1.4.4" +#define PLUGIN_STR_VERSION "1.4.7" #define _my_thread_var loc_thread_var @@ -26,8 +26,13 @@ #include #ifndef _WIN32 +#define DO_SYSLOG #include +static const char out_type_desc[]= "Desired output type. Possible values - 'syslog', 'file'" + " or 'null' as no output."; #else +static const char out_type_desc[]= "Desired output type. Possible values - 'file'" + " or 'null' as no output."; #define syslog(PRIORITY, FORMAT, INFO, MESSAGE_LEN, MESSAGE) do {}while(0) static void closelog() {} #define openlog(IDENT, LOG_NOWAIT, LOG_USER) do {}while(0) @@ -87,6 +92,7 @@ static void closelog() {} #include #include #include +#include "../../mysys/mysys_priv.h" #ifndef RTLD_DEFAULT #define RTLD_DEFAULT NULL #endif @@ -295,7 +301,7 @@ static unsigned long long file_rotate_size; static unsigned int rotations; static my_bool rotate= TRUE; static char logging; -static int internal_stop_logging= 0; +static volatile int internal_stop_logging= 0; static char incl_user_buffer[1024]; static char excl_user_buffer[1024]; static char *big_buffer= NULL; @@ -384,18 +390,28 @@ static MYSQL_SYSVAR_SET(events, events, PLUGIN_VAR_RQCMDARG, "Specifies the set of events to monitor. Can be CONNECT, QUERY, TABLE," " QUERY_DDL, QUERY_DML, QUERY_DML_NO_SELECT, QUERY_DCL.", NULL, NULL, 0, &events_typelib); +#ifdef DO_SYSLOG #define OUTPUT_SYSLOG 0 #define OUTPUT_FILE 1 +#else +#define OUTPUT_SYSLOG 0xFFFF +#define OUTPUT_FILE 0 +#endif /*DO_SYSLOG*/ + #define OUTPUT_NO 0xFFFF -static const char *output_type_names[]= { "syslog", "file", 0 }; +static const char *output_type_names[]= { +#ifdef DO_SYSLOG + "syslog", +#endif + "file", 0 }; static TYPELIB output_typelib= { array_elements(output_type_names) - 1, "output_typelib", output_type_names, NULL }; static MYSQL_SYSVAR_ENUM(output_type, output_type, PLUGIN_VAR_RQCMDARG, - "Desired output type. Possible values - 'syslog', 'file'" - " or 'null' as no output.", 0, update_output_type, OUTPUT_FILE, + out_type_desc, + 0, update_output_type, OUTPUT_FILE, &output_typelib); static MYSQL_SYSVAR_STR(file_path, file_path, PLUGIN_VAR_RQCMDARG, "Path to the log file.", NULL, update_file_path, default_file_name); @@ -533,16 +549,20 @@ static struct st_mysql_show_var audit_status[]= #if defined(HAVE_PSI_INTERFACE) && !defined(FLOGGER_NO_PSI) /* These belong to the service initialization */ static PSI_mutex_key key_LOCK_operations; +static PSI_mutex_key key_LOCK_atomic; static PSI_mutex_key key_LOCK_bigbuffer; static PSI_mutex_info mutex_key_list[]= { { &key_LOCK_operations, "SERVER_AUDIT_plugin::lock_operations", PSI_FLAG_GLOBAL}, + { &key_LOCK_atomic, "SERVER_AUDIT_plugin::lock_atomic", + PSI_FLAG_GLOBAL}, { &key_LOCK_bigbuffer, "SERVER_AUDIT_plugin::lock_bigbuffer", PSI_FLAG_GLOBAL} }; #endif static mysql_mutex_t lock_operations; +static mysql_mutex_t lock_atomic; static mysql_mutex_t lock_bigbuffer; /* The Percona server and partly MySQL don't support */ @@ -553,6 +573,14 @@ static mysql_mutex_t lock_bigbuffer; /* worths doing. */ #define CLIENT_ERROR if (!started_mysql) my_printf_error +#define ADD_ATOMIC(x, a) \ + do { \ + flogger_mutex_lock(&lock_atomic); \ + x+= a; \ + flogger_mutex_unlock(&lock_atomic); \ + } while (0) + + static uchar *getkey_user(const char *entry, size_t *length, my_bool nu __attribute__((unused)) ) { @@ -626,7 +654,7 @@ static void remove_blanks(char *user) struct user_name { - int name_len; + size_t name_len; char *name; }; @@ -661,7 +689,7 @@ static int cmp_users(const void *ia, const void *ib) { const struct user_name *a= (const struct user_name *) ia; const struct user_name *b= (const struct user_name *) ib; - int dl= a->name_len - b->name_len; + int dl= (int) a->name_len - (int) b->name_len; if (dl != 0) return dl; @@ -669,7 +697,7 @@ static int cmp_users(const void *ia, const void *ib) } -static char *coll_search(struct user_coll *c, const char *n, int len) +static char *coll_search(struct user_coll *c, const char *n, size_t len) { struct user_name un; struct user_name *found; @@ -681,7 +709,7 @@ static char *coll_search(struct user_coll *c, const char *n, int len) } -static int coll_insert(struct user_coll *c, char *n, int len) +static int coll_insert(struct user_coll *c, char *n, size_t len) { if (c->n_users >= c->n_alloced) { @@ -731,20 +759,20 @@ static int user_coll_fill(struct user_coll *c, char *users, if (cmp_user && take_over_cmp) { - internal_stop_logging= 1; + ADD_ATOMIC(internal_stop_logging, 1); CLIENT_ERROR(1, "User '%.*s' was removed from the" " server_audit_excl_users.", MYF(ME_JUST_WARNING), (int) cmp_length, users); - internal_stop_logging= 0; + ADD_ATOMIC(internal_stop_logging, -1); blank_user(cmp_user); refill_cmp_coll= 1; } else if (cmp_user) { - internal_stop_logging= 1; + ADD_ATOMIC(internal_stop_logging, 1); CLIENT_ERROR(1, "User '%.*s' is in the server_audit_incl_users, " "so wasn't added.", MYF(ME_JUST_WARNING), (int) cmp_length, users); - internal_stop_logging= 0; + ADD_ATOMIC(internal_stop_logging, -1); remove_user(users); continue; } @@ -936,7 +964,7 @@ static void get_str_n(char *dest, int *dest_len, size_t dest_size, memcpy(dest, src, src_len); dest[src_len]= 0; - *dest_len= src_len; + *dest_len= (int) src_len; } @@ -1122,6 +1150,7 @@ static void setup_connection_connect(struct connection_info *cn, #define SAFE_STRLEN(s) (s ? strlen(s) : 0) +#define SAFE_STRLEN_UI(s) ((unsigned int) (s ? strlen(s) : 0)) static char empty_str[1]= { 0 }; @@ -1252,29 +1281,36 @@ static void change_connection(struct connection_info *cn, event->ip, event->ip_length); } -static int write_log(const char *message, int len) +static int write_log(const char *message, size_t len, int take_lock) { + int result= 0; + if (take_lock) + flogger_mutex_lock(&lock_operations); + if (output_type == OUTPUT_FILE) { if (logfile && - (is_active= (logger_write(logfile, message, len) == len))) - return 0; + (is_active= (logger_write(logfile, message, len) == (int) len))) + goto exit; ++log_write_failures; - return 1; + result= 1; } else if (output_type == OUTPUT_SYSLOG) { syslog(syslog_facility_codes[syslog_facility] | syslog_priority_codes[syslog_priority], - "%s %.*s", syslog_info, len, message); + "%s %.*s", syslog_info, (int) len, message); } - return 0; +exit: + if (take_lock) + flogger_mutex_unlock(&lock_operations); + return result; } static size_t log_header(char *message, size_t message_len, time_t *ts, - const char *serverhost, unsigned int serverhost_len, + const char *serverhost, size_t serverhost_len, const char *username, unsigned int username_len, const char *host, unsigned int host_len, const char *userip, unsigned int userip_len, @@ -1292,7 +1328,7 @@ static size_t log_header(char *message, size_t message_len, if (output_type == OUTPUT_SYSLOG) return my_snprintf(message, message_len, "%.*s,%.*s,%.*s,%d,%lld,%s", - serverhost_len, serverhost, + (unsigned int) serverhost_len, serverhost, username_len, username, host_len, host, connection_id, query_id, operation); @@ -1327,7 +1363,7 @@ static int log_connection(const struct connection_info *cn, csize+= my_snprintf(message+csize, sizeof(message) - 1 - csize, ",%.*s,,%d", cn->db_length, cn->db, event->status); message[csize]= '\n'; - return write_log(message, csize + 1); + return write_log(message, csize + 1, 1); } @@ -1348,7 +1384,7 @@ static int log_connection_event(const struct mysql_event_connection *event, csize+= my_snprintf(message+csize, sizeof(message) - 1 - csize, ",%.*s,,%d", event->database_length, event->database, event->status); message[csize]= '\n'; - return write_log(message, csize + 1); + return write_log(message, csize + 1, 1); } @@ -1450,7 +1486,7 @@ static size_t escape_string_hide_passwords(const char *str, unsigned int len, } next_s++; } - len-= next_s - str; + len-= (unsigned int) (next_s - str); str= next_s; continue; } @@ -1477,21 +1513,28 @@ static size_t escape_string_hide_passwords(const char *str, unsigned int len, -static int do_log_user(const char *name) +static int do_log_user(const char *name, int take_lock) { size_t len; + int result; if (!name) return 0; len= strlen(name); - if (incl_user_coll.n_users) - return coll_search(&incl_user_coll, name, len) != 0; + if (take_lock) + flogger_mutex_lock(&lock_operations); - if (excl_user_coll.n_users) - return coll_search(&excl_user_coll, name, len) == 0; + if (incl_user_coll.n_users) + result= coll_search(&incl_user_coll, name, len) != 0; + else if (excl_user_coll.n_users) + result= coll_search(&excl_user_coll, name, len) == 0; + else + result= 1; - return 1; + if (take_lock) + flogger_mutex_unlock(&lock_operations); + return result; } @@ -1588,7 +1631,7 @@ static int filter_query_type(const char *query, struct sa_keyword *kwd) static int log_statement_ex(const struct connection_info *cn, time_t ev_time, unsigned long thd_id, const char *query, unsigned int query_len, - int error_code, const char *type) + int error_code, const char *type, int take_lock) { size_t csize; char message_loc[1024]; @@ -1736,7 +1779,7 @@ static int log_statement_ex(const struct connection_info *cn, csize+= my_snprintf(message+csize, message_size - 1 - csize, "\',%d", error_code); message[csize]= '\n'; - result= write_log(message, csize + 1); + result= write_log(message, csize + 1, take_lock); if (message == big_buffer) flogger_mutex_unlock(&lock_bigbuffer); @@ -1750,7 +1793,7 @@ static int log_statement(const struct connection_info *cn, { return log_statement_ex(cn, event->general_time, event->general_thread_id, event->general_query, event->general_query_length, - event->general_error_code, type); + event->general_error_code, type, 1); } @@ -1764,15 +1807,15 @@ static int log_table(const struct connection_info *cn, (void) time(&ctime); csize= log_header(message, sizeof(message)-1, &ctime, servhost, servhost_len, - event->user, SAFE_STRLEN(event->user), - event->host, SAFE_STRLEN(event->host), - event->ip, SAFE_STRLEN(event->ip), + event->user, SAFE_STRLEN_UI(event->user), + event->host, SAFE_STRLEN_UI(event->host), + event->ip, SAFE_STRLEN_UI(event->ip), event->thread_id, cn->query_id, type); csize+= my_snprintf(message+csize, sizeof(message) - 1 - csize, ",%.*s,%.*s,",event->database_length, event->database, event->table_length, event->table); message[csize]= '\n'; - return write_log(message, csize + 1); + return write_log(message, csize + 1, 1); } @@ -1786,9 +1829,9 @@ static int log_rename(const struct connection_info *cn, (void) time(&ctime); csize= log_header(message, sizeof(message)-1, &ctime, servhost, servhost_len, - event->user, SAFE_STRLEN(event->user), - event->host, SAFE_STRLEN(event->host), - event->ip, SAFE_STRLEN(event->ip), + event->user, SAFE_STRLEN_UI(event->user), + event->host, SAFE_STRLEN_UI(event->host), + event->ip, SAFE_STRLEN_UI(event->ip), event->thread_id, cn->query_id, "RENAME"); csize+= my_snprintf(message+csize, sizeof(message) - 1 - csize, ",%.*s,%.*s|%.*s.%.*s,",event->database_length, event->database, @@ -1796,7 +1839,7 @@ static int log_rename(const struct connection_info *cn, event->new_database_length, event->new_database, event->new_table_length, event->new_table); message[csize]= '\n'; - return write_log(message, csize + 1); + return write_log(message, csize + 1, 1); } @@ -1988,8 +2031,6 @@ void auditing(MYSQL_THD thd, unsigned int event_class, const void *ev) if (!thd || internal_stop_logging) return; - flogger_mutex_lock(&lock_operations); - if (maria_55_started && debug_server_started && event_class == MYSQL_AUDIT_GENERAL_CLASS) { @@ -2024,7 +2065,7 @@ void auditing(MYSQL_THD thd, unsigned int event_class, const void *ev) goto exit_func; if (event_class == MYSQL_AUDIT_GENERAL_CLASS && FILTER(EVENT_QUERY) && - cn && do_log_user(cn->user)) + cn && do_log_user(cn->user, 1)) { const struct mysql_event_general *event = (const struct mysql_event_general *) ev; @@ -2043,7 +2084,7 @@ void auditing(MYSQL_THD thd, unsigned int event_class, const void *ev) { const struct mysql_event_table *event = (const struct mysql_event_table *) ev; - if (do_log_user(event->user)) + if (do_log_user(event->user, 1)) { switch (event->event_subclass) { @@ -2109,7 +2150,6 @@ void auditing(MYSQL_THD thd, unsigned int event_class, const void *ev) } if (cn) cn->log_always= 0; - flogger_mutex_unlock(&lock_operations); } @@ -2377,6 +2417,7 @@ static int server_audit_init(void *p __attribute__((unused))) PSI_server->register_mutex("server_audit", mutex_key_list, 1); #endif flogger_mutex_init(key_LOCK_operations, &lock_operations, MY_MUTEX_INIT_FAST); + flogger_mutex_init(key_LOCK_operations, &lock_atomic, MY_MUTEX_INIT_FAST); flogger_mutex_init(key_LOCK_operations, &lock_bigbuffer, MY_MUTEX_INIT_FAST); coll_init(&incl_user_coll); @@ -2464,6 +2505,7 @@ static int server_audit_deinit(void *p __attribute__((unused))) (void) free(big_buffer); flogger_mutex_destroy(&lock_operations); + flogger_mutex_destroy(&lock_atomic); flogger_mutex_destroy(&lock_bigbuffer); error_header(); @@ -2553,10 +2595,10 @@ static void log_current_query(MYSQL_THD thd) return; cn= get_loc_info(thd); if (!ci_needs_setup(cn) && cn->query_length && - FILTER(EVENT_QUERY) && do_log_user(cn->user)) + FILTER(EVENT_QUERY) && do_log_user(cn->user, 0)) { log_statement_ex(cn, cn->query_time, thd_get_thread_id(thd), - cn->query, cn->query_length, 0, "QUERY"); + cn->query, cn->query_length, 0, "QUERY", 0); cn->log_always= 1; } } @@ -2568,12 +2610,13 @@ static void update_file_path(MYSQL_THD thd, { char *new_name= (*(char **) save) ? *(char **) save : empty_str; - if (!maria_55_started || !debug_server_started) - flogger_mutex_lock(&lock_operations); - internal_stop_logging= 1; + ADD_ATOMIC(internal_stop_logging, 1); error_header(); fprintf(stderr, "Log file name was changed to '%s'.\n", new_name); + if (!maria_55_started || !debug_server_started) + flogger_mutex_lock(&lock_operations); + if (logging) log_current_query(thd); @@ -2582,7 +2625,6 @@ static void update_file_path(MYSQL_THD thd, char *sav_path= file_path; file_path= new_name; - internal_stop_logging= 1; stop_logging(); if (start_logging()) { @@ -2598,16 +2640,15 @@ static void update_file_path(MYSQL_THD thd, } goto exit_func; } - internal_stop_logging= 0; } strncpy(path_buffer, new_name, sizeof(path_buffer)-1); path_buffer[sizeof(path_buffer)-1]= 0; file_path= path_buffer; exit_func: - internal_stop_logging= 0; if (!maria_55_started || !debug_server_started) flogger_mutex_unlock(&lock_operations); + ADD_ATOMIC(internal_stop_logging, -1); } @@ -2692,8 +2733,8 @@ static void update_output_type(MYSQL_THD thd, if (output_type == new_output_type) return; + ADD_ATOMIC(internal_stop_logging, 1); flogger_mutex_lock(&lock_operations); - internal_stop_logging= 1; if (logging) { log_current_query(thd); @@ -2707,8 +2748,8 @@ static void update_output_type(MYSQL_THD thd, if (logging) start_logging(); - internal_stop_logging= 0; flogger_mutex_unlock(&lock_operations); + ADD_ATOMIC(internal_stop_logging, -1); } @@ -2756,9 +2797,9 @@ static void update_logging(MYSQL_THD thd, if (new_logging == logging) return; + ADD_ATOMIC(internal_stop_logging, 1); if (!maria_55_started || !debug_server_started) flogger_mutex_lock(&lock_operations); - internal_stop_logging= 1; if ((logging= new_logging)) { start_logging(); @@ -2773,9 +2814,9 @@ static void update_logging(MYSQL_THD thd, stop_logging(); } - internal_stop_logging= 0; if (!maria_55_started || !debug_server_started) flogger_mutex_unlock(&lock_operations); + ADD_ATOMIC(internal_stop_logging, -1); } @@ -2787,16 +2828,16 @@ static void update_mode(MYSQL_THD thd __attribute__((unused)), if (mode_readonly || new_mode == mode) return; + ADD_ATOMIC(internal_stop_logging, 1); if (!maria_55_started || !debug_server_started) flogger_mutex_lock(&lock_operations); - internal_stop_logging= 1; mark_always_logged(thd); error_header(); fprintf(stderr, "Logging mode was changed from %d to %d.\n", mode, new_mode); mode= new_mode; - internal_stop_logging= 0; if (!maria_55_started || !debug_server_started) flogger_mutex_unlock(&lock_operations); + ADD_ATOMIC(internal_stop_logging, -1); } diff --git a/plugin/server_audit/test_audit_v4.c b/plugin/server_audit/test_audit_v4.c index ae7527f8449a552114ba8133a10daca2f00b9d18..d0b341be346a3cc68ed1d52c0da797fd5b64fd51 100644 --- a/plugin/server_audit/test_audit_v4.c +++ b/plugin/server_audit/test_audit_v4.c @@ -56,11 +56,11 @@ static int auditing_v4(MYSQL_THD thd, mysql_event_class_t class, const void *ev) ev_302.general_error_code= event->general_error_code; ev_302.general_thread_id= event->general_thread_id; ev_302.general_user= event->general_user.str; - ev_302.general_user_length= event->general_user.length; + ev_302.general_user_length= (unsigned int) event->general_user.length; ev_302.general_command= event->general_command.str; - ev_302.general_command_length= event->general_command.length; + ev_302.general_command_length= (unsigned int) event->general_command.length; ev_302.general_query= event->general_query.str; - ev_302.general_query_length= event->general_query.length; + ev_302.general_query_length= (unsigned int) event->general_query.length; ev_302.general_charset= event->general_charset; ev_302.general_time= event->general_time; ev_302.general_rows= event->general_rows; diff --git a/plugin/simple_password_check/simple_password_check.c b/plugin/simple_password_check/simple_password_check.c index f1c425b332c5a2f930b7fcb4400c97d751238a05..32f3ba6c703c76ea0ebc4ea179e652259c8dd4ab 100644 --- a/plugin/simple_password_check/simple_password_check.c +++ b/plugin/simple_password_check/simple_password_check.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/sql_errlog/CMakeLists.txt b/plugin/sql_errlog/CMakeLists.txt index 18fb9f5421d3736337f803ba0bb9d2060f5c9d7d..10754f2a3335c898282a544b92f974abcab387fe 100644 --- a/plugin/sql_errlog/CMakeLists.txt +++ b/plugin/sql_errlog/CMakeLists.txt @@ -11,6 +11,6 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA MYSQL_ADD_PLUGIN(sql_errlog sql_errlog.c MODULE_ONLY) diff --git a/plugin/sql_errlog/sql_errlog.c b/plugin/sql_errlog/sql_errlog.c index c0e6b7255cfc76120e752b23f37cfba92f8502cc..e0ebd6b7737bca88e3cbc29168ab18199a76f04c 100644 --- a/plugin/sql_errlog/sql_errlog.c +++ b/plugin/sql_errlog/sql_errlog.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/win_auth_client/CMakeLists.txt b/plugin/win_auth_client/CMakeLists.txt index 5d72d24d6ad259b97195d64feec55c58008d9483..435c5b8966aff7a6588da433496a4c0fcd0066ca 100644 --- a/plugin/win_auth_client/CMakeLists.txt +++ b/plugin/win_auth_client/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA IF(WIN32) # diff --git a/plugin/win_auth_client/common.cc b/plugin/win_auth_client/common.cc index 30a8e0b3b131a10f2222676f80ad000dd93c199a..27f1685e200cb126c14ee948aa7246da6d56bdc1 100644 --- a/plugin/win_auth_client/common.cc +++ b/plugin/win_auth_client/common.cc @@ -1,4 +1,4 @@ -/* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. +/* Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "common.h" #include // for ConvertSidToStringSid() @@ -504,7 +504,7 @@ const char* get_last_error_message(Error_message_buf buf) buf[0]= '\0'; FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, error, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - (LPTSTR)buf, sizeof(buf), NULL ); + (LPTSTR)buf, sizeof(Error_message_buf), NULL); return buf; } diff --git a/plugin/win_auth_client/common.h b/plugin/win_auth_client/common.h index 415294b1ed97c822c810e33af480e45514196bb0..206cb9240c03a89ffdbe780892aebd22c311debb 100644 --- a/plugin/win_auth_client/common.h +++ b/plugin/win_auth_client/common.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef COMMON_H #define COMMON_H diff --git a/plugin/win_auth_client/handshake.cc b/plugin/win_auth_client/handshake.cc index 8e6af8408aef33e08d368633198f8866ef4dee4a..cd63ee263a7b0e871c06eacc5cb56e908bdf9185 100644 --- a/plugin/win_auth_client/handshake.cc +++ b/plugin/win_auth_client/handshake.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "handshake.h" diff --git a/plugin/win_auth_client/handshake.h b/plugin/win_auth_client/handshake.h index adab4715c99ebd08a3de9f70b0a0ec80dbea938e..d495ba5115b7c4376de2b5ae3a8314dd00a4078d 100644 --- a/plugin/win_auth_client/handshake.h +++ b/plugin/win_auth_client/handshake.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef HANDSHAKE_H #define HANDSHAKE_H diff --git a/plugin/win_auth_client/handshake_client.cc b/plugin/win_auth_client/handshake_client.cc index 856dda762174ee61e664d9a362af5183e3c18ddb..4a3208af28fe0895edabbb679bac6e92b0ca1b0e 100644 --- a/plugin/win_auth_client/handshake_client.cc +++ b/plugin/win_auth_client/handshake_client.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "handshake.h" diff --git a/plugin/win_auth_client/log_client.cc b/plugin/win_auth_client/log_client.cc index ec7210a8a97849e8f786df31fabe5fd8a7103761..2e878510105825af7d0f3c4a579d1dc3db59639d 100644 --- a/plugin/win_auth_client/log_client.cc +++ b/plugin/win_auth_client/log_client.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "common.h" diff --git a/plugin/win_auth_client/plugin_client.cc b/plugin/win_auth_client/plugin_client.cc index c7dcb92e62df6c7b54847ef98248e80bebedb834..37bd1bc5c32800ce41f50b087f2ca5f2f4790985 100644 --- a/plugin/win_auth_client/plugin_client.cc +++ b/plugin/win_auth_client/plugin_client.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/plugin/wsrep_info/mysql-test/wsrep_info/my.cnf b/plugin/wsrep_info/mysql-test/wsrep_info/my.cnf index 70682178ca19a7ca6e719f14418792e798bceca4..52c7789e9f723f649f5605216e99a2aea99784ff 100644 --- a/plugin/wsrep_info/mysql-test/wsrep_info/my.cnf +++ b/plugin/wsrep_info/mysql-test/wsrep_info/my.cnf @@ -5,7 +5,6 @@ wsrep-on=1 binlog-format=row innodb-autoinc-lock-mode=2 -innodb-locks-unsafe-for-binlog=1 wsrep-cluster-address=gcomm:// wsrep_provider=@ENV.WSREP_PROVIDER diff --git a/plugin/wsrep_info/plugin.cc b/plugin/wsrep_info/plugin.cc index a4362f0072e5b53a00a2e30002118876f146171a..6e95438c3b6efdf3a347e89cd6a24647ea96d4c0 100644 --- a/plugin/wsrep_info/plugin.cc +++ b/plugin/wsrep_info/plugin.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQL_SERVER #define MYSQL_SERVER diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt index 9f320ce6aa47d518c90350a0f6513d97b8707b70..b139b51e296babae2ecab73b8ca748de8cf2a337 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Build comp_sql - used for embedding SQL in C or C++ programs IF(NOT CMAKE_CROSSCOMPILING) diff --git a/scripts/comp_sql.c b/scripts/comp_sql.c index bcc653a3b7fc38230ee7557a3472eaf64b0e8ea8..a1f2726189212d31c88f5a0920b3972c91decf5e 100644 --- a/scripts/comp_sql.c +++ b/scripts/comp_sql.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Originally written by Magnus Svensson diff --git a/scripts/fill_help_tables.sql b/scripts/fill_help_tables.sql index f8055867b5cce4aa61c82f9d9aef375b39dc746b..71a44358c95c9b0509c353b917cc331d72ddca62 100644 --- a/scripts/fill_help_tables.sql +++ b/scripts/fill_help_tables.sql @@ -11,7 +11,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. -- DO NOT EDIT THIS FILE. It is generated automatically. diff --git a/scripts/galera_recovery.sh b/scripts/galera_recovery.sh index c58f3d8f6b939c87557b7b53c4389caa21042387..709c4b0eed597dddd6d709172460a90cc1881027 100644 --- a/scripts/galera_recovery.sh +++ b/scripts/galera_recovery.sh @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ # This script is intended to be executed by systemd. It starts mysqld with diff --git a/scripts/make_win_bin_dist b/scripts/make_win_bin_dist index 2415d4017e406d1cf4f72730bb68401248f0ce0a..7387dc2c1a6e4bd7ffd4be1a0ff59346ac0918e2 100755 --- a/scripts/make_win_bin_dist +++ b/scripts/make_win_bin_dist @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Exit if failing to copy, we want exact specifications, not # just "what happen to be built". diff --git a/scripts/maria_add_gis_sp.sql.in b/scripts/maria_add_gis_sp.sql.in index 5826cc1a038130206dfcb58cbfa91d458a6e42c7..412b83e3d78dc08d2df798c778b7a0a4ac0db89a 100644 --- a/scripts/maria_add_gis_sp.sql.in +++ b/scripts/maria_add_gis_sp.sql.in @@ -11,7 +11,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This part creates stored procedures required by the OpenGIS standards. # script is prepared to be run with the --bootstrap server option diff --git a/scripts/mariadb-service-convert b/scripts/mariadb-service-convert index 83c9265914408b837dc95933d227564055eedabd..380437335549ba171fc3a51da6cb839685d859a6 100755 --- a/scripts/mariadb-service-convert +++ b/scripts/mariadb-service-convert @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # # PURPOSE: # diff --git a/scripts/msql2mysql.sh b/scripts/msql2mysql.sh index d5f1e55af34827f943de2b3af26b612966527d43..72a609fa6e789f9e3da50aec4f39d7db4c09e917 100644 --- a/scripts/msql2mysql.sh +++ b/scripts/msql2mysql.sh @@ -14,6 +14,6 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. @bindir@/replace msqlConnect mysql_connect msqlListDBs mysql_list_dbs msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $* diff --git a/scripts/mysql_config.pl.in b/scripts/mysql_config.pl.in index f2c27bc0b84d0f9e0ea52735e2653109388944df..fec9bc648f57d32e01b3cbad31d2006c80ddf9dc 100644 --- a/scripts/mysql_config.pl.in +++ b/scripts/mysql_config.pl.in @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ############################################################################## # diff --git a/scripts/mysql_config.sh b/scripts/mysql_config.sh index 52f6d563fe5ee51244eb2f8491b63aa92f8fb3bc..425dee1e271306b78a2e8a98776f3976eea8935b 100644 --- a/scripts/mysql_config.sh +++ b/scripts/mysql_config.sh @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This script reports various configuration settings that may be needed # when using the MariaDB client library. diff --git a/scripts/mysql_convert_table_format.sh b/scripts/mysql_convert_table_format.sh index 8fe7e9b2276336ea28e01c32c99be01ca7bb6f15..2001efae392982158a07934e95179f1d2aa26695 100644 --- a/scripts/mysql_convert_table_format.sh +++ b/scripts/mysql_convert_table_format.sh @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Convert given tables in a database to MYISAM diff --git a/scripts/mysql_find_rows.sh b/scripts/mysql_find_rows.sh index 4a9c3dbd41cd6806062aa3148680b7bc318ac220..09bcc22790a805856422a7ad9c6dc44ccbd36cd1 100644 --- a/scripts/mysql_find_rows.sh +++ b/scripts/mysql_find_rows.sh @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA $version="1.02"; diff --git a/scripts/mysql_fix_extensions.sh b/scripts/mysql_fix_extensions.sh index edc209589e8821cdbd94ea367eddad786e691463..c0de813ef1f606b99a33a15521b97de8380736aa 100644 --- a/scripts/mysql_fix_extensions.sh +++ b/scripts/mysql_fix_extensions.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # This is a utility for MariaDB. It is not needed by any standard part # of MariaDB. diff --git a/scripts/mysql_install_db.pl.in b/scripts/mysql_install_db.pl.in index 68d47fed2ead0e69e6711ecdf6fddace46ccaf21..f6d3eefbbdf220c7993deb524e703d3aceb787cf 100644 --- a/scripts/mysql_install_db.pl.in +++ b/scripts/mysql_install_db.pl.in @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA ############################################################################## # diff --git a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh index 43b7d7a52f6538facbf1807f42ad949047ecbf86..1479ffc0443c687313031be14dd45709d9fc5805 100644 --- a/scripts/mysql_install_db.sh +++ b/scripts/mysql_install_db.sh @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This scripts creates the MariaDB Server system tables # @@ -273,9 +273,16 @@ then fi if test -n "$srcdir" then + # In an out-of-source build, builddir is not srcdir. Try to guess where + # builddir is by looking for my_print_defaults. if test -z "$builddir" then - builddir="$srcdir" + if test -x "$dirname0/extra/my_print_defaults" + then + builddir="$dirname0" + else + builddir="$srcdir" + fi fi print_defaults="$builddir/extra/my_print_defaults" elif test -n "$basedir" diff --git a/scripts/mysql_secure_installation.pl.in b/scripts/mysql_secure_installation.pl.in index 01d34c4af4d628fb7c26b943a3408b77988340af..e4353e57b35d8bbaddd0f705ab124ac9ed97e915 100644 --- a/scripts/mysql_secure_installation.pl.in +++ b/scripts/mysql_secure_installation.pl.in @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA use Fcntl; use File::Spec; diff --git a/scripts/mysql_secure_installation.sh b/scripts/mysql_secure_installation.sh index 57e4d43dfadffc3756d5a4fb209546921c218c83..a87dd93bc4c239f8c7ff89d152e83f521946a295 100644 --- a/scripts/mysql_secure_installation.sh +++ b/scripts/mysql_secure_installation.sh @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA config=".my.cnf.$$" command=".mysql.$$" diff --git a/scripts/mysql_setpermission.sh b/scripts/mysql_setpermission.sh index 1d67ff82f3b6e6c6191b69c2b71559e0f3f628b4..71462d2862294ba56c04ce807f49ce4c376d9c0a 100644 --- a/scripts/mysql_setpermission.sh +++ b/scripts/mysql_setpermission.sh @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA ## ## Permission setter for MySQL diff --git a/scripts/mysql_system_tables.sql b/scripts/mysql_system_tables.sql index f7d277544de6e273a62cebb7ccfd212a535650a3..76b4fb93eab31da71bc58c1d9526ec2baf959671 100644 --- a/scripts/mysql_system_tables.sql +++ b/scripts/mysql_system_tables.sql @@ -12,7 +12,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA -- -- The system tables of MySQL Server diff --git a/scripts/mysql_system_tables_data.sql b/scripts/mysql_system_tables_data.sql index 9556e7ba160a1d11d0a1ea8a8fd85486e05da374..53704c763a5b5d5ed6cca4e2a9b5f16a911f6a43 100644 --- a/scripts/mysql_system_tables_data.sql +++ b/scripts/mysql_system_tables_data.sql @@ -11,7 +11,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA -- -- The inital data for system tables of MySQL Server diff --git a/scripts/mysql_system_tables_fix.sql b/scripts/mysql_system_tables_fix.sql index df545897813ef9037ca399ae0ea69b932479bf5b..89b1756d794cc22b1a21da3b681fa79babbebb12 100644 --- a/scripts/mysql_system_tables_fix.sql +++ b/scripts/mysql_system_tables_fix.sql @@ -12,7 +12,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This part converts any old privilege tables to privilege tables suitable # for current version of MySQL diff --git a/scripts/mysql_test_data_timezone.sql b/scripts/mysql_test_data_timezone.sql index 091d4f00a97e95eb2186de2297afc3aca6052f13..b4902c358ea853f3ca7f0fa1e6849078524e7ddf 100644 --- a/scripts/mysql_test_data_timezone.sql +++ b/scripts/mysql_test_data_timezone.sql @@ -12,7 +12,7 @@ -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA INSERT INTO time_zone_name (Name, Time_Zone_id) VALUES ('MET', 1), ('UTC', 2), ('Universal', 2), ('Europe/Moscow',3), ('leap/Europe/Moscow',4), ('Japan', 5); INSERT INTO time_zone (Time_zone_id, Use_leap_seconds) VALUES (1,'N'), (2,'N'), (3,'N'), (4,'Y'), (5,'N'); diff --git a/scripts/mysql_zap.sh b/scripts/mysql_zap.sh index a2ee225c0c678da93dac7a93ac8223c2987f6605..ca83482386f198d0006991f2f42c268c5d6cf20d 100644 --- a/scripts/mysql_zap.sh +++ b/scripts/mysql_zap.sh @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # This is a utility for MariaDB. It is not needed by any standard part # of MariaDB. diff --git a/scripts/mysqlaccess.sh b/scripts/mysqlaccess.sh index e7c1f8d1fd6a73a4558db9aa464631329d186b16..7d7883d29b478e0ba817b44208a25084e04073f1 100644 --- a/scripts/mysqlaccess.sh +++ b/scripts/mysqlaccess.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # **************************** package MySQLaccess; diff --git a/scripts/mysqlbug.sh b/scripts/mysqlbug.sh index e9df210fa84b55c90d4e22d1d6f9c63b7cc325da..4533f8202ae6b75c6df6bf5c05076cad65fd1278 100644 --- a/scripts/mysqlbug.sh +++ b/scripts/mysqlbug.sh @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Create a bug report and mail it to the mysql mailing list # Based on glibc bug reporting script. diff --git a/scripts/mysqld_multi.sh b/scripts/mysqld_multi.sh index 2ab70cdd4c36eb00b33d57fec0c804968500dd4b..64fa76f0e9733f543920ef9999857e814c5d661c 100644 --- a/scripts/mysqld_multi.sh +++ b/scripts/mysqld_multi.sh @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA use Getopt::Long; use POSIX qw(strftime getcwd); diff --git a/scripts/mysqld_safe.sh b/scripts/mysqld_safe.sh index f21e697953f962fd572c43b9fa25f85f7f10574f..d51867d9d17aca5d6b90bc620ddc41d71c090cc1 100644 --- a/scripts/mysqld_safe.sh +++ b/scripts/mysqld_safe.sh @@ -752,9 +752,9 @@ fi safe_mysql_unix_port=${mysql_unix_port:-${MYSQL_UNIX_PORT:-@MYSQL_UNIX_ADDR@}} # Make sure that directory for $safe_mysql_unix_port exists mysql_unix_port_dir=`dirname $safe_mysql_unix_port` -if [ ! -d $mysql_unix_port_dir ] +if [ ! -d $mysql_unix_port_dir -a $dry_run -eq 0 ] then - if ! `mkdir -p $mysql_unix_port_dir` + if ! mkdir -p $mysql_unix_port_dir then log_error "Fatal error Can't create database directory '$mysql_unix_port'" exit 1 diff --git a/scripts/mysqldumpslow.sh b/scripts/mysqldumpslow.sh index 6a6ab0dc8b5a9fb77773ba41dadfe0862adef082..5c46587e9e4106b97e95aa3468feb914b360ce2b 100644 --- a/scripts/mysqldumpslow.sh +++ b/scripts/mysqldumpslow.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # mysqldumpslow - parse and summarize the MySQL slow query log diff --git a/scripts/mysqlhotcopy.sh b/scripts/mysqlhotcopy.sh index d6184d9ef1027633405d5b246a07192d8d268ba9..c56cdea470c02a886d3861be6d6715ab01e07692 100644 --- a/scripts/mysqlhotcopy.sh +++ b/scripts/mysqlhotcopy.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA use strict; use Getopt::Long; diff --git a/scripts/wsrep_sst_common.sh b/scripts/wsrep_sst_common.sh index da148495b8c44837c136ea24e3a830150b4abc6a..3b8cce9c4673daa234d59869223700f264d4d352 100644 --- a/scripts/wsrep_sst_common.sh +++ b/scripts/wsrep_sst_common.sh @@ -12,7 +12,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # This is a common command line parser to be sourced by other SST scripts diff --git a/scripts/wsrep_sst_mariabackup.sh b/scripts/wsrep_sst_mariabackup.sh index e8344bbaf8d5dbd66fb6a28bcafc51ad66830d37..45a7f32d1ac9ab72c36b12b476fb48c29b615d16 100644 --- a/scripts/wsrep_sst_mariabackup.sh +++ b/scripts/wsrep_sst_mariabackup.sh @@ -14,7 +14,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # Documentation: # http://www.percona.com/doc/percona-xtradb-cluster/manual/xtrabackup_sst.html diff --git a/scripts/wsrep_sst_mysqldump.sh b/scripts/wsrep_sst_mysqldump.sh index faa3f10639b6f9fc582f3bcd5dfdec1cf240223e..664fd2c04f9556883e2211a2f68304c8d05b4e14 100644 --- a/scripts/wsrep_sst_mysqldump.sh +++ b/scripts/wsrep_sst_mysqldump.sh @@ -13,7 +13,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # This is a reference script for mysqldump-based state snapshot tansfer diff --git a/scripts/wsrep_sst_rsync.sh b/scripts/wsrep_sst_rsync.sh index bc2af40e2a97d6a30f3e45661ced399e24a3e955..0e3ef0c923c4e36770fde3bb0ba09ccfd313b173 100644 --- a/scripts/wsrep_sst_rsync.sh +++ b/scripts/wsrep_sst_rsync.sh @@ -14,7 +14,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # This is a reference script for rsync-based state snapshot tansfer diff --git a/scripts/wsrep_sst_xtrabackup-v2.sh b/scripts/wsrep_sst_xtrabackup-v2.sh index 54a7c8852e580f099ce5953a3a6faf455fc6d66e..8e353c24deb9985da56d49719d06a2bc70e1cacd 100644 --- a/scripts/wsrep_sst_xtrabackup-v2.sh +++ b/scripts/wsrep_sst_xtrabackup-v2.sh @@ -13,7 +13,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # Documentation: http://www.percona.com/doc/percona-xtradb-cluster/manual/xtrabackup_sst.html # Make sure to read that before proceeding! diff --git a/scripts/wsrep_sst_xtrabackup.sh b/scripts/wsrep_sst_xtrabackup.sh index 5bf380a81449462d35e01f9f8bad733158454e62..485e071bd355cdc9b67bedcfd3835d3082de882d 100644 --- a/scripts/wsrep_sst_xtrabackup.sh +++ b/scripts/wsrep_sst_xtrabackup.sh @@ -13,7 +13,7 @@ # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston -# MA 02110-1301 USA. +# MA 02110-1335 USA. # Optional dependencies and options documented here: http://www.percona.com/doc/percona-xtradb-cluster/manual/xtrabackup_sst.html # Make sure to read that before proceeding! diff --git a/sql-bench/CMakeLists.txt b/sql-bench/CMakeLists.txt index a837746bb9894a51c4d61c52036327d3ac935e55..58ae070b3878b27e23ac764142583ae5f378b0e0 100644 --- a/sql-bench/CMakeLists.txt +++ b/sql-bench/CMakeLists.txt @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA # Install sql-bench files diff --git a/sql-bench/as3ap.sh b/sql-bench/as3ap.sh index 52e790cafeb6dea4ea99711b87d8deb1edfa8c68..fd2b6ba3b255ed9303de48df7cbe152c9df0912d 100644 --- a/sql-bench/as3ap.sh +++ b/sql-bench/as3ap.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # AS3AP single-user benchmark. # diff --git a/sql-bench/bench-count-distinct.sh b/sql-bench/bench-count-distinct.sh index 923af98648a89ebcf45cbee89333557ad36e5b6c..9ce9b2fb168041a9cca5ffb6231764ab18b5d02c 100644 --- a/sql-bench/bench-count-distinct.sh +++ b/sql-bench/bench-count-distinct.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of selecting on keys that consist of many parts # diff --git a/sql-bench/bench-init.pl.sh b/sql-bench/bench-init.pl.sh index 7bc7c23be66ba3191b06f6d0c49bb18739ec1dca..1b6509cebcc1cfd4fa22782c7993257365370f3b 100644 --- a/sql-bench/bench-init.pl.sh +++ b/sql-bench/bench-init.pl.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # ########################################################## # this is the base file every test is using .... diff --git a/sql-bench/compare-results.sh b/sql-bench/compare-results.sh index 91d29685ee3867ad30ec5ef26a4062d51f1fa8f0..f0658160db22b2c1b1cbacf4539bad47f9e7395e 100644 --- a/sql-bench/compare-results.sh +++ b/sql-bench/compare-results.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # a little program to generate a table of results # just read all the RUN-*.log files and format them nicely diff --git a/sql-bench/copy-db.sh b/sql-bench/copy-db.sh index 082db2203aad8366ab99949842dfeaa7d1662211..38a010e52ab5d59cc565d064fa322f812f10458e 100644 --- a/sql-bench/copy-db.sh +++ b/sql-bench/copy-db.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # start initialition # diff --git a/sql-bench/crash-me.sh b/sql-bench/crash-me.sh index 4391a2afb40544c31d95cb72b498cc2f0bac9eff..a7298c5f9a1561e32822967b6a8818dcdab438a9 100644 --- a/sql-bench/crash-me.sh +++ b/sql-bench/crash-me.sh @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # Written by Monty for the TCX/Monty Program/Detron benchmark suite. # Empress and PostgreSQL patches by Luuk de Boer diff --git a/sql-bench/run-all-tests.sh b/sql-bench/run-all-tests.sh index 4e4b372b759f6e757e9960def6f5713bd805420b..5d77c8c388d5d76497d2280ca65a86d8d362fe68 100644 --- a/sql-bench/run-all-tests.sh +++ b/sql-bench/run-all-tests.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # This program runs all test that starts with 'test-' and sums # the results that the program prints. diff --git a/sql-bench/server-cfg.sh b/sql-bench/server-cfg.sh index 7e83b7365e32557025b94e8c6c30e0f83798af28..fcdfe0b678faf12cf27740fff5e1b268e4aba2ac 100644 --- a/sql-bench/server-cfg.sh +++ b/sql-bench/server-cfg.sh @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # The configuration file for the DBI/DBD tests on different databases .... # You will need the DBD module for the database you are running. diff --git a/sql-bench/test-ATIS.sh b/sql-bench/test-ATIS.sh index ca1132435ffa7718440d9888d5474cfbe26d1917..d3c242db256d8b82ccd0513310c861cf25e7ed16 100644 --- a/sql-bench/test-ATIS.sh +++ b/sql-bench/test-ATIS.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of creating the ATIS database and doing many different selects on it # diff --git a/sql-bench/test-alter-table.sh b/sql-bench/test-alter-table.sh index 6dc5ce358417e409ca52499d142f6839fd7fdf31..3a7f325b604c4605e25c1b7f2ddb9d9a1cdc1ddd 100644 --- a/sql-bench/test-alter-table.sh +++ b/sql-bench/test-alter-table.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of alter table # diff --git a/sql-bench/test-big-tables.sh b/sql-bench/test-big-tables.sh index 68b4afaa429cc848578ef156316027a1549aebce..e2cf983de1c3d450e3565b35abec50c57ddd526b 100644 --- a/sql-bench/test-big-tables.sh +++ b/sql-bench/test-big-tables.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of extreme tables. # diff --git a/sql-bench/test-connect.sh b/sql-bench/test-connect.sh index 50024e7e055bf9e375bd5b1b4edcc1c3c2382764..1226301df9bbbf91c8b790d9a2be1036e08092c3 100644 --- a/sql-bench/test-connect.sh +++ b/sql-bench/test-connect.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # This test is for testing the speed of connections and sending # data to the client. diff --git a/sql-bench/test-create.sh b/sql-bench/test-create.sh index 235cacd86eccbb640864a4123cbebc5413d62ea6..7af6fa135621371ac6f1f8b80baaf08fa8009f87 100644 --- a/sql-bench/test-create.sh +++ b/sql-bench/test-create.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # This test is for testing how long it takes to create tables, # make a count(*) from them and finally drop the tables. These diff --git a/sql-bench/test-insert.sh b/sql-bench/test-insert.sh index e264c7d529fc44c0bb6574ea40bea03de0e5f046..be57b04471a05eb714cba0039ced79deb22bc7b9 100644 --- a/sql-bench/test-insert.sh +++ b/sql-bench/test-insert.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of creating a simple table and inserting $record_count records in it, # $opt_loop_count rows in order, $opt_loop_count rows in reverse order and diff --git a/sql-bench/test-select.sh b/sql-bench/test-select.sh index 1752c05079bfa1f9c065d9e50d47e79e7464dfc2..4c7147b57a43715f6147b77c069501c6f8b52b95 100644 --- a/sql-bench/test-select.sh +++ b/sql-bench/test-select.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of selecting on keys that consist of many parts # diff --git a/sql-bench/test-transactions.sh b/sql-bench/test-transactions.sh index b0aee8c6d3855f5ce094c08095d0c8f06a9a34ea..4732658c529dde526bcd03dc65d91b72afac20b9 100644 --- a/sql-bench/test-transactions.sh +++ b/sql-bench/test-transactions.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # # Test of transactions performance. # diff --git a/sql-bench/test-wisconsin.sh b/sql-bench/test-wisconsin.sh index 4fb3bc65f35ea58ad53ba7ccb880af1f12afe21c..47c9e0503048c13a60675cc6fe7deab155a65be3 100644 --- a/sql-bench/test-wisconsin.sh +++ b/sql-bench/test-wisconsin.sh @@ -15,7 +15,7 @@ # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the Free # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA +# MA 02110-1335 USA # use Cwd; diff --git a/sql-common/client.c b/sql-common/client.c index 4420a1afc17f95bbfbdefa3d9e219a5d116c9623..fe73887106e8721531c38f2e47d53c53ab2502cf 100644 --- a/sql-common/client.c +++ b/sql-common/client.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file is included by both libmysql.c (the MySQL client C API) diff --git a/sql-common/client_plugin.c b/sql-common/client_plugin.c index f93e50125c5a43cf6cdb4f528f197fcba649084a..52e0ae03ee16fcbb31f773ca3bbe10b5f7aa87ce 100644 --- a/sql-common/client_plugin.c +++ b/sql-common/client_plugin.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -362,7 +362,13 @@ mysql_load_plugin_v(MYSQL *mysql, const char *name, int type, mysql->options.extension && mysql->options.extension->plugin_dir ? mysql->options.extension->plugin_dir : PLUGINDIR, "/", name, SO_EXT, NullS); - + + if (strpbrk(name, "()[]!@#$%^&/*;.,'?\\")) + { + errmsg= "invalid plugin name"; + goto err; + } + DBUG_PRINT ("info", ("dlopeninig %s", dlpath)); /* Open new dll handle */ if (!(dlhandle= dlopen(dlpath, RTLD_NOW))) diff --git a/sql-common/my_time.c b/sql-common/my_time.c index 7cf8692a3f6753ce46ca3bf9f5575949013eabf8..01b4d1fc2c9c76d2a23e5b21cd9bd658e5d688ec 100644 --- a/sql-common/my_time.c +++ b/sql-common/my_time.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql-common/my_user.c b/sql-common/my_user.c index a486f77bc1ec135a9c8377d2320dd39ef22c560c..0f0b21cc1ada2af617630e5cf6e327b5ca2a94dd 100644 --- a/sql-common/my_user.c +++ b/sql-common/my_user.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql-common/pack.c b/sql-common/pack.c index 4bb4a0b7a4eff690a8de1cfcd0ee16c623b6d190..57abeffab22b269ae0ae784d1a1990c77bc6dec1 100644 --- a/sql-common/pack.c +++ b/sql-common/pack.c @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt index fa69d5c306623db8c7adb240fa084b516fc05d43..6362ed2c561f06ef59f9334c51ce916fa754e8e3 100644 --- a/sql/CMakeLists.txt +++ b/sql/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA IF(WITH_WSREP AND NOT EMBEDDED_LIBRARY) diff --git a/sql/authors.h b/sql/authors.h index 3a8f5497248d11dba6295d76b4e54e3bf1cc932f..4c6482ed680317b0efd83a6f0f04520b089c001a 100644 --- a/sql/authors.h +++ b/sql/authors.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Structure of the name list */ diff --git a/sql/bounded_queue.h b/sql/bounded_queue.h index 070ae46c3475ab62dd8ecac3ceea18d7a10261e1..8bb691ed0e32b9e8e530a75b3cb1ab37f0133ae1 100644 --- a/sql/bounded_queue.h +++ b/sql/bounded_queue.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef BOUNDED_QUEUE_INCLUDED #define BOUNDED_QUEUE_INCLUDED diff --git a/sql/client_settings.h b/sql/client_settings.h index f2ad1797b8edc8029b34fb363980dffe99ad7d1d..1c83b0aefd95aeec1688ca7833ceddb5f285c72b 100644 --- a/sql/client_settings.h +++ b/sql/client_settings.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef CLIENT_SETTINGS_INCLUDED diff --git a/sql/compat56.cc b/sql/compat56.cc index 357b4bcf78bde77ad8bf31153ae087a9e0e3f74e..1ffc8fd762db6b5127994c382f47e0f6ff51cfb1 100644 --- a/sql/compat56.cc +++ b/sql/compat56.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "my_global.h" #include "compat56.h" diff --git a/sql/compat56.h b/sql/compat56.h index bb5e2670f7d3d78f38020b79751485d47bb4f509..7f72c26c03afb2203e67b4b1b9aaa43c70d4213c 100644 --- a/sql/compat56.h +++ b/sql/compat56.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** MySQL56 routines and macros **/ diff --git a/sql/contributors.h b/sql/contributors.h index 69f8fa6bd4c947b4e7c0dbf6c8e6615e9358a850..34f06087c8cf1497980e3b1151b231cf43f4c0c8 100644 --- a/sql/contributors.h +++ b/sql/contributors.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Structure of the name list */ diff --git a/sql/create_options.cc b/sql/create_options.cc index f6bf391e294a1c2e2a97a1318c5cb513d7f50fcc..80f8f6ad7d44dbbac89d56a48c74bc0cdb3020b8 100644 --- a/sql/create_options.cc +++ b/sql/create_options.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/create_options.h b/sql/create_options.h index 191ec88750afc040dcf6b4f9ef05b69f6b146d74..6a8d1acd8fe2da117110fa02785e01d834cfd639 100644 --- a/sql/create_options.h +++ b/sql/create_options.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/custom_conf.h b/sql/custom_conf.h index 62fdb619c272795f3de819e0d7cd48f1d00b1372..5847b939ca7b452e0cb2186598cbe976330aa377 100644 --- a/sql/custom_conf.h +++ b/sql/custom_conf.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef __MYSQL_CUSTOM_BUILD_CONFIG__ #define __MYSQL_CUSTOM_BUILD_CONFIG__ diff --git a/sql/datadict.cc b/sql/datadict.cc index f01d61f531be839becd3ce5ce3b389b58bcae673..b3d44c68f53cadd57421a88163a779cdc081b232 100644 --- a/sql/datadict.cc +++ b/sql/datadict.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "datadict.h" diff --git a/sql/datadict.h b/sql/datadict.h index 9b180a882f9b1cc3314a064db3cd040faf0e4931..a256c89ba8456829d52416de46b63fc477c91bae 100644 --- a/sql/datadict.h +++ b/sql/datadict.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "handler.h" diff --git a/sql/debug_sync.cc b/sql/debug_sync.cc index 3dfbcdbcf813f65676d66f641f44aefcf730128f..105d868a17521805669e6af281c7c079df63665c 100644 --- a/sql/debug_sync.cc +++ b/sql/debug_sync.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* see include/mysql/service_debug_sync.h for debug sync documentation */ diff --git a/sql/debug_sync.h b/sql/debug_sync.h index 25b379e5892a3ab04db4afc0e2367ece3153ade7..859675465bb8fbf93cd5504aac80e2f47f403f5b 100644 --- a/sql/debug_sync.h +++ b/sql/debug_sync.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/derror.cc b/sql/derror.cc index 5f0bc455caf81e89f2fed74110abd9baa446529d..b976fff9d4f7fc137ae53ba537ab0965eba02b6a 100644 --- a/sql/derror.cc +++ b/sql/derror.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -146,7 +146,7 @@ static bool check_error_mesg(const char *file_name, const char **errmsg) bool read_texts(const char *file_name, const char *language, const char ***point, uint error_messages) { - register uint i; + uint i; uint count,funktpos; size_t offset, length; File file; diff --git a/sql/derror.h b/sql/derror.h index b2f6331e0484cbf2a63ff689b1a6bf8a71b22f82..e7b913bd0be3df818e4bda1d329cff8f663e91a8 100644 --- a/sql/derror.h +++ b/sql/derror.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef DERROR_INCLUDED #define DERROR_INCLUDED diff --git a/sql/des_key_file.cc b/sql/des_key_file.cc index ede2e9fa9d48214cfa69945d2bd733d2e9e83af2..f942feb58236903185042722579d05d8690483ae 100644 --- a/sql/des_key_file.cc +++ b/sql/des_key_file.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include // HAVE_* #include "sql_priv.h" diff --git a/sql/des_key_file.h b/sql/des_key_file.h index 024a1715d47a9d7aa28e68986c31a2b6c8cd28f3..847cd767b4b48b559c01551c8e943bb2c6831182 100644 --- a/sql/des_key_file.h +++ b/sql/des_key_file.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef DES_KEY_FILE_INCLUDED #define DES_KEY_FILE_INCLUDED diff --git a/sql/discover.cc b/sql/discover.cc index d8bf6ca79c5984a9bb11f958dd50c15a0e63e60f..0d7767097a4fade9750ea39718f009cbd702600e 100644 --- a/sql/discover.cc +++ b/sql/discover.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/discover.h b/sql/discover.h index e150810723534aa7e681e29d6091b204d471aba7..a3d61c4f15582388ddbe59f8cbb5eee82c26d97a 100644 --- a/sql/discover.h +++ b/sql/discover.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef DISCOVER_INCLUDED #define DISCOVER_INCLUDED diff --git a/sql/encryption.cc b/sql/encryption.cc index e5b54633066a3dd7860fad2f3bac127b3f556b88..ad23c80b8ab2e3898ff4df957fe4faac91a13e0f 100644 --- a/sql/encryption.cc +++ b/sql/encryption.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql/event_data_objects.cc b/sql/event_data_objects.cc index 6ef9fa9f8efe57d9b895762034be70fb3eb7c250..759bca08eead08e1705fbf582e8301ad2d252dce 100644 --- a/sql/event_data_objects.cc +++ b/sql/event_data_objects.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #define MYSQL_LEX 1 #include /* NO_EMBEDDED_ACCESS_CHECKS */ diff --git a/sql/event_data_objects.h b/sql/event_data_objects.h index 8113fcb0e2ee6a7284ab55f9e47fd544e1c51c67..fd7f2f2e17f7e83d7b82456a4d184705f91db93f 100644 --- a/sql/event_data_objects.h +++ b/sql/event_data_objects.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @addtogroup Event_Scheduler diff --git a/sql/event_db_repository.cc b/sql/event_db_repository.cc index 3afd2659a29fe842e8e94da520b6deb5da438fb1..2928a059a0e1b75a22ec57ba5914c5b8a39337fd 100644 --- a/sql/event_db_repository.cc +++ b/sql/event_db_repository.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/event_db_repository.h b/sql/event_db_repository.h index e7b52bacc2a572682bb6ccac8220666e2808ada5..d6834d5aec6ecaabe1dc1229d472533f362529c8 100644 --- a/sql/event_db_repository.h +++ b/sql/event_db_repository.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/event_parse_data.cc b/sql/event_parse_data.cc index 6c123c8e641ce91f1ccb5a23e2cc40d4c8098dba..3dbcaba8bb07935221e5b4e376ce035edabd272f 100644 --- a/sql/event_parse_data.cc +++ b/sql/event_parse_data.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/event_parse_data.h b/sql/event_parse_data.h index 3ca7fcaab728de13826644468f2579957d914267..03f6e8c3d14fed1d4964eeed8e0d6ddcea583e94 100644 --- a/sql/event_parse_data.h +++ b/sql/event_parse_data.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _EVENT_PARSE_DATA_H_ #define _EVENT_PARSE_DATA_H_ diff --git a/sql/event_queue.cc b/sql/event_queue.cc index ae8ba2587171715789a8c18d63958f99eac1d477..3a52da0241da478cafcba5580cd82ac616a704c1 100644 --- a/sql/event_queue.cc +++ b/sql/event_queue.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/event_queue.h b/sql/event_queue.h index fdd5937ee17e6d001348f5367d5262331803361e..2f1e9a59c9d0c66557cc22af2dba3d2a354ca823 100644 --- a/sql/event_queue.h +++ b/sql/event_queue.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/event_scheduler.cc b/sql/event_scheduler.cc index e02b618a80a3674425160daa6ad849d841d1f2f3..8c49e6f274646547fe1879d4d3fbfaca0dc06b8f 100644 --- a/sql/event_scheduler.cc +++ b/sql/event_scheduler.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/event_scheduler.h b/sql/event_scheduler.h index 6ec7dccefb9205d451b921da74748cfa57a45cc5..59ac923cf6d5d8b0d20200c6cc0834e7649f7f83 100644 --- a/sql/event_scheduler.h +++ b/sql/event_scheduler.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @addtogroup Event_Scheduler diff --git a/sql/events.cc b/sql/events.cc index 17417997632f236d1c686c47d89d98f66fb4916a..6f2f17a50179035105821f9fc6c757049662bdb9 100644 --- a/sql/events.cc +++ b/sql/events.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/events.h b/sql/events.h index 368aa9a05d5c04efdd33d6307e795c060bda78a6..7268c569b03882508b21284b8c0b9ec6c2d69637 100644 --- a/sql/events.h +++ b/sql/events.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @defgroup Event_Scheduler Event Scheduler diff --git a/sql/field.cc b/sql/field.cc index a4308a378b3d3998cf5e0d94a274c47896483724..291e2134dcfb80a66734ef09fa81dd1c88fcacfb 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -2725,7 +2725,7 @@ int Field_decimal::store(double nr) return 1; } - reg4 uint i; + uint i; size_t length; uchar fyllchar,*to; char buff[DOUBLE_TO_STRING_CONVERSION_BUFFER_SIZE]; diff --git a/sql/field.h b/sql/field.h index 2243f8499fec67b0e5b7176fd9d6f79d0847e513..60849ea8099e77c5e253f40e5576b2684fdac63f 100644 --- a/sql/field.h +++ b/sql/field.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Because of the function make_new_field() all field classes that have static @@ -1406,7 +1406,7 @@ class Field: public Value_source // Exactly the same rules with REF access return can_optimize_keypart_ref(cond, item); } - friend int cre_myisam(char * name, register TABLE *form, uint options, + friend int cre_myisam(char * name, TABLE *form, uint options, ulonglong auto_increment_value); friend class Copy_field; friend class Item_avg_field; diff --git a/sql/field_conv.cc b/sql/field_conv.cc index cdef8e8d746ccfcd66cb74be5d88f7bb4802977c..8705e5e1e960ca722382d1810c7e0014e9581254 100644 --- a/sql/field_conv.cc +++ b/sql/field_conv.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/filesort.cc b/sql/filesort.cc index 7f7407fc2dc6d9214f6429a0bd2409aacf01cb1e..4f195f680594e5a0011338afe88a09f71ff23767 100644 --- a/sql/filesort.cc +++ b/sql/filesort.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -967,12 +967,12 @@ static inline void store_length(uchar *to, uint length, uint pack_length) /** Make a sort-key from record. */ -static void make_sortkey(register Sort_param *param, - register uchar *to, uchar *ref_pos) +static void make_sortkey(Sort_param *param, + uchar *to, uchar *ref_pos) { - reg3 Field *field; - reg1 SORT_FIELD *sort_field; - reg5 uint length; + Field *field; + SORT_FIELD *sort_field; + uint length; for (sort_field=param->local_sortorder ; sort_field != param->end ; @@ -1214,7 +1214,7 @@ static void make_sortkey(register Sort_param *param, static void register_used_fields(Sort_param *param) { - reg1 SORT_FIELD *sort_field; + SORT_FIELD *sort_field; TABLE *table=param->sort_form; MY_BITMAP *bitmap= table->read_set; @@ -1425,7 +1425,7 @@ bool check_if_pq_applicable(Sort_param *param, int merge_many_buff(Sort_param *param, uchar *sort_buffer, BUFFPEK *buffpek, uint *maxbuffer, IO_CACHE *t_file) { - register uint i; + uint i; IO_CACHE t_file2,*from_file,*to_file,*temp; BUFFPEK *lastbuff; DBUG_ENTER("merge_many_buff"); @@ -1483,7 +1483,7 @@ int merge_many_buff(Sort_param *param, uchar *sort_buffer, uint read_to_buffer(IO_CACHE *fromfile, BUFFPEK *buffpek, uint rec_length) { - register uint count; + uint count; uint length; if ((count=(uint) MY_MIN((ha_rows) buffpek->max_keys,buffpek->count))) @@ -1787,7 +1787,7 @@ int merge_buffers(Sort_param *param, IO_CACHE *from_file, } else { - register uchar *end; + uchar *end; src= buffpek->key+offset; for (end= src+buffpek->mem_count*rec_length ; src != end ; diff --git a/sql/filesort.h b/sql/filesort.h index 4c95f1202b230de2e032e29fbb2147a9b0a0681e..2c2b9e30cd0540d92c08f0401e414b8ff9668f6a 100644 --- a/sql/filesort.h +++ b/sql/filesort.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef FILESORT_INCLUDED #define FILESORT_INCLUDED diff --git a/sql/filesort_utils.cc b/sql/filesort_utils.cc index 1e0cf09614589f60bb13326d1403b0710946ac12..f1a164dd9fe68c1374a65f6118dd675f69302f61 100644 --- a/sql/filesort_utils.cc +++ b/sql/filesort_utils.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "filesort_utils.h" #include "sql_const.h" diff --git a/sql/filesort_utils.h b/sql/filesort_utils.h index 00fa6f2566bb58f469a4ab94cb6f301ae41724fe..60de4199834327349343c19a6d82f35ad0d210cf 100644 --- a/sql/filesort_utils.h +++ b/sql/filesort_utils.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef FILESORT_UTILS_INCLUDED #define FILESORT_UTILS_INCLUDED diff --git a/sql/gcalc_slicescan.cc b/sql/gcalc_slicescan.cc index 644ab4b87105fcc50af4642b8525be2238c03472..179807326f9b886105802592f4b665bcd9df80c8 100644 --- a/sql/gcalc_slicescan.cc +++ b/sql/gcalc_slicescan.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/sql/gcalc_slicescan.h b/sql/gcalc_slicescan.h index b9516fc8d8cce6f899164e37c201e066a6b8750a..7b7038812b2bffa5ad622adfaafc557f095986ce 100644 --- a/sql/gcalc_slicescan.h +++ b/sql/gcalc_slicescan.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef GCALC_SLICESCAN_INCLUDED diff --git a/sql/gcalc_tools.cc b/sql/gcalc_tools.cc index 71118ae1c9f7d1ee3a87e03c6296541de406434e..acf51839e7276cf00d14f98fe8000309a9ebe291 100644 --- a/sql/gcalc_tools.cc +++ b/sql/gcalc_tools.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include diff --git a/sql/gcalc_tools.h b/sql/gcalc_tools.h index 8bda3c144a6885edc3d590032daa79087a7a43cb..cc908812d3ef14a7f337258f0bceeb21bcb81001 100644 --- a/sql/gcalc_tools.h +++ b/sql/gcalc_tools.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef GCALC_TOOLS_INCLUDED diff --git a/sql/gen_lex_hash.cc b/sql/gen_lex_hash.cc index 3a3273d279b8723aa4b95cdce762c6957a673524..76c747cebb84c669d8f27491972b46211ec65565 100644 --- a/sql/gen_lex_hash.cc +++ b/sql/gen_lex_hash.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -403,8 +403,8 @@ int main(int argc,char **argv) static SYMBOL *get_hash_symbol(const char *s,\n\ unsigned int len,bool function)\n\ {\n\ - register uchar *hash_map;\n\ - register const char *cur_str= s;\n\ + uchar *hash_map;\n\ + const char *cur_str= s;\n\ \n\ if (len == 0) {\n\ DBUG_PRINT(\"warning\", (\"get_hash_symbol() received a request for a zero-length symbol, which is probably a mistake.\"));\ @@ -416,25 +416,25 @@ static SYMBOL *get_hash_symbol(const char *s,\n\ if (function){\n\ if (len>sql_functions_max_len) return 0;\n\ hash_map= sql_functions_map;\n\ - register uint32 cur_struct= uint4korr(hash_map+((len-1)*4));\n\ + uint32 cur_struct= uint4korr(hash_map+((len-1)*4));\n\ \n\ for (;;){\n\ - register uchar first_char= (uchar)cur_struct;\n\ + uchar first_char= (uchar)cur_struct;\n\ \n\ if (first_char == 0)\n\ {\n\ - register int16 ires= (int16)(cur_struct>>16);\n\ + int16 ires= (int16)(cur_struct>>16);\n\ if (ires==array_elements(symbols)) return 0;\n\ - register SYMBOL *res;\n\ + SYMBOL *res;\n\ if (ires>=0) \n\ res= symbols+ires;\n\ else\n\ res= sql_functions-ires-1;\n\ - register uint count= (uint) (cur_str - s);\n\ + uint count= (uint) (cur_str - s);\n\ return lex_casecmp(cur_str,res->name+count,len-count) ? 0 : res;\n\ }\n\ \n\ - register uchar cur_char= (uchar)to_upper_lex[(uchar)*cur_str];\n\ + uchar cur_char= (uchar)to_upper_lex[(uchar)*cur_str];\n\ if (cur_char>=8;\n\ if (cur_char>(uchar)cur_struct) return 0;\n\ @@ -450,20 +450,20 @@ static SYMBOL *get_hash_symbol(const char *s,\n\ }else{\n\ if (len>symbols_max_len) return 0;\n\ hash_map= symbols_map;\n\ - register uint32 cur_struct= uint4korr(hash_map+((len-1)*4));\n\ + uint32 cur_struct= uint4korr(hash_map+((len-1)*4));\n\ \n\ for (;;){\n\ - register uchar first_char= (uchar)cur_struct;\n\ + uchar first_char= (uchar)cur_struct;\n\ \n\ if (first_char==0){\n\ - register int16 ires= (int16)(cur_struct>>16);\n\ + int16 ires= (int16)(cur_struct>>16);\n\ if (ires==array_elements(symbols)) return 0;\n\ - register SYMBOL *res= symbols+ires;\n\ - register uint count= (uint) (cur_str - s);\n\ + SYMBOL *res= symbols+ires;\n\ + uint count= (uint) (cur_str - s);\n\ return lex_casecmp(cur_str,res->name+count,len-count)!=0 ? 0 : res;\n\ }\n\ \n\ - register uchar cur_char= (uchar)to_upper_lex[(uchar)*cur_str];\n\ + uchar cur_char= (uchar)to_upper_lex[(uchar)*cur_str];\n\ if (cur_char>=8;\n\ if (cur_char>(uchar)cur_struct) return 0;\n\ diff --git a/sql/gen_lex_token.cc b/sql/gen_lex_token.cc index eefe91638191ae676a14e90d733c66046a8fb7f4..7ba25f3ec8b60e7cdb7dbe457a20580090a6bd4a 100644 --- a/sql/gen_lex_token.cc +++ b/sql/gen_lex_token.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql/group_by_handler.cc b/sql/group_by_handler.cc index c1b5cfbe254ffc0d77e8b971f419e8a6f30021d7..197ada0d4c37d7a34b16ec06f68c6dc4f8b4250a 100644 --- a/sql/group_by_handler.cc +++ b/sql/group_by_handler.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file implements the group_by_handler code. This interface diff --git a/sql/group_by_handler.h b/sql/group_by_handler.h index d3f48a15c240a5633acd6dd2b064cb8a904553bc..108ebc989d94c8d7eb893956534c5b14e116a26f 100644 --- a/sql/group_by_handler.h +++ b/sql/group_by_handler.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file implements the group_by_handler interface. This interface diff --git a/sql/gstream.cc b/sql/gstream.cc index adb46083621187af9b41acd09519922f8e7deab5..8a3e35ac0c2271cc36d113d38206700d80847ce8 100644 --- a/sql/gstream.cc +++ b/sql/gstream.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to read and parse geometrical data. diff --git a/sql/gstream.h b/sql/gstream.h index f10b7e9b8304f22caf63960fb238d5590aa8972c..687627aa5f23a014513da78246e7f5143c5c2295 100644 --- a/sql/gstream.h +++ b/sql/gstream.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "my_global.h" /* NULL, NullS */ diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index 80bf7ef17fe1e91a7695ed68920b249eb20505de..4169e2b30d838d58efd3b26996e9ad16b0ad8ee5 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/sql/ha_partition.h b/sql/ha_partition.h index 23d0233735938585ba20cbadb33ae719a780a62f..c2c4ffcda406c53eae18bfab00ffe086c35797dc 100644 --- a/sql/ha_partition.h +++ b/sql/ha_partition.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_partition.h" /* part_id_range, partition_element */ #include "queues.h" /* QUEUE */ diff --git a/sql/handler.cc b/sql/handler.cc index 87331a41db60a1fc5ce059ff5ece832ed56dd7a2..79f23c0d200cf211fc9f667d8f9a8f2c62a11b5f 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -11,8 +11,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file handler.cc @@ -211,6 +211,40 @@ plugin_ref ha_resolve_by_name(THD *thd, const LEX_STRING *name, bool tmp_table) } +bool +Storage_engine_name::resolve_storage_engine_with_error(THD *thd, + handlerton **ha, + bool tmp_table) +{ +#if MYSQL_VERSION_ID < 100300 + /* + Please remove tmp_name when merging to 10.3 and pass m_storage_engine_name + directly to ha_resolve_by_name(). + */ + LEX_STRING tmp_name; + tmp_name.str= const_cast(m_storage_engine_name.str); + tmp_name.length= m_storage_engine_name.length; +#endif + if (plugin_ref plugin= ha_resolve_by_name(thd, &tmp_name, tmp_table)) + { + *ha= plugin_hton(plugin); + return false; + } + + *ha= NULL; + if (thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION) + { + my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), m_storage_engine_name.str); + return true; + } + push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN, + ER_UNKNOWN_STORAGE_ENGINE, + ER_THD(thd, ER_UNKNOWN_STORAGE_ENGINE), + m_storage_engine_name.str); + return false; +} + + plugin_ref ha_lock_engine(THD *thd, const handlerton *hton) { if (hton) @@ -2800,7 +2834,7 @@ int handler::ha_rnd_init_with_error(bool scan) */ int handler::read_first_row(uchar * buf, uint primary_key) { - register int error; + int error; DBUG_ENTER("handler::read_first_row"); /* diff --git a/sql/handler.h b/sql/handler.h index 99dfefd4c5ac4eef90ec2301acae18a21b44d778..057a0e841257955139dec0d9d2f2221319aa8374 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Definitions for parameters to do with handler-routines */ diff --git a/sql/hash_filo.cc b/sql/hash_filo.cc index fc89bb83a9d816295bb32cd1e5a15d4dc9e99fe6..967ef641baba6d50f2b05b4b5da59484eab3fa8e 100644 --- a/sql/hash_filo.cc +++ b/sql/hash_filo.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/sql/hash_filo.h b/sql/hash_filo.h index 4c8c7575efc1404db60a7386951c015d3101e983..d815c428ac65330ad69d166dc8fc36f5b0670d11 100644 --- a/sql/hash_filo.h +++ b/sql/hash_filo.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* diff --git a/sql/hostname.cc b/sql/hostname.cc index 39e4b34d615b18990cdf62ef8505e3d0cd07e151..a256da471d38e009db11fa800914f79ad748e76e 100644 --- a/sql/hostname.cc +++ b/sql/hostname.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/hostname.h b/sql/hostname.h index 81a1d0de88d5be683cbeedb5b56446b27e3962c4..a00f2b0771ba10b4b76cf47f257cc05f2cdb36bf 100644 --- a/sql/hostname.h +++ b/sql/hostname.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef HOSTNAME_INCLUDED #define HOSTNAME_INCLUDED diff --git a/sql/init.cc b/sql/init.cc index 8001e60b65ec03081d42a86c35bd83d5503576cd..5f452439f23bf2ae96a07e86e1b9d844748074d2 100644 --- a/sql/init.cc +++ b/sql/init.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/init.h b/sql/init.h index 88cd8e6e178efa34dfa13cb387fdb01a3593bc6b..d0518066f03f7fb3033ec05ee840b0eb3600cc05 100644 --- a/sql/init.h +++ b/sql/init.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef INIT_INCLUDED #define INIT_INCLUDED diff --git a/sql/innodb_priv.h b/sql/innodb_priv.h index 27aa9ac8645a010c47882a97ca9c88b1f49a1dc0..e01b9f89d88e78dafc28d1047ba6842bc283d0f4 100644 --- a/sql/innodb_priv.h +++ b/sql/innodb_priv.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef INNODB_PRIV_INCLUDED #define INNODB_PRIV_INCLUDED diff --git a/sql/item.cc b/sql/item.cc index 3bfbdb75c4093ad63917aab8c91a6e0da953d58f..de7e6ae65ff58d2c49f7ccf915b09561f04528c7 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_IMPLEMENTATION @@ -9736,11 +9736,14 @@ table_map Item_direct_view_ref::used_tables() const table_map Item_direct_view_ref::not_null_tables() const { - return get_depended_from() ? - 0 : - ((view->is_merged_derived() || view->merged || !view->table) ? - (*ref)->not_null_tables() : - view->table->map); + if (get_depended_from()) + return 0; + if (!( view->merged || !view->table)) + return view->table->map; + TABLE *tab= get_null_ref_table(); + if (tab == NO_NULL_TABLE || (*ref)->used_tables()) + return (*ref)->not_null_tables(); + return get_null_ref_table()->map; } /* diff --git a/sql/item.h b/sql/item.h index 5c432887ed9e079856edbce8d2c6ee92c71c634d..edf9f748d77d89128cbd154d6cef658380bd0e77 100644 --- a/sql/item.h +++ b/sql/item.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_INTERFACE @@ -4374,6 +4374,7 @@ class Item_direct_view_ref :public Item_direct_ref void update_used_tables(); table_map not_null_tables() const; bool const_item() const { return used_tables() == 0; } + TABLE *get_null_ref_table() const { return null_ref_table; } bool walk(Item_processor processor, bool walk_subquery, uchar *arg) { return (*ref)->walk(processor, walk_subquery, arg) || diff --git a/sql/item_buff.cc b/sql/item_buff.cc index d1134525f7ba2fa1986033f926266fa443ed9957..22e0680336f347b84f1bd0b406e9285f7e8336aa 100644 --- a/sql/item_buff.cc +++ b/sql/item_buff.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/item_cmpfunc.cc b/sql/item_cmpfunc.cc index 4e572b95ea3fdcf21dc93f8bcd92c364d38b852a..2e029f307fc707e00c3b8e428de5e7d5a955c3bc 100644 --- a/sql/item_cmpfunc.cc +++ b/sql/item_cmpfunc.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -5901,8 +5901,8 @@ void Item_func_like::turboBM_compute_bad_character_shifts() bool Item_func_like::turboBM_matches(const char* text, int text_len) const { - register int bcShift; - register int turboShift; + int bcShift; + int turboShift; int shift = pattern_len; int j = 0; int u = 0; @@ -5916,7 +5916,7 @@ bool Item_func_like::turboBM_matches(const char* text, int text_len) const { while (j <= tlmpl) { - register int i= plm1; + int i= plm1; while (i >= 0 && pattern[i] == text[i + j]) { i--; @@ -5926,7 +5926,7 @@ bool Item_func_like::turboBM_matches(const char* text, int text_len) const if (i < 0) return 1; - register const int v = plm1 - i; + const int v = plm1 - i; turboShift = u - v; bcShift = bmBc[(uint) (uchar) text[i + j]] - plm1 + i; shift = MY_MAX(turboShift, bcShift); @@ -5947,7 +5947,7 @@ bool Item_func_like::turboBM_matches(const char* text, int text_len) const { while (j <= tlmpl) { - register int i = plm1; + int i = plm1; while (i >= 0 && likeconv(cs,pattern[i]) == likeconv(cs,text[i + j])) { i--; @@ -5957,7 +5957,7 @@ bool Item_func_like::turboBM_matches(const char* text, int text_len) const if (i < 0) return 1; - register const int v = plm1 - i; + const int v = plm1 - i; turboShift = u - v; bcShift = bmBc[(uint) likeconv(cs, text[i + j])] - plm1 + i; shift = MY_MAX(turboShift, bcShift); diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h index eb1da504e7ce937184f975b779f86e265c3c74e0..e47b88bdcbb0e15f362e4d27f137ca4e9087d1a2 100644 --- a/sql/item_cmpfunc.h +++ b/sql/item_cmpfunc.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* compare and test functions */ @@ -257,6 +257,8 @@ class Item_func_isnottrue : public Item_func_truth Item_func_truth(thd, a, true, false) {} ~Item_func_isnottrue() {} virtual const char* func_name() const { return "isnottrue"; } + bool eval_not_null_tables(uchar *opt_arg) + { not_null_tables_cache= 0; return false; } }; @@ -284,6 +286,8 @@ class Item_func_isnotfalse : public Item_func_truth Item_func_truth(thd, a, false, false) {} ~Item_func_isnotfalse() {} virtual const char* func_name() const { return "isnotfalse"; } + bool eval_not_null_tables(uchar *opt_arg) + { not_null_tables_cache= 0; return false; } }; diff --git a/sql/item_create.cc b/sql/item_create.cc index 82f6bbd3173b3cbff11402de58840dac76a366b7..aa9f1ba8a74f6cb577f1f5e06bd69f83995d5d9f 100644 --- a/sql/item_create.cc +++ b/sql/item_create.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/item_create.h b/sql/item_create.h index 05fe48f656aa08472a5ee9df06d87ec039526e49..97dc594b11c6d66321dfac6cb054a452ad54dc5f 100644 --- a/sql/item_create.h +++ b/sql/item_create.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to create an item. Used by sql/sql_yacc.yy */ diff --git a/sql/item_func.cc b/sql/item_func.cc index 86111374175cdc726e0bd584a0c1fc260ec5fc30..8e8020e28f75c71624ce4a4feb8c52bddccadf66 100644 --- a/sql/item_func.cc +++ b/sql/item_func.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -218,6 +218,7 @@ Item_func::fix_fields(THD *thd, Item **ref) with_param= with_param || item->with_param; with_field= with_field || item->with_field; used_tables_and_const_cache_join(item); + not_null_tables_cache|= item->not_null_tables(); with_subselect|= item->has_subquery(); } } @@ -3282,8 +3283,8 @@ longlong Item_func_ord::val_int() #ifdef USE_MB if (use_mb(res->charset())) { - register const char *str=res->ptr(); - register uint32 n=0, l=my_ismbchar(res->charset(),str,str+res->length()); + const char *str=res->ptr(); + uint32 n=0, l=my_ismbchar(res->charset(),str,str+res->length()); if (!l) return (longlong)((uchar) *str); while (l--) diff --git a/sql/item_func.h b/sql/item_func.h index 36a2f94b31d4b4263751be834a6f2af77069d386..a05ae0c5aaa2203814939a65d423440aa52951d0 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Function items used by mysql */ diff --git a/sql/item_geofunc.cc b/sql/item_geofunc.cc index 51a4636df1f59751de9a96babea672e7239cf3c2..1ace20230ee6c0e81d2b022883514dea367e8b2b 100644 --- a/sql/item_geofunc.cc +++ b/sql/item_geofunc.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/item_geofunc.h b/sql/item_geofunc.h index 251cae1121ec86ebe72195f7a16f34af13a13518..a49a92f2e71e936066d770cc95684f9afeb6d3f0 100644 --- a/sql/item_geofunc.h +++ b/sql/item_geofunc.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file defines all spatial functions */ diff --git a/sql/item_inetfunc.cc b/sql/item_inetfunc.cc index 4c4dfa4497b2d3b1bc85db75062cd279e7221860..4cf43e075a5e29596bd3f5d7084a8db2ed840409 100644 --- a/sql/item_inetfunc.cc +++ b/sql/item_inetfunc.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "item_inetfunc.h" diff --git a/sql/item_inetfunc.h b/sql/item_inetfunc.h index eaafd005f911bb0bf209a4d81151e077a7e6d027..b3213030cbc84adecfacc52ae1aa27bdf54da35c 100644 --- a/sql/item_inetfunc.h +++ b/sql/item_inetfunc.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "item.h" diff --git a/sql/item_row.cc b/sql/item_row.cc index 8c6edacad7f50b639bfaec90c13787e57984d249..08d856b9a9a9e5b70233c71bc90964fa3630e42d 100644 --- a/sql/item_row.cc +++ b/sql/item_row.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/item_row.h b/sql/item_row.h index 5e8071ec49553f04328ab542f2bbdb4b4ff8bd1b..4cc8dfd3ef51ef37a8774e506fa62ebbbc33e58e 100644 --- a/sql/item_row.h +++ b/sql/item_row.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** Row items used for comparing rows and IN operations on rows: diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc index de13999bab82818247c6854ed2c089ff3f2d5b7d..f3e19a19b3ced5287ac8078cfa758dc10215dcbf 100644 --- a/sql/item_strfunc.cc +++ b/sql/item_strfunc.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -1039,7 +1039,7 @@ String *Item_func_reverse::val_str(String *str) #ifdef USE_MB if (use_mb(res->charset())) { - register uint32 l; + uint32 l; while (ptr < end) { if ((l= my_ismbchar(res->charset(),ptr,end))) @@ -1088,7 +1088,7 @@ String *Item_func_replace::val_str(String *str) bool alloced=0; #ifdef USE_MB const char *ptr,*end,*strend,*search,*search_end; - register uint32 l; + uint32 l; bool binary_cmp; #endif THD *thd= 0; @@ -1141,7 +1141,7 @@ String *Item_func_replace::val_str(String *str) { if (*ptr == *search) { - register char *i,*j; + char *i,*j; i=(char*) ptr+1; j=(char*) search+1; while (j != search_end) if (*i++ != *j++) goto skip; @@ -1735,14 +1735,14 @@ String *Item_func_substr_index::val_str(String *str) const char *search= delimiter->ptr(); const char *search_end= search+delimiter_length; int32 n=0,c=count,pass; - register uint32 l; + uint32 l; for (pass=(count>0);pass<2;++pass) { while (ptr < end) { if (*ptr == *search) { - register char *i,*j; + char *i,*j; i=(char*) ptr+1; j=(char*) search+1; while (j != search_end) if (*i++ != *j++) goto skip; @@ -1926,7 +1926,7 @@ String *Item_func_rtrim::val_str(String *str) end= ptr+res->length(); #ifdef USE_MB char *p=ptr; - register uint32 l; + uint32 l; #endif if (remove_length == 1) { @@ -2011,7 +2011,7 @@ String *Item_func_trim::val_str(String *str) if (use_mb(collation.collation)) { char *p=ptr; - register uint32 l; + uint32 l; loop: while (ptr + remove_length < end) { diff --git a/sql/item_strfunc.h b/sql/item_strfunc.h index ace246bc271fce7e38f5d50ee37df06257b2f3d7..9ea9ff970161474a4941d2ee33a35caff8e39e1e 100644 --- a/sql/item_strfunc.h +++ b/sql/item_strfunc.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file defines all string functions */ diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc index b275f749f250c5983ea8b7eb8a5f26b9a3ea4bc4..e3cb82df1709fe5b46b22f5257f3eefa1f39ad01 100644 --- a/sql/item_subselect.cc +++ b/sql/item_subselect.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -1500,13 +1500,20 @@ void Item_exists_subselect::fix_length_and_dec() { DBUG_ENTER("Item_exists_subselect::fix_length_and_dec"); init_length_and_dec(); - /* - We need only 1 row to determine existence (i.e. any EXISTS that is not - an IN always requires LIMIT 1) - */ - thd->change_item_tree(&unit->global_parameters()->select_limit, - new (thd->mem_root) Item_int(thd, (int32) 1)); - DBUG_PRINT("info", ("Set limit to 1")); + // If limit is not set or it is constant more than 1 + if (!unit->global_parameters()->select_limit || + (unit->global_parameters()->select_limit->basic_const_item() && + unit->global_parameters()->select_limit->val_int() > 1)) + { + /* + We need only 1 row to determine existence (i.e. any EXISTS that is not + an IN always requires LIMIT 1) + */ + thd->change_item_tree(&unit->global_parameters()->select_limit, + new (thd->mem_root) Item_int(thd, (int32) 1)); + unit->global_parameters()->explicit_limit= 1; // we set the limit + DBUG_PRINT("info", ("Set limit to 1")); + } DBUG_VOID_RETURN; } diff --git a/sql/item_subselect.h b/sql/item_subselect.h index 424ea6f051203cce0498388631d281451867b18a..3be1013e4e30b467505ef726f4a90e6723932bdb 100644 --- a/sql/item_subselect.h +++ b/sql/item_subselect.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* subselect Item */ diff --git a/sql/item_sum.cc b/sql/item_sum.cc index 71f07706d229ff908b9904495d88efa7d859caff..f5bcd0828243a3379bbee253726323c6e9a7a5e3 100644 --- a/sql/item_sum.cc +++ b/sql/item_sum.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -2549,11 +2549,14 @@ Item_sum_hybrid::min_max_update_str_field() if (!args[0]->null_value) { - result_field->val_str(&cmp->value2); - - if (result_field->is_null() || - (cmp_sign * sortcmp(res_str,&cmp->value2,collation.collation)) < 0) + if (result_field->is_null()) result_field->store(res_str->ptr(),res_str->length(),res_str->charset()); + else + { + result_field->val_str(&cmp->value2); + if ((cmp_sign * sortcmp(res_str,&cmp->value2,collation.collation)) < 0) + result_field->store(res_str->ptr(),res_str->length(),res_str->charset()); + } result_field->set_notnull(); } } diff --git a/sql/item_sum.h b/sql/item_sum.h index 001d1d13fe470342884a12e6e961a636429b0a85..cbca701e5b067ba9cd0b503620bedcef0f66986d 100644 --- a/sql/item_sum.h +++ b/sql/item_sum.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* classes for sum functions */ diff --git a/sql/item_timefunc.cc b/sql/item_timefunc.cc index e8440803295203ac5d6f868a61eb44fbb46206a7..93889f75f833d5373cc8dab145e36e43e20495e3 100644 --- a/sql/item_timefunc.cc +++ b/sql/item_timefunc.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/item_timefunc.h b/sql/item_timefunc.h index 927ce12f079b250f73faf588f427a1dbf87f18af..75d19b69ea5141204ae4ef85922fef70ebdd1312 100644 --- a/sql/item_timefunc.h +++ b/sql/item_timefunc.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Function items used by mysql */ diff --git a/sql/item_xmlfunc.cc b/sql/item_xmlfunc.cc index c9e6df52de987857626be6eab6866b5ac50a4ad6..d33cd30a928b10009518cfb3eee6d267f5fae151 100644 --- a/sql/item_xmlfunc.cc +++ b/sql/item_xmlfunc.cc @@ -1,5 +1,5 @@ -/* Copyright (c) 2005, 2016, Oracle and/or its affiliates. - Copyright (c) 2009, 2017, MariaDB +/* Copyright (c) 2005, 2019, Oracle and/or its affiliates. + Copyright (c) 2009, 2019, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -12,9 +12,9 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ -#ifdef __GNUC__ +#ifdef USE_PRAGMA_IMPLEMENTATION #pragma implementation #endif diff --git a/sql/item_xmlfunc.h b/sql/item_xmlfunc.h index 92a8f7578224096c75573aec5c63605ab2fb8123..ea1f10d8c120350229fdb19aa32b416107a931e4 100644 --- a/sql/item_xmlfunc.h +++ b/sql/item_xmlfunc.h @@ -1,8 +1,7 @@ #ifndef ITEM_XMLFUNC_INCLUDED #define ITEM_XMLFUNC_INCLUDED -/* Copyright (c) 2000-2007 MySQL AB, 2009 Sun Microsystems, Inc. - Use is subject to license terms. +/* Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -15,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file defines all XML functions */ diff --git a/sql/key.cc b/sql/key.cc index 19b96522b2c7a13c934c9079886ffa6aa1f12280..9c59bdf020a6a4b96e3c4b70749d2d1dd48cc834 100644 --- a/sql/key.cc +++ b/sql/key.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Functions to handle keys and fields in forms */ @@ -54,8 +54,8 @@ using std::max; int find_ref_key(KEY *key, uint key_count, uchar *record, Field *field, uint *key_length, uint *keypart) { - reg2 int i; - reg3 KEY *key_info; + int i; + KEY *key_info; uint fieldpos; fieldpos= field->offset(record); @@ -511,7 +511,7 @@ int key_cmp(KEY_PART_INFO *key_part, const uchar *key, uint key_length) if (key_part->null_bit) { /* This key part allows null values; NULL is lower than everything */ - register bool field_is_null= key_part->field->is_null(); + bool field_is_null= key_part->field->is_null(); if (*key) // If range key is null { /* the range is expecting a null value */ diff --git a/sql/key.h b/sql/key.h index 47b981f52981169679060ed84c7ad482f690b6c8..37d94b1f4269fa23de09cdf6421a21efdb34ef48 100644 --- a/sql/key.h +++ b/sql/key.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef KEY_INCLUDED #define KEY_INCLUDED diff --git a/sql/keycaches.cc b/sql/keycaches.cc index 78e64ebac7224419f32d8ffa122cc65f81ec1b93..bc0f43a4d699b5ee9116e8404a9bf4c7c11ba361 100644 --- a/sql/keycaches.cc +++ b/sql/keycaches.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "keycaches.h" diff --git a/sql/keycaches.h b/sql/keycaches.h index fff48d51c6f0baa7300d112f37cfa83afd65d440..99528682d0edf1a2b2ade6ed7b267b89489e563b 100644 --- a/sql/keycaches.h +++ b/sql/keycaches.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_list.h" #include diff --git a/sql/lex.h b/sql/lex.h index 87c87d03fb33a1c5e0db8e09642c87c2a1548f97..3386dbf3de66114c1602f5d187e198bfded0632b 100644 --- a/sql/lex.h +++ b/sql/lex.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* This file includes all reserved words and functions */ diff --git a/sql/lex_symbol.h b/sql/lex_symbol.h index d48ca57df853f85b8c14096cd8cfc922838b55c6..e7819cd4e2f0f56623bb8301c8948ace064ca274 100644 --- a/sql/lex_symbol.h +++ b/sql/lex_symbol.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* This struct includes all reserved words and functions */ diff --git a/sql/lock.cc b/sql/lock.cc index f3445e3b38ad488091334ccffb651d4b9714ea67..07021bae9ca944a94ef2d9dbc7539c15231fbc61 100644 --- a/sql/lock.cc +++ b/sql/lock.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -347,7 +347,7 @@ bool mysql_lock_tables(THD *thd, MYSQL_LOCK *sql_lock, uint flags) static int lock_external(THD *thd, TABLE **tables, uint count) { - reg1 uint i; + uint i; int lock_type,error; DBUG_ENTER("lock_external"); @@ -500,7 +500,7 @@ void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table) { if (locked) { - reg1 uint i; + uint i; for (i=0; i < locked->table_count; i++) { if (locked->table[i] == table) diff --git a/sql/lock.h b/sql/lock.h index b2de4f60b38a211c16d1c97014d29548cc77ee4b..460cbd7df8fa257abe6392048673eb04bd686536 100644 --- a/sql/lock.h +++ b/sql/lock.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef LOCK_INCLUDED #define LOCK_INCLUDED diff --git a/sql/log.cc b/sql/log.cc index bab250223f36201fd8723611a1e85c3bb9a6cea4..acf1f8f8a9c8c90ac7f00f9d3c47c592611ccc12 100644 --- a/sql/log.cc +++ b/sql/log.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @@ -2430,7 +2430,7 @@ static int find_uniq_filename(char *name, ulong next_log_number) uint i; char buff[FN_REFLEN], ext_buf[FN_REFLEN]; struct st_my_dir *dir_info; - reg1 struct fileinfo *file_info; + struct fileinfo *file_info; ulong max_found, next, number; size_t buf_length, length; char *start, *end; @@ -8483,10 +8483,9 @@ void MYSQL_BIN_LOG::set_max_size(ulong max_size_arg) 0 String is not a number */ -static bool test_if_number(register const char *str, - ulong *res, bool allow_wildcards) +static bool test_if_number(const char *str, ulong *res, bool allow_wildcards) { - reg2 int flag; + int flag; const char *start; DBUG_ENTER("test_if_number"); diff --git a/sql/log.h b/sql/log.h index 2118bd7a05960f3df38f07897d8e910c5d9f8bdf..b4c9b24a3a911c235e98f8990a79f32687e0509e 100644 --- a/sql/log.h +++ b/sql/log.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef LOG_H #define LOG_H diff --git a/sql/log_event.cc b/sql/log_event.cc index a6091fcc28db356a1ce93f94481437a889891b44..65f29441e1a8bf5e4316dce00dff92f87b32feb5 100644 --- a/sql/log_event.cc +++ b/sql/log_event.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include @@ -296,7 +296,7 @@ class Write_on_release_cache public: enum flag { - FLUSH_F + FLUSH_F= 1 }; typedef unsigned short flag_set; diff --git a/sql/log_event.h b/sql/log_event.h index 446bd8cb827529e9632de09162dd587d74a6b402..9c555c54005b535cf18682cafb953cd43143c34c 100644 --- a/sql/log_event.h +++ b/sql/log_event.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @addtogroup Replication diff --git a/sql/log_event_old.cc b/sql/log_event_old.cc index f0c1c61bb1d9bd63a32cbde0ec89c2b38604cf4d..f70fa3605d6a827312a9f8f4a66491f303d93749 100644 --- a/sql/log_event_old.cc +++ b/sql/log_event_old.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/log_event_old.h b/sql/log_event_old.h index 40e01d37318024c2623ba4743952718f9e4a13f1..cccb0674e822e98cb9f162b9fce0f4b55e53a854 100644 --- a/sql/log_event_old.h +++ b/sql/log_event_old.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef LOG_EVENT_OLD_H #define LOG_EVENT_OLD_H diff --git a/sql/log_slow.h b/sql/log_slow.h index 5092e8332ed2aba9e09ff37f74301a137ccb5ab8..4131a9c2ab9851cae8be5cdcc6442aaac31f74b0 100644 --- a/sql/log_slow.h +++ b/sql/log_slow.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Defining what to log to slow log */ diff --git a/sql/main.cc b/sql/main.cc index 10141c132a6c3a8b3cbd01da06ea0b761f3f0989..957efb8fa2e675ae84c0e08cd13f75dd4e00a950 100644 --- a/sql/main.cc +++ b/sql/main.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* main() for mysqld. diff --git a/sql/mdl.cc b/sql/mdl.cc index 86fc5fa39fcd856faf3871e3ddcbebcf1020bc70..d52920d9ede09190fc5b01e196fa25ee7c6ba44c 100644 --- a/sql/mdl.cc +++ b/sql/mdl.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_class.h" diff --git a/sql/mdl.h b/sql/mdl.h index 15a1976876b228926f6d08bbe8e4ac7316bcc3d7..2b6b7b313a28c259b1ec04a3adc61002d364fbc3 100644 --- a/sql/mdl.h +++ b/sql/mdl.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #if defined(__IBMC__) || defined(__IBMCPP__) /* Further down, "next_in_lock" and "next_in_context" have the same type, diff --git a/sql/mem_root_array.h b/sql/mem_root_array.h index 5daeedadcba0a1523ed3fd2437ac0e0ddd2b93e5..1230f41247cead17f4a2e91749d5eb2583a81e72 100644 --- a/sql/mem_root_array.h +++ b/sql/mem_root_array.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MEM_ROOT_ARRAY_INCLUDED diff --git a/sql/message.h b/sql/message.h index 6641453a965e38eeab5025efcfe1cf7744a976bf..934503751d624e7fc69f2808af6ad0e9bb728af3 100644 --- a/sql/message.h +++ b/sql/message.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* To change or add messages mysqld writes to the Windows error log, run diff --git a/sql/mf_iocache.cc b/sql/mf_iocache.cc index 6535f16445b9404553e2f6944fe64d5b1245fe90..0336df6dfe9ca616fcfc73010ada155aabbd8d84 100644 --- a/sql/mf_iocache.cc +++ b/sql/mf_iocache.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -49,7 +49,7 @@ extern "C" { */ -int _my_b_net_read(register IO_CACHE *info, uchar *Buffer, +int _my_b_net_read(IO_CACHE *info, uchar *Buffer, size_t Count __attribute__((unused))) { ulong read_length; diff --git a/sql/mf_iocache_encr.cc b/sql/mf_iocache_encr.cc index f26a437a25a523475ca505dfeb502118a8ecf205..00eb6baf25941d028e3c890cb8c3cea55d61d75b 100644 --- a/sql/mf_iocache_encr.cc +++ b/sql/mf_iocache_encr.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /************************************************************************* Limitation of encrypted IO_CACHEs diff --git a/sql/multi_range_read.cc b/sql/multi_range_read.cc index 50918d8dcf25b19d1c1b9c9a2cfe8f6b75829311..62ca4f628b0d9ed5974c50a32f0737e0017cf586 100644 --- a/sql/multi_range_read.cc +++ b/sql/multi_range_read.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_parse.h" #include diff --git a/sql/multi_range_read.h b/sql/multi_range_read.h index b8234998f747c1df9698efe281c4d40f878f7715..524e60cb593f5edc8c6729ba675316cab4dd9027 100644 --- a/sql/multi_range_read.h +++ b/sql/multi_range_read.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @defgroup DS-MRR declarations diff --git a/sql/my_apc.cc b/sql/my_apc.cc index b165a801ce534532baf299b1f7f8459aa9d558d0..f54e2ad3a8fbb7ccf5f524de4b2f7320e276b5fc 100644 --- a/sql/my_apc.cc +++ b/sql/my_apc.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MY_APC_STANDALONE diff --git a/sql/my_apc.h b/sql/my_apc.h index 46c6fbd549d5b49a4612d3fbd9bc99641d7839a1..0ac840b784e605575a562796ca07039dccaad1c2 100644 --- a/sql/my_apc.h +++ b/sql/my_apc.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Interface diff --git a/sql/my_decimal.cc b/sql/my_decimal.cc index be732d4a927d53d1dc75e7acaa6a75757ba3d109..eec2676766cb613e4a397a8dbb71d5bbd521b72c 100644 --- a/sql/my_decimal.cc +++ b/sql/my_decimal.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/my_decimal.h b/sql/my_decimal.h index 265b370a154c49d2b76ba57092e9ab0958cf3924..f318bcd1cd3e20973e188da675a24654c2be3fde 100644 --- a/sql/my_decimal.h +++ b/sql/my_decimal.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/my_json_writer.cc b/sql/my_json_writer.cc index 390123fbba9121d191513becae5a2e25ddfed0a7..22c66ba7a34dc2a29c7566bac96cb624925a0619 100644 --- a/sql/my_json_writer.cc +++ b/sql/my_json_writer.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" @@ -129,6 +129,13 @@ void Json_writer::add_ll(longlong val) add_unquoted_str(buf); } +void Json_writer::add_ull(ulonglong val) +{ + char buf[64]; + my_snprintf(buf, sizeof(buf), "%llu", val); + add_unquoted_str(buf); +} + /* Add a memory size, printing in Kb, Kb, Gb if necessary */ void Json_writer::add_size(longlong val) diff --git a/sql/my_json_writer.h b/sql/my_json_writer.h index c4b528ae10dfc05de27a398b794221556125120b..ffee6db4c03a8927b1ccdc7eac1b235e40ffdc0b 100644 --- a/sql/my_json_writer.h +++ b/sql/my_json_writer.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ class Json_writer; @@ -108,6 +108,7 @@ class Json_writer void add_str(const String &str); void add_ll(longlong val); + void add_ull(ulonglong val); void add_size(longlong val); void add_double(double val); void add_bool(bool val); diff --git a/sql/mysql_install_db.cc b/sql/mysql_install_db.cc index 01d00855aed5e158effb73f8e7645a613eedfb21..c6912e41f6e5017daacdeb01c84492677dbe7474 100644 --- a/sql/mysql_install_db.cc +++ b/sql/mysql_install_db.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* mysql_install_db creates a new database instance (optionally as service) diff --git a/sql/mysql_upgrade_service.cc b/sql/mysql_upgrade_service.cc index 9bb608092059dbea3d0878a05257b09b30b5bf9d..37dae6485639d8cdc43bb2681a53905e7f896ef0 100644 --- a/sql/mysql_upgrade_service.cc +++ b/sql/mysql_upgrade_service.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* mysql_upgrade_service upgrades mysql service on Windows. @@ -148,8 +148,9 @@ static void die(const char *fmt, ...) #define WRITE_LOG(fmt,...) {\ char log_buf[1024]; \ + DWORD nbytes; \ snprintf(log_buf,sizeof(log_buf), fmt, __VA_ARGS__);\ - WriteFile(logfile_handle,log_buf, strlen(log_buf), 0 , 0);\ + WriteFile(logfile_handle,log_buf, strlen(log_buf), &nbytes , 0);\ } /* @@ -529,4 +530,4 @@ int main(int argc, char **argv) CloseHandle(logfile_handle); my_end(0); exit(0); -} \ No newline at end of file +} diff --git a/sql/mysqld.cc b/sql/mysqld.cc index cf76a6a4c5c842212dd352b518c63e532f7e16e1..4a216c9eecd43ce95a64d19326bcec39fdeb530d 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_plugin.h" // Includes my_global.h #include "sql_priv.h" diff --git a/sql/mysqld.h b/sql/mysqld.h index af519622d97d9fc0f989b44cc4ce94c8a9b552f7..e939524dbff44924b4018f186d78fee301f3bede 100644 --- a/sql/mysqld.h +++ b/sql/mysqld.h @@ -1,5 +1,5 @@ /* Copyright (c) 2006, 2016, Oracle and/or its affiliates. - Copyright (c) 2010, 2016, MariaDB + Copyright (c) 2010, 2019, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef MYSQLD_INCLUDED #define MYSQLD_INCLUDED @@ -64,7 +64,7 @@ typedef Bitmap<((MAX_INDEXES+7)/8*8)> key_map; /* Used for finding keys */ #define OPT_SESSION SHOW_OPT_SESSION #define OPT_GLOBAL SHOW_OPT_GLOBAL -extern MY_TIMER_INFO sys_timer_info; +extern MYSQL_PLUGIN_IMPORT MY_TIMER_INFO sys_timer_info; /* Values for --slave-parallel-mode @@ -560,11 +560,11 @@ extern mysql_mutex_t LOCK_item_func_sleep, LOCK_status, LOCK_show_status, LOCK_error_log, LOCK_delayed_insert, LOCK_short_uuid_generator, LOCK_delayed_status, LOCK_delayed_create, LOCK_crypt, LOCK_timezone, - LOCK_slave_list, LOCK_active_mi, LOCK_manager, - LOCK_global_system_variables, LOCK_user_conn, + LOCK_slave_list, LOCK_active_mi, LOCK_manager, LOCK_user_conn, LOCK_prepared_stmt_count, LOCK_error_messages, LOCK_connection_count, LOCK_slave_background; -extern MYSQL_PLUGIN_IMPORT mysql_mutex_t LOCK_thread_count; +extern MYSQL_PLUGIN_IMPORT mysql_mutex_t LOCK_thread_count, + LOCK_global_system_variables; #ifdef HAVE_OPENSSL extern char* des_key_file; extern mysql_mutex_t LOCK_des_key_file; diff --git a/sql/mysqld_suffix.h b/sql/mysqld_suffix.h index fd515ac5998ba2130e872fecf7d28636ebd16a51..3c36ba2bc918db30d3fd4123d7a04d824c4e05fb 100644 --- a/sql/mysqld_suffix.h +++ b/sql/mysqld_suffix.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/net_serv.cc b/sql/net_serv.cc index 6d200f55655bbdbade01c02ca99ecec2d18f896a..ea5e4353c83f853df7de030855ae9fdb1cdb21c4 100644 --- a/sql/net_serv.cc +++ b/sql/net_serv.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -60,8 +60,8 @@ #define EXTRA_DEBUG_fflush fflush #define EXTRA_DEBUG_ASSERT DBUG_ASSERT #else -static void inline EXTRA_DEBUG_fprintf(...) {} -static int inline EXTRA_DEBUG_fflush(...) { return 0; } +#define EXTRA_DEBUG_fprintf(...) +#define EXTRA_DEBUG_fflush(...) #define EXTRA_DEBUG_ASSERT(X) do {} while(0) #endif #ifdef MYSQL_SERVER diff --git a/sql/opt_index_cond_pushdown.cc b/sql/opt_index_cond_pushdown.cc index 1dde52282637273b02fae03c0db61c184dcd4396..cbaa6f4fe7a590838a4c19c05f097fd77d886489 100644 --- a/sql/opt_index_cond_pushdown.cc +++ b/sql/opt_index_cond_pushdown.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include "sql_select.h" #include "sql_test.h" diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 2f76f918e341596978d903796a35f2d53d90655d..e8421ad052a4af2028669a77544b8b21a687aa96 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* TODO: @@ -3050,7 +3050,7 @@ bool calculate_cond_selectivity_for_table(THD *thd, TABLE *table, Item **cond) if (thd->variables.optimizer_use_condition_selectivity > 2 && !bitmap_is_clear_all(used_fields) && - thd->variables.use_stat_tables > 0) + thd->variables.use_stat_tables > 0 && table->stats_is_read) { PARAM param; MEM_ROOT alloc; diff --git a/sql/opt_range.h b/sql/opt_range.h index 0c495639db6c851765a9b871e130ebb15ec4ae8c..7d8c6e755a7eef6d06b6e1ca40c6bfcb9bfb873e 100644 --- a/sql/opt_range.h +++ b/sql/opt_range.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* classes to use when handling where clause */ diff --git a/sql/opt_range_mrr.cc b/sql/opt_range_mrr.cc index b3350191d1351f26c011203d785c740ab74792af..5d62ceda7d4cb63c5ebc60f2933c200dd413c5a0 100644 --- a/sql/opt_range_mrr.cc +++ b/sql/opt_range_mrr.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /**************************************************************************** MRR Range Sequence Interface implementation that walks a SEL_ARG* tree. diff --git a/sql/opt_subselect.cc b/sql/opt_subselect.cc index 852f91efc00ef45385aba85e748f15af34d2573e..33ac3dd7cf108133f06562d282fbc92cad86b916 100644 --- a/sql/opt_subselect.cc +++ b/sql/opt_subselect.cc @@ -1,5 +1,5 @@ /* - Copyright (c) 2010, 2015, MariaDB + Copyright (c) 2010, 2019, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file @@ -28,6 +28,7 @@ #include #include "sql_base.h" +#include "sql_const.h" #include "sql_select.h" #include "filesort.h" #include "opt_subselect.h" @@ -522,7 +523,7 @@ bool is_materialization_applicable(THD *thd, Item_in_subselect *in_subs, if (optimizer_flag(thd, OPTIMIZER_SWITCH_MATERIALIZATION) && // 0 !child_select->is_part_of_union() && // 1 parent_unit->first_select()->leaf_tables.elements && // 2 - child_select->outer_select()->leaf_tables.elements && // 2A + child_select->outer_select()->table_list.first && // 2A subquery_types_allow_materialization(in_subs) && (in_subs->is_top_level_item() || //3 optimizer_flag(thd, @@ -1383,8 +1384,8 @@ void get_delayed_table_estimates(TABLE *table, *startup_cost= item->jtbm_read_time; /* Calculate cost of scanning the temptable */ - double data_size= item->jtbm_record_count * - hash_sj_engine->tmp_table->s->reclength; + double data_size= COST_MULT(item->jtbm_record_count, + hash_sj_engine->tmp_table->s->reclength); /* Do like in handler::read_time */ *scan_time= data_size/IO_SIZE + 2; } @@ -2467,7 +2468,8 @@ bool optimize_semijoin_nests(JOIN *join, table_map all_table_map) int tableno; double rows= 1.0; while ((tableno = tm_it.next_bit()) != Table_map_iterator::BITMAP_END) - rows *= join->map2table[tableno]->table->quick_condition_rows; + rows= COST_MULT(rows, + join->map2table[tableno]->table->quick_condition_rows); sjm->rows= MY_MIN(sjm->rows, rows); } memcpy((uchar*) sjm->positions, @@ -2581,7 +2583,7 @@ static uint get_tmp_table_rec_length(Item **p_items, uint elements) static double get_tmp_table_lookup_cost(THD *thd, double row_count, uint row_size) { - if (row_count * row_size > thd->variables.max_heap_table_size) + if (row_count > thd->variables.max_heap_table_size / (double) row_size) return (double) DISK_TEMPTABLE_LOOKUP_COST; else return (double) HEAP_TEMPTABLE_LOOKUP_COST; @@ -2987,8 +2989,11 @@ bool Sj_materialization_picker::check_qep(JOIN *join, } double mat_read_time= prefix_cost.total_cost(); - mat_read_time += mat_info->materialization_cost.total_cost() + - prefix_rec_count * mat_info->lookup_cost.total_cost(); + mat_read_time= + COST_ADD(mat_read_time, + COST_ADD(mat_info->materialization_cost.total_cost(), + COST_MULT(prefix_rec_count, + mat_info->lookup_cost.total_cost()))); /* NOTE: When we pick to use SJM[-Scan] we don't memcpy its POSITION @@ -3028,9 +3033,12 @@ bool Sj_materialization_picker::check_qep(JOIN *join, } /* Add materialization cost */ - prefix_cost += mat_info->materialization_cost.total_cost() + - prefix_rec_count * mat_info->scan_cost.total_cost(); - prefix_rec_count *= mat_info->rows; + prefix_cost= + COST_ADD(prefix_cost, + COST_ADD(mat_info->materialization_cost.total_cost(), + COST_MULT(prefix_rec_count, + mat_info->scan_cost.total_cost()))); + prefix_rec_count= COST_MULT(prefix_rec_count, mat_info->rows); uint i; table_map rem_tables= remaining_tables; @@ -3044,8 +3052,8 @@ bool Sj_materialization_picker::check_qep(JOIN *join, { best_access_path(join, join->positions[i].table, rem_tables, i, disable_jbuf, prefix_rec_count, &curpos, &dummy); - prefix_rec_count *= curpos.records_read; - prefix_cost += curpos.read_time; + prefix_rec_count= COST_MULT(prefix_rec_count, curpos.records_read); + prefix_cost= COST_ADD(prefix_cost, curpos.read_time); } *strategy= SJ_OPT_MATERIALIZE_SCAN; @@ -3352,16 +3360,18 @@ bool Duplicate_weedout_picker::check_qep(JOIN *join, for (uint j= first_dupsweedout_table; j <= idx; j++) { POSITION *p= join->positions + j; - current_fanout *= p->records_read; - dups_cost += p->read_time + current_fanout / TIME_FOR_COMPARE; + current_fanout= COST_MULT(current_fanout, p->records_read); + dups_cost= COST_ADD(dups_cost, + COST_ADD(p->read_time, + current_fanout / TIME_FOR_COMPARE)); if (p->table->emb_sj_nest) { - sj_inner_fanout *= p->records_read; + sj_inner_fanout= COST_MULT(sj_inner_fanout, p->records_read); dups_removed_fanout |= p->table->table->map; } else { - sj_outer_fanout *= p->records_read; + sj_outer_fanout= COST_MULT(sj_outer_fanout, p->records_read); temptable_rec_size += p->table->table->file->ref_length; } } @@ -3380,12 +3390,13 @@ bool Duplicate_weedout_picker::check_qep(JOIN *join, sj_outer_fanout, temptable_rec_size); - double write_cost= join->positions[first_tab].prefix_record_count* - sj_outer_fanout * one_write_cost; - double full_lookup_cost= join->positions[first_tab].prefix_record_count* - sj_outer_fanout* sj_inner_fanout * - one_lookup_cost; - dups_cost += write_cost + full_lookup_cost; + double write_cost= COST_MULT(join->positions[first_tab].prefix_record_count, + sj_outer_fanout * one_write_cost); + double full_lookup_cost= + COST_MULT(join->positions[first_tab].prefix_record_count, + COST_MULT(sj_outer_fanout, + sj_inner_fanout * one_lookup_cost)); + dups_cost= COST_ADD(dups_cost, COST_ADD(write_cost, full_lookup_cost)); *read_time= dups_cost; *record_count= prefix_rec_count * sj_outer_fanout; @@ -3532,8 +3543,8 @@ static void recalculate_prefix_record_count(JOIN *join, uint start, uint end) if (j == join->const_tables) prefix_count= 1.0; else - prefix_count= join->best_positions[j-1].prefix_record_count * - join->best_positions[j-1].records_read; + prefix_count= COST_MULT(join->best_positions[j-1].prefix_record_count, + join->best_positions[j-1].records_read); join->best_positions[j].prefix_record_count= prefix_count; } @@ -5882,14 +5893,16 @@ bool JOIN::choose_subquery_plan(table_map join_tables) The cost of executing the subquery and storing its result in an indexed temporary table. */ - double materialization_cost= inner_read_time_1 + - write_cost * inner_record_count_1; + double materialization_cost= COST_ADD(inner_read_time_1, + COST_MULT(write_cost, + inner_record_count_1)); - materialize_strategy_cost= materialization_cost + - outer_lookup_keys * lookup_cost; + materialize_strategy_cost= COST_ADD(materialization_cost, + COST_MULT(outer_lookup_keys, + lookup_cost)); /* C.2 Compute the cost of the IN=>EXISTS strategy. */ - in_exists_strategy_cost= outer_lookup_keys * inner_read_time_2; + in_exists_strategy_cost= COST_MULT(outer_lookup_keys, inner_read_time_2); /* C.3 Compare the costs and choose the cheaper strategy. */ if (materialize_strategy_cost >= in_exists_strategy_cost) diff --git a/sql/opt_subselect.h b/sql/opt_subselect.h index 7954becfad435fe7f1f6d3fc47bfef02419b2713..1b4c8116135cbbfd7cbcc466bda9c3335c2bb1f8 100644 --- a/sql/opt_subselect.h +++ b/sql/opt_subselect.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* Semi-join subquery optimization code definitions diff --git a/sql/opt_sum.cc b/sql/opt_sum.cc index 5d5132e7fee05f0294acced5733e0a868c8b01df..a87e6ba0811b328103fa7d9eaf71bc6fd1b07759 100644 --- a/sql/opt_sum.cc +++ b/sql/opt_sum.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** diff --git a/sql/opt_table_elimination.cc b/sql/opt_table_elimination.cc index da1706e630fc3ff881786d81386de1ad66f0ee0c..17fabb0582b1d3105cba0e11520a5d82cbc1da44 100644 --- a/sql/opt_table_elimination.cc +++ b/sql/opt_table_elimination.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/parse_file.cc b/sql/parse_file.cc index f3dab4f7b2f90eead7684cdd82bd5af64f52ac35..79d95fa7e61481b81d71ab95c6a901abd16ec53f 100644 --- a/sql/parse_file.cc +++ b/sql/parse_file.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/parse_file.h b/sql/parse_file.h index 87917dbd71bb81fb6ec105272fe4b60056285806..54a2b86dca911d1b812f78986799df348909c618 100644 --- a/sql/parse_file.h +++ b/sql/parse_file.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef _PARSE_FILE_H_ #define _PARSE_FILE_H_ diff --git a/sql/partition_element.h b/sql/partition_element.h index 308a4d6ddd25e1f71e2788aa8edba65323eff610..c1ad8c9b4157095a7c6cd46997f1940256c48bde 100644 --- a/sql/partition_element.h +++ b/sql/partition_element.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include "my_base.h" /* ha_rows */ #include "handler.h" /* UNDEF_NODEGROUP */ diff --git a/sql/partition_info.cc b/sql/partition_info.cc index 892b7e8bd05fa7f4791ff06c52d4e22a32e38f37..7ec7b792dec3bb25fcaf262361b7aff81ed38413 100644 --- a/sql/partition_info.cc +++ b/sql/partition_info.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Some general useful functions */ diff --git a/sql/partition_info.h b/sql/partition_info.h index 0f38c87dd4e310aa5686a55bb1248e81d6e8a60b..fa596fdbc0ea1cacc51498ab7237ebb90aaf574d 100644 --- a/sql/partition_info.h +++ b/sql/partition_info.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_INTERFACE #pragma interface /* gcc class implementation */ diff --git a/sql/password.c b/sql/password.c index 02e4a0c37c7944aa836f526c18834acaf51a4983..8efba153554c4b3f137e465acf14ba4181756e67 100644 --- a/sql/password.c +++ b/sql/password.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* password checking routines */ /***************************************************************************** diff --git a/sql/plistsort.c b/sql/plistsort.c index 99657410fe0d9d0541dc42376c52e9da0e526b42..6efea2739638b54bd5505317a5d75699ab38ce73 100644 --- a/sql/plistsort.c +++ b/sql/plistsort.c @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /* @@ -91,7 +91,7 @@ LS_SCOPE LS_LIST_ITEM* LS_NAME(LS_COMPARE_FUNC_DECL LS_LIST_ITEM *list, int list } { - register struct LS_STRUCT_NAME *sp0= sp++; + struct LS_STRUCT_NAME *sp0= sp++; sp->list_len= sp0->list_len >> 1; sp0->list_len-= sp->list_len; sp->return_point= 0; @@ -100,7 +100,7 @@ LS_SCOPE LS_LIST_ITEM* LS_NAME(LS_COMPARE_FUNC_DECL LS_LIST_ITEM *list, int list return_point0: sp->list1= sorted_list; { - register struct LS_STRUCT_NAME *sp0= sp++; + struct LS_STRUCT_NAME *sp0= sp++; list= list_end; sp->list_len= sp0->list_len; sp->return_point= 1; @@ -108,9 +108,9 @@ LS_SCOPE LS_LIST_ITEM* LS_NAME(LS_COMPARE_FUNC_DECL LS_LIST_ITEM *list, int list goto recursion_point; return_point1: { - register LS_LIST_ITEM **hook= &sorted_list; - register LS_LIST_ITEM *list1= sp->list1; - register LS_LIST_ITEM *list2= sorted_list; + LS_LIST_ITEM **hook= &sorted_list; + LS_LIST_ITEM *list1= sp->list1; + LS_LIST_ITEM *list2= sorted_list; if (LS_COMPARE_FUNC_CALL(list1, list2)) { diff --git a/sql/procedure.cc b/sql/procedure.cc index 8f9d6c0a7f3c284fd7da74a53dee015e1546c4b7..75a3a4ea8a99974398f1982b4533582a4cd479bc 100644 --- a/sql/procedure.cc +++ b/sql/procedure.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Procedures (functions with changes output of select) */ diff --git a/sql/procedure.h b/sql/procedure.h index a46e8cfc137e114dfcb89646799250431611e85d..c9b93d68125eabefb912caab2cd884fdd6f3acec 100644 --- a/sql/procedure.h +++ b/sql/procedure.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* When using sql procedures */ diff --git a/sql/protocol.cc b/sql/protocol.cc index 9c5df04e4046b1526ee9ea205165384493d899d6..f15b01d3ecf149bd25bc34460916db508be6548e 100644 --- a/sql/protocol.cc +++ b/sql/protocol.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/protocol.h b/sql/protocol.h index 2edad5663e8a4cba56b6b3eb888c3c3d3afd038c..b13978a86ad3e32eb4706fd3779bbddd57fa41d7 100644 --- a/sql/protocol.h +++ b/sql/protocol.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_INTERFACE #pragma interface /* gcc class implementation */ diff --git a/sql/records.cc b/sql/records.cc index d98c6939e049f278cd3de94e3e12a118bdc55f74..795f11978403efeae10acc737d4a0529af69474a 100644 --- a/sql/records.cc +++ b/sql/records.cc @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_INTERFACE #pragma implementation /* gcc class implementation */ @@ -622,7 +622,7 @@ static int init_rr_cache(THD *thd, READ_RECORD *info) static int rr_from_cache(READ_RECORD *info) { - reg1 uint i; + uint i; ulong length; my_off_t rest_of_file; int16 error; diff --git a/sql/records.h b/sql/records.h index b55fbc22f5538900b77ec35e6f8fb47ae971ca61..fe3e9556bcf940b2825e8c3cbe86563eeb12d77a 100644 --- a/sql/records.h +++ b/sql/records.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef USE_PRAGMA_INTERFACE #pragma interface /* gcc class implementation */ diff --git a/sql/repl_failsafe.cc b/sql/repl_failsafe.cc index 4cf7df5227f6bb32b42b7a48705bffeb20f55930..7a3725a7687070c3df0cf986b3b99eba09c2ccd2 100644 --- a/sql/repl_failsafe.cc +++ b/sql/repl_failsafe.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/repl_failsafe.h b/sql/repl_failsafe.h index 2cc031a462d8149028d86e80c88450764a8e2971..d11cfae11085e0941e0e767d9f67c18bf32d8a26 100644 --- a/sql/repl_failsafe.h +++ b/sql/repl_failsafe.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifdef HAVE_REPLICATION diff --git a/sql/replication.h b/sql/replication.h index 4731c2246ef02fad544dc4dac36aac30cd31bccb..cd3d05d2159fb8afd328707ffb13ca8162795667 100644 --- a/sql/replication.h +++ b/sql/replication.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef REPLICATION_H #define REPLICATION_H diff --git a/sql/rpl_constants.h b/sql/rpl_constants.h index 0a7fde439dd8059ce3bb402ba10d912e44aa40f3..f319d08303c0df4ebe1ceed3fe2ecd6a26f64d60 100644 --- a/sql/rpl_constants.h +++ b/sql/rpl_constants.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_CONSTANTS_H #define RPL_CONSTANTS_H diff --git a/sql/rpl_filter.cc b/sql/rpl_filter.cc index b82e7bada458f493864a5ff4bbd50af6334a61be..366902c1f261739e7d268ff8df9fcae146de745e 100644 --- a/sql/rpl_filter.cc +++ b/sql/rpl_filter.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_filter.h b/sql/rpl_filter.h index f24ece30a80cf7dee1f2f1621eff8d3366659034..f22ec8a0ce4f0fff254516f4c8d17fe440d58cf4 100644 --- a/sql/rpl_filter.h +++ b/sql/rpl_filter.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_FILTER_H #define RPL_FILTER_H diff --git a/sql/rpl_gtid.cc b/sql/rpl_gtid.cc index 2d4acde03fc4948f6efe414d8cbfa5f1e8e8f513..752b4172b6e21f49177fcf4233eae998d74a8979 100644 --- a/sql/rpl_gtid.cc +++ b/sql/rpl_gtid.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Definitions for MariaDB global transaction ID (GTID). */ diff --git a/sql/rpl_gtid.h b/sql/rpl_gtid.h index 7bd639b768ff4e946efb3fffbd935d3707bded76..972f1f6584b00b1ae88a4fdab91ec6921516376f 100644 --- a/sql/rpl_gtid.h +++ b/sql/rpl_gtid.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_GTID_H #define RPL_GTID_H diff --git a/sql/rpl_handler.cc b/sql/rpl_handler.cc index 520fb61d8c498995532b1ca1589118d09d8c96d3..9582e087672680fd11bf797b0f5e5aea170c3b02 100644 --- a/sql/rpl_handler.cc +++ b/sql/rpl_handler.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_handler.h b/sql/rpl_handler.h index afcfd9d55b1ccb79bb57e663bcc5ae5e52e423dc..b53f93dca38077f8d843f324c592e21eba0685fa 100644 --- a/sql/rpl_handler.h +++ b/sql/rpl_handler.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_HANDLER_H #define RPL_HANDLER_H diff --git a/sql/rpl_injector.cc b/sql/rpl_injector.cc index bff0da26862bb8d7d351611c268ce28d7c045112..53999d57bf6173ce5c79c7528be923b90c154c99 100644 --- a/sql/rpl_injector.cc +++ b/sql/rpl_injector.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_injector.h b/sql/rpl_injector.h index 41e1fcf460cb2bdc68975aafab9bb9549f720c4c..cd4568cdb0867e7e810737970d5436516398b92e 100644 --- a/sql/rpl_injector.h +++ b/sql/rpl_injector.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef INJECTOR_H #define INJECTOR_H diff --git a/sql/rpl_mi.cc b/sql/rpl_mi.cc index ab54f0bfbb7d727d0b8be7d044b1e96ff0416e71..0fca8ff6267457d36881a7b55d54c6c55747e53e 100644 --- a/sql/rpl_mi.cc +++ b/sql/rpl_mi.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include // For HAVE_REPLICATION #include "sql_priv.h" @@ -115,15 +115,6 @@ void Master_info::wait_until_free() Master_info::~Master_info() { wait_until_free(); -#ifdef WITH_WSREP - /* - Do not free "wsrep" rpl_filter. It will eventually be freed by - free_all_rpl_filters() when server terminates. - */ - if (strncmp(connection_name.str, STRING_WITH_LEN("wsrep"))) -#endif - rpl_filters.delete_element(connection_name.str, connection_name.length, - (void (*)(const char*, uchar*)) free_rpl_filter); my_free(connection_name.str); delete_dynamic(&ignore_server_ids); mysql_mutex_destroy(&run_lock); @@ -1233,7 +1224,7 @@ bool Master_info_index::init_all_master_info() if (!err_num) // No Error on read Master_info { if (global_system_variables.log_warnings > 1) - sql_print_information("Reading of all Master_info entries succeded"); + sql_print_information("Reading of all Master_info entries succeeded"); DBUG_RETURN(0); } if (succ_num) // Have some Error and some Success diff --git a/sql/rpl_mi.h b/sql/rpl_mi.h index d0f6171815cdacfd5514811bee034b60a480bcbe..12574285de0884df14e591b9a56932028ac1c9f7 100644 --- a/sql/rpl_mi.h +++ b/sql/rpl_mi.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_MI_H #define RPL_MI_H diff --git a/sql/rpl_record.cc b/sql/rpl_record.cc index 4f12169fbf369a0fc6a6ad0d43f0c11bee2f037e..f752b88f58466b7f4788aa513e0329e8e83b76f1 100644 --- a/sql/rpl_record.cc +++ b/sql/rpl_record.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_record.h b/sql/rpl_record.h index be69716d9d55769d1c80baf2e549442d2904e4e7..36b654a45e083bd496363ad5fbdfd2219b21b0b0 100644 --- a/sql/rpl_record.h +++ b/sql/rpl_record.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_RECORD_H #define RPL_RECORD_H diff --git a/sql/rpl_record_old.cc b/sql/rpl_record_old.cc index 5b876373b9c1f0b46f24d4c2eaf2405bec90062f..c1a012ab976900cc17ee7626947045da5d08f9f3 100644 --- a/sql/rpl_record_old.cc +++ b/sql/rpl_record_old.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_record_old.h b/sql/rpl_record_old.h index 34ef9f11c473bb076bd0797cff5001ca9c203396..0b2dd432138edebb70fc58ea0b662e32a34ff377 100644 --- a/sql/rpl_record_old.h +++ b/sql/rpl_record_old.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_RECORD_OLD_H #define RPL_RECORD_OLD_H diff --git a/sql/rpl_reporting.cc b/sql/rpl_reporting.cc index ad9494025119ffba207ee9a862b78202c473798b..d6107e949876c077e2e06d86f1d3dec3d0676d9a 100644 --- a/sql/rpl_reporting.cc +++ b/sql/rpl_reporting.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_reporting.h b/sql/rpl_reporting.h index d90b7ad66501e65e4b8f3a29d4934b8948eaac0c..6867b77eb0aceaa4569e5d76879d214d8f57150f 100644 --- a/sql/rpl_reporting.h +++ b/sql/rpl_reporting.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_REPORTING_H #define RPL_REPORTING_H diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc index b35130c1505326d353f6eaf34cf406e1459b7bf3..f35142538746b82eac53867da287d6df3dab9c33 100644 --- a/sql/rpl_rli.cc +++ b/sql/rpl_rli.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */ + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_rli.h b/sql/rpl_rli.h index b40a34a54e678c5825492ee1502e353335fabebc..3dec5b0f044fb284a368d819da34c412e23a6e8c 100644 --- a/sql/rpl_rli.h +++ b/sql/rpl_rli.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_RLI_H #define RPL_RLI_H diff --git a/sql/rpl_tblmap.cc b/sql/rpl_tblmap.cc index 80114f50d621b38c5d67c30182599137c80c85c5..1c38325103772f45a5aa564345d4d8a156560110 100644 --- a/sql/rpl_tblmap.cc +++ b/sql/rpl_tblmap.cc @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include "sql_priv.h" diff --git a/sql/rpl_tblmap.h b/sql/rpl_tblmap.h index 05b298e6053facba8f5c81d0ec0e75d9e4b30b08..63bac5e68a8529e7dd4dab735c082b62d92439ad 100644 --- a/sql/rpl_tblmap.h +++ b/sql/rpl_tblmap.h @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef TABLE_MAPPING_H #define TABLE_MAPPING_H diff --git a/sql/rpl_utility.cc b/sql/rpl_utility.cc index ff2cd74c3a7d8b9890cea92b5e311f2010a98814..59f4dd05430eaccb6dac92aef8e945daed40a029 100644 --- a/sql/rpl_utility.cc +++ b/sql/rpl_utility.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #include #include diff --git a/sql/rpl_utility.h b/sql/rpl_utility.h index ed0ce16363bc925e97ed03e44388caadc4cc7d8d..b42b11231e0f777c4d99fa8a3c0a82ecb0cd50ea 100644 --- a/sql/rpl_utility.h +++ b/sql/rpl_utility.h @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ #ifndef RPL_UTILITY_H #define RPL_UTILITY_H diff --git a/sql/scheduler.cc b/sql/scheduler.cc index bc3166210b584d0ee1c6595a50493801f14e9847..598366be8994e01337f889c68a85a01c72195f4c 100644 --- a/sql/scheduler.cc +++ b/sql/scheduler.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Implementation for the thread scheduler diff --git a/sql/scheduler.h b/sql/scheduler.h index f7aff377eacb1193187dede7cad668099b6d3b9f..72ab1918b117e3aa1e742afba5bd8a926bf56cc8 100644 --- a/sql/scheduler.h +++ b/sql/scheduler.h @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* Classes for the thread scheduler diff --git a/sql/set_var.cc b/sql/set_var.cc index b5430c5686551f9b331e2c922dd74e372b7e5b04..b5f017eb85e0ed23bde89d0f86945a020790300e 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -12,7 +12,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* variable declarations are in sys_vars.cc now !!! */ diff --git a/sql/set_var.h b/sql/set_var.h index 203969d616912df8ba675b2cae7545ac2a2a18cd..fc79e9062703c773f7daaa6b6d66054d534cea21 100644 --- a/sql/set_var.h +++ b/sql/set_var.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ /** @file diff --git a/sql/share/CMakeLists.txt b/sql/share/CMakeLists.txt index 4293c0b528c2aeef70f51523bc3263b8e42b827c..246b31614c378a2a4c5bdbcd5cf6df5a454e9428 100644 --- a/sql/share/CMakeLists.txt +++ b/sql/share/CMakeLists.txt @@ -12,7 +12,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA SET (dirs danish diff --git a/sql/share/charsets/Index.xml b/sql/share/charsets/Index.xml index 9764d62962565bad07375599e1d4d01233e5fc5c..3530d95bfa40888873a9810b629e7e451e8ea5a4 100644 --- a/sql/share/charsets/Index.xml +++ b/sql/share/charsets/Index.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/armscii8.xml b/sql/share/charsets/armscii8.xml index c1eb93b1f91205df5ae1cbf9a78fa0c6cd19eac5..161d469c3bc7b0edd2aa1b7d344ae3c30f1dfb76 100644 --- a/sql/share/charsets/armscii8.xml +++ b/sql/share/charsets/armscii8.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/ascii.xml b/sql/share/charsets/ascii.xml index c516a68516c3326cdf3c3b744154463cba356377..0f90f4983e37d7f28b09277eeba509ecef34aa01 100644 --- a/sql/share/charsets/ascii.xml +++ b/sql/share/charsets/ascii.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp1250.xml b/sql/share/charsets/cp1250.xml index e6681a625a2855a039e56c9d3855a6f3e8a4d2af..55379ef6618ac7ff8333c61ced367fd7b364c5b2 100644 --- a/sql/share/charsets/cp1250.xml +++ b/sql/share/charsets/cp1250.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp1251.xml b/sql/share/charsets/cp1251.xml index 4cd584c0bf560066cb3841f6ffa5e45e12a1e139..33a36289e5e01355839450fb8fc741c139ebb367 100644 --- a/sql/share/charsets/cp1251.xml +++ b/sql/share/charsets/cp1251.xml @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp1256.xml b/sql/share/charsets/cp1256.xml index ab0ba855f3bab1f7ff96160261d7ddb3610ba12f..4584b30c0c3c986a4c977a4d72305ba8e65a7d4b 100644 --- a/sql/share/charsets/cp1256.xml +++ b/sql/share/charsets/cp1256.xml @@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp1257.xml b/sql/share/charsets/cp1257.xml index 61d1d276b0a7929101ba0550f11651f91e89baa2..d2f3d59fefa985412d6c3465ef195146f4f0b859 100644 --- a/sql/share/charsets/cp1257.xml +++ b/sql/share/charsets/cp1257.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp850.xml b/sql/share/charsets/cp850.xml index 06465540a7555056290bcdadb6fbc5c768466412..32eb37e3c8067ed0fcaaba3b565d5ffa4eb19d5a 100644 --- a/sql/share/charsets/cp850.xml +++ b/sql/share/charsets/cp850.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp852.xml b/sql/share/charsets/cp852.xml index e0c574d2ea1a26577045bdcb0f38f116e9523489..f038fa92d9b114a87c88cdbd6659a61c00abdc41 100644 --- a/sql/share/charsets/cp852.xml +++ b/sql/share/charsets/cp852.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/cp866.xml b/sql/share/charsets/cp866.xml index 9cd8c8c504bc3d2ff9407983e4c4721020640a94..3245326afc2f962bd378544e946609589a7a3660 100644 --- a/sql/share/charsets/cp866.xml +++ b/sql/share/charsets/cp866.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/dec8.xml b/sql/share/charsets/dec8.xml index 68949309ced565b9d521f40af3a4eb70637d0c81..2569713318a515eb181694ae2a09a421448340ad 100644 --- a/sql/share/charsets/dec8.xml +++ b/sql/share/charsets/dec8.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/geostd8.xml b/sql/share/charsets/geostd8.xml index 822cc083724b0064d4d0528ac3b8a609473d1157..bcb3148feb89bf67c66e150532c8465b46e0acc6 100644 --- a/sql/share/charsets/geostd8.xml +++ b/sql/share/charsets/geostd8.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/greek.xml b/sql/share/charsets/greek.xml index cbbe22e675a9568e830508f6ad0ce4a33168adf7..9ab0cb683380c43ddc8ce77a84f4f790fd1f0cc5 100644 --- a/sql/share/charsets/greek.xml +++ b/sql/share/charsets/greek.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/hebrew.xml b/sql/share/charsets/hebrew.xml index 562fa4f47486dda1def40eb1b7519a44747601e2..295440b4e3e535057eb0fda4398d60442f93bef1 100644 --- a/sql/share/charsets/hebrew.xml +++ b/sql/share/charsets/hebrew.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/hp8.xml b/sql/share/charsets/hp8.xml index b17f75ed73eb05c8b070aaa9d698ff016b9e633b..628ebe7f34c31e488431c0ab49c58e98ae9ac8c5 100644 --- a/sql/share/charsets/hp8.xml +++ b/sql/share/charsets/hp8.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/keybcs2.xml b/sql/share/charsets/keybcs2.xml index 7c2775ba5c3664dd5f61d264cc2f7fa2a3fe9e03..a6079319628a0cbca07e4964e0c38c238bc12c9d 100644 --- a/sql/share/charsets/keybcs2.xml +++ b/sql/share/charsets/keybcs2.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/koi8r.xml b/sql/share/charsets/koi8r.xml index 25264d4f9ce2fa4cbe7b332cd572f9baf1f54999..7a8a936f7a750368a6dc369ca1a2ee475fd73896 100644 --- a/sql/share/charsets/koi8r.xml +++ b/sql/share/charsets/koi8r.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/koi8u.xml b/sql/share/charsets/koi8u.xml index a2f5de9feb25f9bd56235c114ad08a947ea4b78f..83e85b84360efe13c4eb25b16ab46221ed958c97 100644 --- a/sql/share/charsets/koi8u.xml +++ b/sql/share/charsets/koi8u.xml @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA diff --git a/sql/share/charsets/languages.html b/sql/share/charsets/languages.html index 3263d6a2ae2697d1c3d8b43e341bac61993689f2..9adce32f3933aaf6d31f9f91f475597d96389b37 100644 --- a/sql/share/charsets/languages.html +++ b/sql/share/charsets/languages.html @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA #
 (
diff --git a/sql/share/charsets/latin1.xml b/sql/share/charsets/latin1.xml
index 68307847d91a423feae721dcea9651b4467e6bd0..f88a2840f56fb575df2f848aada97ba7622b708f 100644
--- a/sql/share/charsets/latin1.xml
+++ b/sql/share/charsets/latin1.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/latin2.xml b/sql/share/charsets/latin2.xml
index 29ff4cb974befa3ebc0008ebd61fb3b681522224..20e7803cefe248054d4c077756fd93ae9074ded4 100644
--- a/sql/share/charsets/latin2.xml
+++ b/sql/share/charsets/latin2.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/latin5.xml b/sql/share/charsets/latin5.xml
index ca7dd106de51ef78bc2a8ea3a3257ecceee9603a..727019ccd947fd10859670682dc2a4dcf7259ba9 100644
--- a/sql/share/charsets/latin5.xml
+++ b/sql/share/charsets/latin5.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/latin7.xml b/sql/share/charsets/latin7.xml
index 81866c23bbdb9580bbcb274be899143ea31f1b5a..78b7dda61f2c57f98aa2c6dafd0ef3db0040147b 100644
--- a/sql/share/charsets/latin7.xml
+++ b/sql/share/charsets/latin7.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/macce.xml b/sql/share/charsets/macce.xml
index 4fa46301d2edc9ab8ccdb735e8c7c22cefdb15c2..2a601b7b66841c81b4f04b94d47937f1620a4093 100644
--- a/sql/share/charsets/macce.xml
+++ b/sql/share/charsets/macce.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/macroman.xml b/sql/share/charsets/macroman.xml
index 4ee8dc1f9524a8daa5424140075fb2bc861d9e7c..711a391457cfdb9ab4f443bdbc7cc21319192d32 100644
--- a/sql/share/charsets/macroman.xml
+++ b/sql/share/charsets/macroman.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/share/charsets/swe7.xml b/sql/share/charsets/swe7.xml
index d881f1e7d62b225e3d76dcdf943ff2f28406a458..513c3eeb8d701c7dbe69ef8f23de04891f0a749e 100644
--- a/sql/share/charsets/swe7.xml
+++ b/sql/share/charsets/swe7.xml
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 
 
diff --git a/sql/signal_handler.cc b/sql/signal_handler.cc
index 76af7733fb9cf06c5c5dbf419604b33c2d60e3de..d9b3fece854d04c444b4f2a48534a44f74772064 100644
--- a/sql/signal_handler.cc
+++ b/sql/signal_handler.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "my_global.h"
 #include 
diff --git a/sql/slave.cc b/sql/slave.cc
index 6fe6de6872a3a34db054c64ee9e571c785324d5c..0ebed343a3dbbe0a3fb96c457201205dee9e2800 100644
--- a/sql/slave.cc
+++ b/sql/slave.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /**
@@ -217,7 +217,7 @@ static void set_slave_max_allowed_packet(THD *thd, MYSQL *mysql)
 void init_thread_mask(int* mask,Master_info* mi,bool inverse)
 {
   bool set_io = mi->slave_running, set_sql = mi->rli.slave_running;
-  register int tmp_mask=0;
+  int tmp_mask=0;
   DBUG_ENTER("init_thread_mask");
 
   if (set_io)
diff --git a/sql/slave.h b/sql/slave.h
index 58c8106614db1f9b19ed330ed5200474732268da..11a8fa1e6557903627d540098ea67cd8cdd63e08 100644
--- a/sql/slave.h
+++ b/sql/slave.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SLAVE_H
 #define SLAVE_H
diff --git a/sql/sp.cc b/sql/sp.cc
index a5a14ec8d85b81aa2611120e18468f49c2a19757..966ea0280b48c835e8814a523623e7f7014456ca 100644
--- a/sql/sp.cc
+++ b/sql/sp.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sp.h b/sql/sp.h
index df60482f8fd2a05dfacb345e1fa171404a984910..6dea08ea6bcb35b380c041de057605e1e1934064 100644
--- a/sql/sp.h
+++ b/sql/sp.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SP_H_
 #define _SP_H_
diff --git a/sql/sp_cache.cc b/sql/sp_cache.cc
index bafd0f34ab6f14e707e9d47ffd4ead117c2dade1..f99c0bd0b6e74d13d46a653d055062552b2fe05c 100644
--- a/sql/sp_cache.cc
+++ b/sql/sp_cache.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sp_cache.h b/sql/sp_cache.h
index b21d4c4bf250be8f3462fc7effcc5df4dcc88b31..607495666fcf3eda9ecd2b3645b9370c6f7bead0 100644
--- a/sql/sp_cache.h
+++ b/sql/sp_cache.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SP_CACHE_H_
 #define _SP_CACHE_H_
diff --git a/sql/sp_head.cc b/sql/sp_head.cc
index 852ba4530907ad6bbfd0c7156ab46f6456bf5795..5c5688be4a3caa857ba87c14cb86eab3b2dbc1d1 100644
--- a/sql/sp_head.cc
+++ b/sql/sp_head.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include                           /* NO_EMBEDDED_ACCESS_CHECKS */
 #include "sql_priv.h"
@@ -212,7 +212,7 @@ sp_get_flags_for_command(LEX *lex)
 
   switch (lex->sql_command) {
   case SQLCOM_SELECT:
-    if (lex->result)
+    if (lex->result && !lex->analyze_stmt)
     {
       flags= 0;                      /* This is a SELECT with INTO clause */
       break;
diff --git a/sql/sp_head.h b/sql/sp_head.h
index 604190079cbee90710a2df98a1356f308789610f..2b3e568fb9adb5be972c1a7af1a122297bbeb77f 100644
--- a/sql/sp_head.h
+++ b/sql/sp_head.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SP_HEAD_H_
 #define _SP_HEAD_H_
diff --git a/sql/sp_pcontext.cc b/sql/sp_pcontext.cc
index faf5a2de891bd0475663235332c9e609cda6e244..a0ef70c891640445250f4278552bb81c2c467400 100644
--- a/sql/sp_pcontext.cc
+++ b/sql/sp_pcontext.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sp_pcontext.h b/sql/sp_pcontext.h
index efe9531c3a037211dec6aaa0f6b588236bb2e70f..4d500c15f8c6792a43b205a11acd0961da885f4e 100644
--- a/sql/sp_pcontext.h
+++ b/sql/sp_pcontext.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SP_PCONTEXT_H_
 #define _SP_PCONTEXT_H_
diff --git a/sql/sp_rcontext.cc b/sql/sp_rcontext.cc
index 4d74d2721f1a8d4de855759e51268d39bb3eebd7..c3ef676f90bd2a7a1efb07193293bad982a5960f 100644
--- a/sql/sp_rcontext.cc
+++ b/sql/sp_rcontext.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sp_rcontext.h b/sql/sp_rcontext.h
index 2640490fefa29faa462037936def6347ff13c576..a0a009adb8f82d9dadc01b7f3c7abe480e16e8cd 100644
--- a/sql/sp_rcontext.h
+++ b/sql/sp_rcontext.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SP_RCONTEXT_H_
 #define _SP_RCONTEXT_H_
diff --git a/sql/spatial.cc b/sql/spatial.cc
index e8d2fb423831b6d56bdf30f2c750387f4b4ec15f..b8378e4fdbb17fc9d993cdfed73fb215787c46b0 100644
--- a/sql/spatial.cc
+++ b/sql/spatial.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/spatial.h b/sql/spatial.h
index 6f50acac984ab2e9403480a8c53b6a286f853d71..79a3553bc6319bdd9987b2c6da411331cb326244 100644
--- a/sql/spatial.h
+++ b/sql/spatial.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _spatial_h
 #define _spatial_h
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index 6448f65a2cdb6e558d417aca2ac13da739f8af8e..4569121aba295aa4b04d4a02c30a650113c48b40 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /*
@@ -10629,7 +10629,7 @@ int fill_schema_applicable_roles(THD *thd, TABLE_LIST *tables, COND *cond)
 
 int wild_case_compare(CHARSET_INFO *cs, const char *str,const char *wildstr)
 {
-  reg3 int flag;
+  int flag;
   DBUG_ENTER("wild_case_compare");
   DBUG_PRINT("enter",("str: '%s'  wildstr: '%s'",str,wildstr));
   while (*wildstr)
@@ -11510,6 +11510,7 @@ static bool send_plugin_request_packet(MPVIO_EXT *mpvio,
     ((st_mysql_auth *) (plugin_decl(mpvio->plugin)->info))->client_auth_plugin;
 
   DBUG_EXECUTE_IF("auth_disconnect", { vio_close(net->vio); DBUG_RETURN(1); });
+  DBUG_EXECUTE_IF("auth_invalid_plugin", client_auth_plugin="foo/bar"; );
   DBUG_ASSERT(client_auth_plugin);
 
   /*
diff --git a/sql/sql_acl.h b/sql/sql_acl.h
index fc3fcdc534a51fac042aa85fb0f8cab9313c7b0f..c191cb83de507803606352ece0dade49344d9032 100644
--- a/sql/sql_acl.h
+++ b/sql/sql_acl.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "my_global.h"                          /* NO_EMBEDDED_ACCESS_CHECKS */
 #include "violite.h"                            /* SSL_type */
diff --git a/sql/sql_admin.cc b/sql/sql_admin.cc
index 0ec6719037cd77b8f26e05f3cb30ba2d2d2b5682..4afaff58223f24c2bc29723fc7dd57a29ea47d5e 100644
--- a/sql/sql_admin.cc
+++ b/sql/sql_admin.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "sql_class.h"                       // THD and my_global.h
 #include "keycaches.h"                       // get_key_cache
diff --git a/sql/sql_admin.h b/sql/sql_admin.h
index 96594fad0cbf18fd04def9c711581acab93b85dc..e764ebb14720a5118d3c13019fc0072e965ad24d 100644
--- a/sql/sql_admin.h
+++ b/sql/sql_admin.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_TABLE_MAINTENANCE_H
 #define SQL_TABLE_MAINTENANCE_H
diff --git a/sql/sql_alter.cc b/sql/sql_alter.cc
index ddac271146e642a23fec87d4cf8e3099393c3103..8ec68bf48765b3cea37dc77bb8ce4583b2aec26a 100644
--- a/sql/sql_alter.cc
+++ b/sql/sql_alter.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "sql_parse.h"                       // check_access
 #include "sql_table.h"                       // mysql_alter_table,
@@ -193,6 +193,18 @@ bool Sql_cmd_alter_table::execute(THD *thd)
   SELECT_LEX *select_lex= &lex->select_lex;
   /* first table of first SELECT_LEX */
   TABLE_LIST *first_table= (TABLE_LIST*) select_lex->table_list.first;
+
+  const bool used_engine= lex->create_info.used_fields & HA_CREATE_USED_ENGINE;
+  DBUG_ASSERT((m_storage_engine_name.str != NULL) == used_engine);
+  if (used_engine)
+  {
+    if (resolve_storage_engine_with_error(thd, &lex->create_info.db_type,
+                                          lex->create_info.tmp_table()))
+      return true; // Engine not found, substitution is not allowed
+    if (!lex->create_info.db_type) // Not found, but substitution is allowed
+      lex->create_info.used_fields&= ~HA_CREATE_USED_ENGINE;
+  }
+
   /*
     Code in mysql_alter_table() may modify its HA_CREATE_INFO argument,
     so we have to use a copy of this structure to make execution
diff --git a/sql/sql_alter.h b/sql/sql_alter.h
index a4505f1d6c1071e18c9e8ba0fa104e26a392751b..473208f067558e0dbb6f51a4220e9404c496c3b1 100644
--- a/sql/sql_alter.h
+++ b/sql/sql_alter.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_ALTER_TABLE_H
 #define SQL_ALTER_TABLE_H
@@ -385,7 +385,8 @@ class Sql_cmd_common_alter_table : public Sql_cmd
   Sql_cmd_alter_table represents the generic ALTER TABLE statement.
   @todo move Alter_info and other ALTER specific structures from Lex here.
 */
-class Sql_cmd_alter_table : public Sql_cmd_common_alter_table
+class Sql_cmd_alter_table : public Sql_cmd_common_alter_table,
+                            public Storage_engine_name
 {
 public:
   /**
@@ -397,6 +398,8 @@ class Sql_cmd_alter_table : public Sql_cmd_common_alter_table
   ~Sql_cmd_alter_table()
   {}
 
+  Storage_engine_name *option_storage_engine_name() { return this; }
+
   bool execute(THD *thd);
 };
 
diff --git a/sql/sql_analyse.cc b/sql/sql_analyse.cc
index 45f4f87f172e78d53a8c9e03018767bcda264ede..902b78932c8cac5279939cfe263f472970943938 100644
--- a/sql/sql_analyse.cc
+++ b/sql/sql_analyse.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /* Analyse database */
diff --git a/sql/sql_analyse.h b/sql/sql_analyse.h
index 738737f0edcaa51809dc376a7bffd1bae91fa7a9..440e49d509c6159b33e1cf1e67e4b159cf26d2de 100644
--- a/sql/sql_analyse.h
+++ b/sql/sql_analyse.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Analyse database */
diff --git a/sql/sql_analyze_stmt.cc b/sql/sql_analyze_stmt.cc
index 68299d024fdb0c8332cc0af62610d26f5eeff96e..0d72bed3b38159dbf001e1d94552af5bb7f2d43b 100644
--- a/sql/sql_analyze_stmt.cc
+++ b/sql/sql_analyze_stmt.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation				// gcc: Class implementation
diff --git a/sql/sql_analyze_stmt.h b/sql/sql_analyze_stmt.h
index 7d3d08534174b7dae0f9ee79370ea98c1134c213..321a233c5eccee999c5536580ef2993cd8579027 100644
--- a/sql/sql_analyze_stmt.h
+++ b/sql/sql_analyze_stmt.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
 
diff --git a/sql/sql_array.h b/sql/sql_array.h
index 3e75a9ea546b92bf442b35ff06d1ba73362de940..32e2a6b68d20980f595ea310cc7269e0ffb86bcd 100644
--- a/sql/sql_array.h
+++ b/sql/sql_array.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 
diff --git a/sql/sql_audit.cc b/sql/sql_audit.cc
index 60a75cb06e7fd6d0f1782768b6bb6bcdf47c39fa..cee0ac2287c2d3298e22d626dadcbf820d44a47d 100644
--- a/sql/sql_audit.cc
+++ b/sql/sql_audit.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
@@ -212,6 +212,7 @@ void mysql_audit_acquire_plugins(THD *thd, ulong *event_class_mask)
   {
     plugin_foreach(thd, acquire_plugins, MYSQL_AUDIT_PLUGIN, event_class_mask);
     add_audit_mask(thd->audit_class_mask, event_class_mask);
+    thd->audit_plugin_version= global_plugin_version;
   }
   DBUG_VOID_RETURN;
 }
@@ -241,6 +242,20 @@ void mysql_audit_notify(THD *thd, uint event_class, uint event_subtype, ...)
 }
 
 
+/**
+  Check if there were changes in the state of plugins
+  so we need to do the mysql_audit_release asap.
+
+  @param[in] thd
+
+*/
+
+my_bool mysql_audit_release_required(THD *thd)
+{
+  return thd && (thd->audit_plugin_version != global_plugin_version);
+}
+
+
 /**
   Release any resources associated with the current thd.
   
@@ -276,6 +291,7 @@ void mysql_audit_release(THD *thd)
   /* Reset the state of thread values */
   reset_dynamic(&thd->audit_class_plugins);
   bzero(thd->audit_class_mask, sizeof(thd->audit_class_mask));
+  thd->audit_plugin_version= -1;
 }
 
 
diff --git a/sql/sql_audit.h b/sql/sql_audit.h
index 68106f099cc1876d946c815f9f1fe283fdd738c2..9a7467572010d9d2cea0b9228dc15c315f0e7d2c 100644
--- a/sql/sql_audit.h
+++ b/sql/sql_audit.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #include 
@@ -60,6 +60,7 @@ static inline void mysql_audit_notify(THD *thd, uint event_class,
 #define mysql_audit_connection_enabled() 0
 #define mysql_audit_table_enabled() 0
 #endif
+extern my_bool mysql_audit_release_required(THD *thd);
 extern void mysql_audit_release(THD *thd);
 
 #define MAX_USER_HOST_SIZE 512
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index 3a7ffdb656acd962bf3d9ca7c8ba30182a1293db..e8bdff8b48fccb6e2bc5b6f2e7827121a0af4248 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /* Basic functions needed by many modules */
@@ -1205,7 +1205,7 @@ bool close_temporary_tables(THD *thd)
       my_thread_id save_pseudo_thread_id= thd->variables.pseudo_thread_id;
       char db_buf[FN_REFLEN];
       String db(db_buf, sizeof(db_buf), system_charset_info);
-
+      bool at_least_one_create_logged;
       /* Set pseudo_thread_id to be that of the processed table */
       thd->variables.pseudo_thread_id= tmpkeyval(thd, table);
 
@@ -1217,56 +1217,62 @@ bool close_temporary_tables(THD *thd)
          within the sublist of common pseudo_thread_id to create single
          DROP query 
       */
-      for (;
+      for (at_least_one_create_logged= false;
            table && is_user_table(table) &&
              tmpkeyval(thd, table) == thd->variables.pseudo_thread_id &&
              table->s->db.length == db.length() &&
              memcmp(table->s->db.str, db.ptr(), db.length()) == 0;
            table= next)
       {
-        /*
-          We are going to add ` around the table names and possible more
-          due to special characters
-        */
-        append_identifier(thd, &s_query, table->s->table_name.str,
-                          strlen(table->s->table_name.str));
-        s_query.append(',');
+        if (table->s->table_creation_was_logged)
+        {
+          at_least_one_create_logged= true;
+          /*
+            We are going to add ` around the table names and possible more
+            due to special characters
+          */
+          append_identifier(thd, &s_query, table->s->table_name.str,
+                            strlen(table->s->table_name.str));
+          s_query.append(',');
+        }
         next= table->next;
         mysql_lock_remove(thd, thd->lock, table);
         close_temporary(table, 1, 1);
       }
-      thd->clear_error();
-      CHARSET_INFO *cs_save= thd->variables.character_set_client;
-      thd->variables.character_set_client= system_charset_info;
-      thd->thread_specific_used= TRUE;
-      Query_log_event qinfo(thd, s_query.ptr(),
-                            s_query.length() - 1 /* to remove trailing ',' */,
-                            FALSE, TRUE, FALSE, 0);
-      qinfo.db= db.ptr();
-      qinfo.db_len= db.length();
-      thd->variables.character_set_client= cs_save;
-
-      thd->get_stmt_da()->set_overwrite_status(true);
-      thd->transaction.stmt.mark_dropped_temp_table();
-      if ((error= (mysql_bin_log.write(&qinfo) || error)))
+      if (at_least_one_create_logged)
       {
-        /*
-          If we're here following THD::cleanup, thence the connection
-          has been closed already. So lets print a message to the
-          error log instead of pushing yet another error into the
-          stmt_da.
-
-          Also, we keep the error flag so that we propagate the error
-          up in the stack. This way, if we're the SQL thread we notice
-          that close_temporary_tables failed. (Actually, the SQL
-          thread only calls close_temporary_tables while applying old
-          Start_log_event_v3 events.)
-        */
-        sql_print_error("Failed to write the DROP statement for "
-                        "temporary tables to binary log");
+        thd->clear_error();
+        CHARSET_INFO *cs_save= thd->variables.character_set_client;
+        thd->variables.character_set_client= system_charset_info;
+        thd->thread_specific_used= TRUE;
+        Query_log_event qinfo(thd, s_query.ptr(),
+                              s_query.length() - 1 /* to remove trailing ',' */,
+                              FALSE, TRUE, FALSE, 0);
+        qinfo.db= db.ptr();
+        qinfo.db_len= db.length();
+        thd->variables.character_set_client= cs_save;
+
+        thd->get_stmt_da()->set_overwrite_status(true);
+        thd->transaction.stmt.mark_dropped_temp_table();
+        if ((error= (mysql_bin_log.write(&qinfo) || error)))
+        {
+          /*
+            If we're here following THD::cleanup, thence the connection
+            has been closed already. So lets print a message to the
+            error log instead of pushing yet another error into the
+            stmt_da.
+
+            Also, we keep the error flag so that we propagate the error
+            up in the stack. This way, if we're the SQL thread we notice
+            that close_temporary_tables failed. (Actually, the SQL
+            thread only calls close_temporary_tables while applying old
+            Start_log_event_v3 events.)
+          */
+          sql_print_error("Failed to write the DROP statement for "
+                          "temporary tables to binary log");
+        }
+        thd->get_stmt_da()->set_overwrite_status(false);
       }
-      thd->get_stmt_da()->set_overwrite_status(false);
-
       thd->variables.pseudo_thread_id= save_pseudo_thread_id;
       thd->thread_specific_used= save_thread_specific_used;
     }
@@ -4389,10 +4395,10 @@ lock_table_names(THD *thd, const DDL_options_st &options,
     mdl_requests.push_front(&global_request);
 
     if (create_table)
-    #ifdef WITH_WSREP
-      if (thd->lex->sql_command != SQLCOM_CREATE_TABLE &&
-          thd->wsrep_exec_mode != REPL_RECV)
-    #endif
+#ifdef WITH_WSREP
+      if (!(thd->lex->sql_command == SQLCOM_CREATE_TABLE &&
+	    thd->wsrep_exec_mode == REPL_RECV))
+#endif
       lock_wait_timeout= 0;                     // Don't wait for timeout
   }
 
@@ -4403,6 +4409,7 @@ lock_table_names(THD *thd, const DDL_options_st &options,
     bool res= thd->mdl_context.acquire_locks(&mdl_requests, lock_wait_timeout);
     if (create_table)
       thd->pop_internal_handler();
+
     if (!res)
       DBUG_RETURN(FALSE);                       // Got locks
 
@@ -4530,8 +4537,7 @@ open_tables_check_upgradable_mdl(THD *thd, TABLE_LIST *tables_start,
 */
 
 bool open_tables(THD *thd, const DDL_options_st &options,
-                 TABLE_LIST **start, uint *counter,
-                 Sroutine_hash_entry **sroutine_to_open_list, uint flags,
+                 TABLE_LIST **start, uint *counter, uint flags,
                  Prelocking_strategy *prelocking_strategy)
 {
   /*
@@ -4574,9 +4580,10 @@ bool open_tables(THD *thd, const DDL_options_st &options,
 
   has_prelocking_list= thd->lex->requires_prelocking();
   table_to_open= start;
-  sroutine_to_open= sroutine_to_open_list;
+  sroutine_to_open= &thd->lex->sroutines_list.first;
   *counter= 0;
   THD_STAGE_INFO(thd, stage_opening_tables);
+  prelocking_strategy->reset(thd);
 
   /*
     If we are executing LOCK TABLES statement or a DDL statement
@@ -4634,8 +4641,7 @@ bool open_tables(THD *thd, const DDL_options_st &options,
     elements in prelocking list/set.
   */
   while (*table_to_open  ||
-         (thd->locked_tables_mode <= LTM_LOCK_TABLES &&
-          *sroutine_to_open))
+         (thd->locked_tables_mode <= LTM_LOCK_TABLES && *sroutine_to_open))
   {
     /*
       For every table in the list of tables to open, try to find or open
@@ -4755,6 +4761,8 @@ bool open_tables(THD *thd, const DDL_options_st &options,
         }
       }
     }
+    if ((error= prelocking_strategy->handle_end(thd)))
+      goto error;
   }
 
   /*
@@ -8009,7 +8017,7 @@ bool setup_fields(THD *thd, Item **ref_pointer_array,
                   List *sum_func_list, List *pre_fix,
                   bool allow_sum_func)
 {
-  reg2 Item *item;
+  Item *item;
   enum_mark_columns save_mark_used_columns= thd->mark_used_columns;
   nesting_map save_allow_sum_func= thd->lex->allow_sum_func;
   List_iterator it(fields);
@@ -9216,8 +9224,7 @@ my_bool mysql_rm_tmp_tables(void)
     {
       file=dirp->dir_entry+idx;
 
-      if (!memcmp(file->name, tmp_file_prefix,
-                  tmp_file_prefix_length))
+      if (!strncmp(file->name, tmp_file_prefix, tmp_file_prefix_length))
       {
         char *ext= fn_ext(file->name);
         uint ext_len= strlen(ext);
diff --git a/sql/sql_base.h b/sql/sql_base.h
index 53b5885460b6df1335d7bf7cf5a31c08346b24bf..91eef7369acc5ee7ed7adf380d5d5ab7bebb0699 100644
--- a/sql/sql_base.h
+++ b/sql/sql_base.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_BASE_INCLUDED
 #define SQL_BASE_INCLUDED
@@ -252,17 +252,7 @@ lock_table_names(THD *thd, TABLE_LIST *table_list,
 }
 bool open_tables(THD *thd, const DDL_options_st &options,
                  TABLE_LIST **tables, uint *counter,
-                 Sroutine_hash_entry **sroutine_to_open, uint flags,
-                 Prelocking_strategy *prelocking_strategy);
-
-static inline bool
-open_tables(THD *thd, const DDL_options_st &options, TABLE_LIST **tables,
-            uint *counter, uint flags, Prelocking_strategy *prelocking_strategy)
-{
-  return open_tables(thd, options, tables, counter,
-                     &thd->lex->sroutines_list.first, flags,
-                     prelocking_strategy);
-}
+                 uint flags, Prelocking_strategy *prelocking_strategy);
 
 static inline bool
 open_tables(THD *thd, TABLE_LIST **tables, uint *counter, uint flags,
@@ -442,6 +432,7 @@ class Prelocking_strategy
 public:
   virtual ~Prelocking_strategy() { }
 
+  virtual void reset(THD *thd) { };
   virtual bool handle_routine(THD *thd, Query_tables_list *prelocking_ctx,
                               Sroutine_hash_entry *rt, sp_head *sp,
                               bool *need_prelocking) = 0;
@@ -449,6 +440,7 @@ class Prelocking_strategy
                             TABLE_LIST *table_list, bool *need_prelocking) = 0;
   virtual bool handle_view(THD *thd, Query_tables_list *prelocking_ctx,
                            TABLE_LIST *table_list, bool *need_prelocking)= 0;
+  virtual bool handle_end(THD *thd) { return 0; };
 };
 
 
diff --git a/sql/sql_binlog.cc b/sql/sql_binlog.cc
index 2e861d00f103549cdfbc27715cf6d0bd091eb267..1105c9a55ec40d21f0c977ebedf0c0b5669db604 100644
--- a/sql/sql_binlog.cc
+++ b/sql/sql_binlog.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sql_binlog.h b/sql/sql_binlog.h
index 3a6d561701abd3c61871b2fd790c91907623d14a..d10d78e1e3e7316011f1c7fc6cac215f53444a99 100644
--- a/sql/sql_binlog.h
+++ b/sql/sql_binlog.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_BINLOG_INCLUDED
 #define SQL_BINLOG_INCLUDED
diff --git a/sql/sql_bitmap.h b/sql/sql_bitmap.h
index 5a2caf89fe28c9d33d6696e59b2b2464bf53ef29..fb40d003ccdd45369c23b4847c78a3ff3412caa3 100644
--- a/sql/sql_bitmap.h
+++ b/sql/sql_bitmap.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Implementation of a bitmap type.
diff --git a/sql/sql_bootstrap.cc b/sql/sql_bootstrap.cc
index 30d03029ce62f9839c34cc2542f5f1aa66d2047f..ec06854abdd299341662b0481c40329781abdc82 100644
--- a/sql/sql_bootstrap.cc
+++ b/sql/sql_bootstrap.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 #include 
diff --git a/sql/sql_bootstrap.h b/sql/sql_bootstrap.h
index b8a302a8646ebc9925d215bdfa8d519562f613b2..f12d66a522e1fa6629f2bf0e61557faf9327ed3f 100644
--- a/sql/sql_bootstrap.h
+++ b/sql/sql_bootstrap.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 #ifndef SQL_BOOTSTRAP_H
diff --git a/sql/sql_builtin.cc.in b/sql/sql_builtin.cc.in
index a40a064dc4bbdf5434ecd79803c31a5e57d068f5..e666985eb8618be5c034c7ec0a73ae697f7a6628 100644
--- a/sql/sql_builtin.cc.in
+++ b/sql/sql_builtin.cc.in
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/sql/sql_cache.cc b/sql/sql_cache.cc
index df6c7c35e5a85bd9ef86f4767231cc3fefa242ad..44ae9d329068a3b5b4731ca7f374c3028a972931 100644
--- a/sql/sql_cache.cc
+++ b/sql/sql_cache.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Description of the query cache:
diff --git a/sql/sql_cache.h b/sql/sql_cache.h
index 657caf4a5bc90e24c68186bcf09593c7d89c96f4..82d18ce76cfe6064695d5e5935e731eedbc16a15 100644
--- a/sql/sql_cache.h
+++ b/sql/sql_cache.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SQL_CACHE_H
 #define _SQL_CACHE_H
diff --git a/sql/sql_callback.h b/sql/sql_callback.h
index 316f94a0213f1d924b1f5714948c16a226a5ff83..1f798ad5ac7892902d49104302daa804d2b9c53e 100644
--- a/sql/sql_callback.h
+++ b/sql/sql_callback.h
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 #ifndef SQL_CALLBACK_INCLUDED
diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index 6fa8c100894c90b76b04bf115b2aa0103d57d36e..6bcff6d1fca288123e38ed2b44f3101c4f37aafd 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 
@@ -776,6 +776,9 @@ THD::THD(bool is_wsrep_applier)
    waiting_on_group_commit(FALSE), has_waiter(FALSE),
    spcont(NULL),
    m_parser_state(NULL),
+#ifndef EMBEDDED_LIBRARY
+   audit_plugin_version(-1),
+#endif
 #if defined(ENABLED_DEBUG_SYNC)
    debug_sync_control(0),
 #endif /* defined(ENABLED_DEBUG_SYNC) */
@@ -1562,7 +1565,6 @@ THD::~THD()
 
   mdl_context.destroy();
   ha_close_connection(this);
-  mysql_audit_release(this);
   plugin_thdvar_cleanup(this);
 
   main_security_ctx.destroy();
diff --git a/sql/sql_class.h b/sql/sql_class.h
index c0dc42deefe13148adffcf463e4a68943beaa31c..e3bc572ed0ce96eb6fc8d0db0534b54dae145431 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_CLASS_INCLUDED
 #define SQL_CLASS_INCLUDED
@@ -2978,6 +2978,7 @@ class THD :public Statement,
     added to the list of audit plugins which are currently in use.
   */
   unsigned long audit_class_mask[MYSQL_AUDIT_CLASS_MASK_SIZE];
+  int audit_plugin_version;
 #endif
 
 #if defined(ENABLED_DEBUG_SYNC)
@@ -5195,7 +5196,7 @@ class Unique :public Sql_alloc
   inline static int get_cost_calc_buff_size(size_t nkeys, uint key_size,
                                             ulonglong max_in_memory_size)
   {
-    register ulonglong max_elems_in_tree=
+    ulonglong max_elems_in_tree=
       max_in_memory_size / ALIGN_SIZE(sizeof(TREE_ELEMENT)+key_size);
     return (int) (sizeof(uint)*(1 + nkeys/max_elems_in_tree));
   }
diff --git a/sql/sql_client.cc b/sql/sql_client.cc
index efac01f9894f456ea291b5b0107dcc3575c276de..bd60b17ea954428bf91cf7d49de56b01a0bef185 100644
--- a/sql/sql_client.cc
+++ b/sql/sql_client.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   This files defines some MySQL C API functions that are server specific
diff --git a/sql/sql_cmd.h b/sql/sql_cmd.h
index 904578134b48e91e77dbbccc98b3fb114a66ab52..c237bb9270adf00719e4ae57b9af0dc45961528f 100644
--- a/sql/sql_cmd.h
+++ b/sql/sql_cmd.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file Representation of an SQL command.
@@ -102,6 +102,31 @@ enum enum_sql_command {
   SQLCOM_END
 };
 
+
+class Storage_engine_name
+{
+protected:
+  LEX_CSTRING m_storage_engine_name;
+public:
+  Storage_engine_name()
+  {
+    m_storage_engine_name.str= NULL;
+    m_storage_engine_name.length= 0;
+  }
+  Storage_engine_name(const LEX_CSTRING &name)
+   :m_storage_engine_name(name)
+  { }
+  Storage_engine_name(const LEX_STRING &name)
+  {
+    m_storage_engine_name.str= name.str;
+    m_storage_engine_name.length= name.length;
+  }
+  bool resolve_storage_engine_with_error(THD *thd,
+                                         handlerton **ha,
+                                         bool tmp_table);
+};
+
+
 /**
   @class Sql_cmd - Representation of an SQL command.
 
@@ -145,6 +170,11 @@ class Sql_cmd : public Sql_alloc
   */
   virtual bool execute(THD *thd) = 0;
 
+  virtual Storage_engine_name *option_storage_engine_name()
+  {
+    return NULL;
+  }
+
 protected:
   Sql_cmd()
   {}
@@ -161,4 +191,15 @@ class Sql_cmd : public Sql_alloc
   }
 };
 
+
+class Sql_cmd_create_table: public Sql_cmd,
+                            public Storage_engine_name
+{
+public:
+  enum_sql_command sql_command_code() const { return SQLCOM_CREATE_TABLE; }
+  Storage_engine_name *option_storage_engine_name() { return this; }
+  bool execute(THD *thd);
+};
+
+
 #endif // SQL_CMD_INCLUDED
diff --git a/sql/sql_connect.cc b/sql/sql_connect.cc
index abb234ab4b1f0d5b7f394cf828ccd21251a05dde..a6a01b140cf9d165fc81784c2bafd564663cfc07 100644
--- a/sql/sql_connect.cc
+++ b/sql/sql_connect.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /*
@@ -1326,7 +1326,8 @@ void do_handle_one_connection(THD *thd_arg)
 
     while (thd_is_connection_alive(thd))
     {
-      mysql_audit_release(thd);
+      if (mysql_audit_release_required(thd))
+        mysql_audit_release(thd);
       if (do_command(thd))
 	break;
     }
diff --git a/sql/sql_connect.h b/sql/sql_connect.h
index bab171606babf8a71971b25e264cdeda079e631d..2b00c2d6e404f502a905ab6d7894422f9c33f41c 100644
--- a/sql/sql_connect.h
+++ b/sql/sql_connect.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_CONNECT_INCLUDED
 #define SQL_CONNECT_INCLUDED
diff --git a/sql/sql_const.h b/sql/sql_const.h
index 1d6549f777f8528235f2e457f7faba0dc20c8ee2..2e5844f8e3e03297aa26ac3c9113085b21324424 100644
--- a/sql/sql_const.h
+++ b/sql/sql_const.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /**
   @file
@@ -234,6 +234,14 @@
 #define HEAP_TEMPTABLE_LOOKUP_COST 0.05
 #define DISK_TEMPTABLE_LOOKUP_COST 1.0
 
+
+#define COST_MAX (DBL_MAX * (1.0 - DBL_EPSILON))
+
+#define COST_ADD(c,d) (COST_MAX - (d) > (c) ? (c) + (d) : COST_MAX)
+
+#define COST_MULT(c,f) (COST_MAX / (f) > (c) ? (c) * (f) : COST_MAX)
+
+
 #define MY_CHARSET_BIN_MB_MAXLEN 1
 
 /** Don't pack string keys shorter than this (if PACK_KEYS=1 isn't used). */
diff --git a/sql/sql_crypt.cc b/sql/sql_crypt.cc
index 2460a16551ddafffe5dce630436a90b644b03eae..f913cd3ebfa2abc3edd3d33096553ced1d831ab8 100644
--- a/sql/sql_crypt.cc
+++ b/sql/sql_crypt.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 
diff --git a/sql/sql_crypt.h b/sql/sql_crypt.h
index 3df554e9d315924773a6087e83d20337baa9b75d..e077452e52737f1818b05e29083f7e279c61e80b 100644
--- a/sql/sql_crypt.h
+++ b/sql/sql_crypt.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_INTERFACE 
diff --git a/sql/sql_cursor.cc b/sql/sql_cursor.cc
index 69781b5def3c0185cf5e8fa3755aeb063ea51729..e324ab8848a936e4999948b1e307d5719bd9fd7a 100644
--- a/sql/sql_cursor.cc
+++ b/sql/sql_cursor.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation                         /* gcc class implementation */
 #endif
diff --git a/sql/sql_cursor.h b/sql/sql_cursor.h
index bff47d654b365633a7b257d3fa1343d9510bd82f..e07cb9973d15aab8453d6c3d886a9cc8976bbd45 100644
--- a/sql/sql_cursor.h
+++ b/sql/sql_cursor.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _sql_cursor_h_
 #define _sql_cursor_h_
diff --git a/sql/sql_db.cc b/sql/sql_db.cc
index 7b83332ea625331328e24ed011847c87760801d9..b1a82ab090d83b817dffe48027f75d0283ad7759 100644
--- a/sql/sql_db.cc
+++ b/sql/sql_db.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /* create and drop of databases */
@@ -338,7 +338,7 @@ static void del_dbopt(const char *path)
 static bool write_db_opt(THD *thd, const char *path,
                          Schema_specification_st *create)
 {
-  register File file;
+  File file;
   char buf[256]; // Should be enough for one option
   bool error=1;
 
diff --git a/sql/sql_db.h b/sql/sql_db.h
index b778e42645a982639b257b497f0acaa733700807..5841de63514bb863a9d00a5b359c295f62152c7c 100644
--- a/sql/sql_db.h
+++ b/sql/sql_db.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_DB_INCLUDED
 #define SQL_DB_INCLUDED
diff --git a/sql/sql_delete.cc b/sql/sql_delete.cc
index 9f3caf9df4f57575cbfe6c8def114be819499a56..ab02c3f9ccacc918285fbc5d6815a51309a10c46 100644
--- a/sql/sql_delete.cc
+++ b/sql/sql_delete.cc
@@ -1,6 +1,6 @@
 /*
-   Copyright (c) 2000, 2010, Oracle and/or its affiliates.
-   Copyright (c) 2010, 2015, MariaDB
+   Copyright (c) 2000, 2019, Oracle and/or its affiliates.
+   Copyright (c) 2010, 2019, MariaDB
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Delete of records tables.
@@ -1324,6 +1324,7 @@ bool multi_delete::send_eof()
         thd->clear_error();
       else
         errcode= query_error_code(thd, killed_status == NOT_KILLED);
+      thd->thread_specific_used= TRUE;
       if (thd->binlog_query(THD::ROW_QUERY_TYPE,
                             thd->query(), thd->query_length(),
                             transactional_tables, FALSE, FALSE, errcode) &&
diff --git a/sql/sql_delete.h b/sql/sql_delete.h
index 9cd09dc57226dc6a923d7a88f8a2c2d901eb83f7..5975598f6574ea975fd4337421dec5b3ec6c40a9 100644
--- a/sql/sql_delete.h
+++ b/sql/sql_delete.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_DELETE_INCLUDED
 #define SQL_DELETE_INCLUDED
diff --git a/sql/sql_derived.cc b/sql/sql_derived.cc
index c93aa132e37d76c9fb52375cb75f36c73328202b..f151592c0f73168be35c757aa874b16e0a73c6eb 100644
--- a/sql/sql_derived.cc
+++ b/sql/sql_derived.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /*
diff --git a/sql/sql_derived.h b/sql/sql_derived.h
index 301ae31b0163d2ea26b544f6a68d6f44f48d4a7b..04e03fa7587b77ff1201dff958047b9c95c038c5 100644
--- a/sql/sql_derived.h
+++ b/sql/sql_derived.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_DERIVED_INCLUDED
 #define SQL_DERIVED_INCLUDED
diff --git a/sql/sql_digest.cc b/sql/sql_digest.cc
index 6605d0af0a940b0acd8ec55eca66072cd3d5e851..2f7ad546b0579cd31e32ce7ae5796eb68eb01f28 100644
--- a/sql/sql_digest.cc
+++ b/sql/sql_digest.cc
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   This code needs extra visibility in the lexer structures
diff --git a/sql/sql_digest.h b/sql/sql_digest.h
index eaf74b9542ef149e8eef5c2ce04d8188ae499688..9f3f75ab4eb184c4b6b569e0755374727092ef81 100644
--- a/sql/sql_digest.h
+++ b/sql/sql_digest.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef SQL_DIGEST_H
 #define SQL_DIGEST_H
diff --git a/sql/sql_digest_stream.h b/sql/sql_digest_stream.h
index 55f7e2293c620f66b39ed848d5fc6d35b22240a6..75e534e83503374419e79537dd00a11cf51674e0 100644
--- a/sql/sql_digest_stream.h
+++ b/sql/sql_digest_stream.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef SQL_DIGEST_STREAM_H
 #define SQL_DIGEST_STREAM_H
diff --git a/sql/sql_do.cc b/sql/sql_do.cc
index 54850494ad0ce410e3554d005c866814096971fe..5d1f0c4c7adaf318d20e7e8511d93af2ef4ff9d7 100644
--- a/sql/sql_do.cc
+++ b/sql/sql_do.cc
@@ -11,7 +11,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Execute DO statement */
diff --git a/sql/sql_do.h b/sql/sql_do.h
index 35130cc583608bcb6b8a8b97a71f72c7e315a88d..5280a4a52e1d35d7711e158f9bef5bec8c3cd4a1 100644
--- a/sql/sql_do.h
+++ b/sql/sql_do.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_DO_INCLUDED
 #define SQL_DO_INCLUDED
diff --git a/sql/sql_error.cc b/sql/sql_error.cc
index b72d642efbcf8554dda27cb8e9c95a6dc6b9a9ee..6ec6c4d2416f6ad3476bdc01929b0535bbdaf92b 100644
--- a/sql/sql_error.cc
+++ b/sql/sql_error.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**********************************************************************
 This file contains the implementation of error and warnings related
diff --git a/sql/sql_error.h b/sql/sql_error.h
index 0134f938c75f40dd7ed0d283d983ff27e14ef022..a6c64fbc88777cd531238e72cec8e99daf3c785c 100644
--- a/sql/sql_error.h
+++ b/sql/sql_error.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_ERROR_H
 #define SQL_ERROR_H
diff --git a/sql/sql_explain.cc b/sql/sql_explain.cc
index a1d6764d8e41f158f60bd5a2bf61dba85055e75a..2fa4b2cb3ae14c697dc099e53784248275f38a91 100644
--- a/sql/sql_explain.cc
+++ b/sql/sql_explain.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation				// gcc: Class implementation
@@ -1223,7 +1223,7 @@ int Explain_table_access::print_explain(select_result_sink *output, uint8 explai
   if (rows_set)
   {
     item_list.push_back(new (mem_root)
-                        Item_int(thd, (longlong) (ulonglong) rows,
+                        Item_int(thd, (ulonglong) rows,
                                  MY_INT64_NUM_DECIMAL_DIGITS),
                         mem_root);
   }
@@ -1601,7 +1601,7 @@ void Explain_table_access::print_explain_json(Explain_query *query,
   
   /* `rows` */
   if (rows_set)
-    writer->add_member("rows").add_ll(rows);
+    writer->add_member("rows").add_ull(rows);
 
   /* `r_rows` */
   if (is_analyze)
@@ -2239,7 +2239,7 @@ void Explain_update::print_explain_json(Explain_query *query,
   }
   
   /* `rows` */
-  writer->add_member("rows").add_ll(rows);
+  writer->add_member("rows").add_ull(rows);
 
 
   if (mrr_type.length() != 0)
@@ -2268,7 +2268,7 @@ void Explain_update::print_explain_json(Explain_query *query,
           r_rows= 0;
         r_filtered= buf_tracker.get_filtered_after_where() * 100.0;
       }
-      writer->add_member("r_rows").add_ll(r_rows);
+      writer->add_member("r_rows").add_ull(r_rows);
       writer->add_member("r_filtered").add_double(r_filtered);
     }
     else /* Not doing buffering */
diff --git a/sql/sql_explain.h b/sql/sql_explain.h
index caacf6b3a2fe24d03d1885a58740982ff2666d1a..462b989878ed12993f0d279e25abbf33e2e59c96 100644
--- a/sql/sql_explain.h
+++ b/sql/sql_explain.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
 
diff --git a/sql/sql_expression_cache.cc b/sql/sql_expression_cache.cc
index c79783bf561428c0d73a26eb43987e37e3c22269..4b6d4b4472e7be80399db32652cf2de05e5c1987 100644
--- a/sql/sql_expression_cache.cc
+++ b/sql/sql_expression_cache.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include "sql_base.h"
diff --git a/sql/sql_expression_cache.h b/sql/sql_expression_cache.h
index 05ac51f81f291ea429280b7137aeab670183633f..61e0c4c69b3e728fb0a8a05afcc0e6210dbae612 100644
--- a/sql/sql_expression_cache.h
+++ b/sql/sql_expression_cache.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef SQL_EXPRESSION_CACHE_INCLUDED
 #define SQL_EXPRESSION_CACHE_INCLUDED
diff --git a/sql/sql_get_diagnostics.cc b/sql/sql_get_diagnostics.cc
index 1713cb04ebc4f2ddd4d39897d46af4cd88463174..b164a247c4d4e18349ce1605ae2049644100bebe 100644
--- a/sql/sql_get_diagnostics.cc
+++ b/sql/sql_get_diagnostics.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02111-1307  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "sql_list.h"                 // Sql_alloc, List, List_iterator
 #include "sql_cmd.h"                  // Sql_cmd
diff --git a/sql/sql_get_diagnostics.h b/sql/sql_get_diagnostics.h
index f34820757f5f4e66da18947f9de02b998eaa9ce9..f283aa5b2c6322f56eda893610d9607f9aa28a71 100644
--- a/sql/sql_get_diagnostics.h
+++ b/sql/sql_get_diagnostics.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02111-1307  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef SQL_GET_DIAGNOSTICS_H
 #define SQL_GET_DIAGNOSTICS_H
diff --git a/sql/sql_handler.cc b/sql/sql_handler.cc
index bc6119b9a9c49b510806b97b0b665d2ce138b882..b5b1fe8143090e5b301b0ebdfa058151acee3483 100644
--- a/sql/sql_handler.cc
+++ b/sql/sql_handler.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /* HANDLER ... commands - direct access to ISAM */
diff --git a/sql/sql_handler.h b/sql/sql_handler.h
index 7fe5ae5bba8cd92c3d29871451818423804e8e2e..9f0ef7bd08de1ab6e8f84cb0263554c2a228c6d3 100644
--- a/sql/sql_handler.h
+++ b/sql/sql_handler.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
diff --git a/sql/sql_help.cc b/sql/sql_help.cc
index d71a6caf813bb4b4126729a63ed829a8ddfcc473..cd9da566e51782de82d27bcad845df4543eb9493 100644
--- a/sql/sql_help.cc
+++ b/sql/sql_help.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sql_help.h b/sql/sql_help.h
index b6ae490e7570b9210794490ba5313f26172c391e..cb3314b756c80ed26042399b21a8009102dbbe7d 100644
--- a/sql/sql_help.h
+++ b/sql/sql_help.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_HELP_INCLUDED
 #define SQL_HELP_INCLUDED
diff --git a/sql/sql_hset.h b/sql/sql_hset.h
index dc3bd487ce567649a1ecf2fcb0cafe644752b838..ab03f6bae782a3deac0551ed420c9fec6d8844e3 100644
--- a/sql/sql_hset.h
+++ b/sql/sql_hset.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "my_global.h"
 #include "hash.h"
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc
index 1745c6b4aaaf28afe88aa5a01887f9d01ecd0587..1ad74bd0f5af15ed37aefc348d6fedaa6db9edbb 100644
--- a/sql/sql_insert.cc
+++ b/sql/sql_insert.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /* Insert of records */
@@ -87,7 +87,7 @@ static int write_delayed(THD *thd, TABLE *table, enum_duplicates duplic,
                          LEX_STRING query, bool ignore, bool log_on);
 static void end_delayed_insert(THD *thd);
 pthread_handler_t handle_delayed_insert(void *arg);
-static void unlink_blobs(register TABLE *table);
+static void unlink_blobs(TABLE *table);
 #endif
 static bool check_view_insertability(THD *thd, TABLE_LIST *view);
 
@@ -3081,7 +3081,7 @@ pthread_handler_t handle_delayed_insert(void *arg)
 
 /* Remove pointers from temporary fields to allocated values */
 
-static void unlink_blobs(register TABLE *table)
+static void unlink_blobs(TABLE *table)
 {
   for (Field **ptr=table->field ; *ptr ; ptr++)
   {
@@ -3092,7 +3092,7 @@ static void unlink_blobs(register TABLE *table)
 
 /* Free blobs stored in current row */
 
-static void free_delayed_insert_blobs(register TABLE *table)
+static void free_delayed_insert_blobs(TABLE *table)
 {
   for (Field **ptr=table->field ; *ptr ; ptr++)
   {
@@ -3871,8 +3871,12 @@ void select_insert::abort_result_set() {
     example), no table will have been opened and therefore 'table'
     will be NULL. In that case, we still need to execute the rollback
     and the end of the function.
+
+    If it fail due to inability to insert in multi-table view for example,
+    table will be assigned with view table structure, but that table will
+    not be opened really (it is dummy to check fields types & Co).
    */
-  if (table)
+  if (table && table->file->get_table())
   {
     bool changed, transactional_table;
     /*
diff --git a/sql/sql_insert.h b/sql/sql_insert.h
index aea0dac6b0d701c68f7d1a0af4b04df75ba7c142..3c0d0164da4f20591a377c38ea80992b536a04a1 100644
--- a/sql/sql_insert.h
+++ b/sql/sql_insert.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_INSERT_INCLUDED
 #define SQL_INSERT_INCLUDED
diff --git a/sql/sql_join_cache.cc b/sql/sql_join_cache.cc
index 4b7667f1319996f524e1e2a7a8816d3694125b24..f7366a64e6016142431070a8437f99c2b0b2e322 100644
--- a/sql/sql_join_cache.cc
+++ b/sql/sql_join_cache.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file
@@ -2156,7 +2156,8 @@ enum_nested_loop_state JOIN_CACHE::join_records(bool skip_last)
   }
 
 finish:
-  if (outer_join_first_inner)
+  if (outer_join_first_inner &&
+      join_tab->first_inner == join_tab->first_unmatched)
   {
     /* 
       All null complemented rows have been already generated for all
diff --git a/sql/sql_join_cache.h b/sql/sql_join_cache.h
index 4ae843ebfc2d2c2a101ea66de8f04784d00a4042..1cbc6acfd792835c40c94574b71a41fd31fd2539 100644
--- a/sql/sql_join_cache.h
+++ b/sql/sql_join_cache.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   This file contains declarations for implementations
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc
index df868d0321f3dd674ac91c6c7680f22cdcfa6b83..a36a19357eb9fc5a72e0c36ea1adc1a0c0ba1978 100644
--- a/sql/sql_lex.cc
+++ b/sql/sql_lex.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* A lexical scanner on a temporary buffer with a yacc interface */
@@ -1001,7 +1001,7 @@ Lex_input_stream::unescape(CHARSET_INFO *cs, char *to,
 bool Lex_input_stream::get_text(LEX_STRING *dst, uint sep,
                                 int pre_skip, int post_skip)
 {
-  reg1 uchar c;
+  uchar c;
   uint found_escape=0;
   CHARSET_INFO *cs= m_thd->charset();
 
@@ -1181,7 +1181,7 @@ static inline uint int_token(const char *str,uint length)
 */
 bool consume_comment(Lex_input_stream *lip, int remaining_recursions_permitted)
 {
-  reg1 uchar c;
+  uchar c;
   while (! lip->eof())
   {
     c= lip->yyGet();
@@ -1283,7 +1283,7 @@ int MYSQLlex(YYSTYPE *yylval, THD *thd)
 
 static int lex_one_token(YYSTYPE *yylval, THD *thd)
 {
-  reg1	uchar UNINIT_VAR(c);
+  uchar UNINIT_VAR(c);
   bool comment_closed;
   int	tokval, result_state;
   uint length;
@@ -2735,14 +2735,13 @@ void st_select_lex::print_limit(THD *thd,
   if (item && unit->global_parameters() == this)
   {
     Item_subselect::subs_type subs_type= item->substype();
-    if (subs_type == Item_subselect::EXISTS_SUBS ||
-        subs_type == Item_subselect::IN_SUBS ||
+    if (subs_type == Item_subselect::IN_SUBS ||
         subs_type == Item_subselect::ALL_SUBS)
     {
       return;
     }
   }
-  if (explicit_limit)
+  if (explicit_limit && select_limit)
   {
     str->append(STRING_WITH_LEN(" limit "));
     if (offset_limit)
@@ -4372,7 +4371,10 @@ void SELECT_LEX::increase_derived_records(ha_rows records)
   DBUG_ASSERT(unit->derived);
 
   select_union *result= (select_union*)unit->result;
-  result->records+= records;
+  if (HA_ROWS_MAX - records > result->records)
+    result->records+= records;
+  else
+    result->records= HA_ROWS_MAX;
 }
 
 
diff --git a/sql/sql_lex.h b/sql/sql_lex.h
index 845e1242eb7439e39d87ca93708b41eb038d0781..4462d541e5ff29a0fe2b70229e74655a99af4b50 100644
--- a/sql/sql_lex.h
+++ b/sql/sql_lex.h
@@ -1,5 +1,5 @@
-/* Copyright (c) 2000, 2015, Oracle and/or its affiliates.
-   Copyright (c) 2010, 2018, MariaDB Corporation
+/* Copyright (c) 2000, 2019, Oracle and/or its affiliates.
+   Copyright (c) 2010, 2019, MariaDB Corporation
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @defgroup Semantic_Analysis Semantic Analysis
@@ -960,6 +960,8 @@ class st_select_lex: public st_select_lex_node
   TABLE_LIST *end_nested_join(THD *thd);
   TABLE_LIST *nest_last_join(THD *thd);
   void add_joined_table(TABLE_LIST *table);
+  bool add_cross_joined_table(TABLE_LIST *left_op, TABLE_LIST *right_op,
+                              bool straight_fl);
   TABLE_LIST *convert_right_join();
   List* get_item_list();
   ulong get_table_join_options();
@@ -2873,9 +2875,9 @@ struct LEX: public Query_tables_list
     return context_stack.push_front(context, mem_root);
   }
 
-  void pop_context()
+  Name_resolution_context *pop_context()
   {
-    context_stack.pop();
+    return context_stack.pop();
   }
 
   bool copy_db_to(char **p_db, size_t *p_db_length) const;
@@ -3069,15 +3071,18 @@ class Set_signal_information
 class Yacc_state
 {
 public:
-  Yacc_state()
-  {
-    reset();
-  }
+  Yacc_state() : yacc_yyss(NULL), yacc_yyvs(NULL) { reset(); }
 
   void reset()
   {
-    yacc_yyss= NULL;
-    yacc_yyvs= NULL;
+    if (yacc_yyss != NULL) {
+      my_free(yacc_yyss);
+      yacc_yyss = NULL;
+    }
+    if (yacc_yyvs != NULL) {
+      my_free(yacc_yyvs);
+      yacc_yyvs = NULL;
+    }
     m_set_signal_info.clear();
     m_lock_type= TL_READ_DEFAULT;
     m_mdl_type= MDL_SHARED_READ;
diff --git a/sql/sql_lifo_buffer.h b/sql/sql_lifo_buffer.h
index 17024d15beb59736116a372e3cc14ea1feaae827..4d2d0bd3b273fa936d78665e80ea0efb041dca96 100644
--- a/sql/sql_lifo_buffer.h
+++ b/sql/sql_lifo_buffer.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @defgroup Bi-directional LIFO buffers used by DS-MRR implementation
diff --git a/sql/sql_list.cc b/sql/sql_list.cc
index 2c1b3c47d55c5d55522fd7cc01ae1dbbb3210885..575ad9f13ef00b34a91c2620b66aba25a1adfa50 100644
--- a/sql/sql_list.cc
+++ b/sql/sql_list.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
diff --git a/sql/sql_list.h b/sql/sql_list.h
index f1c4d1fe9145ecd0701c25499f94353944cd7118..94e944d5ff62a78907a6dfcc11a0361ea51f4c97 100644
--- a/sql/sql_list.h
+++ b/sql/sql_list.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
diff --git a/sql/sql_load.cc b/sql/sql_load.cc
index 85ab43df0ec143dbf1a06edafc0a3931843cb0f3..72ca122a6d3f8313f38204bed2eb6149328226cf 100644
--- a/sql/sql_load.cc
+++ b/sql/sql_load.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Copy data from a textfile to table */
diff --git a/sql/sql_load.h b/sql/sql_load.h
index f767e39387ba81642bfd4c4d150365980be3d740..8ff2f1ab8f347ae00f66e6501caa079f8b6f6637 100644
--- a/sql/sql_load.h
+++ b/sql/sql_load.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_LOAD_INCLUDED
 #define SQL_LOAD_INCLUDED
diff --git a/sql/sql_locale.cc b/sql/sql_locale.cc
index 58443a9a97782092d3d471ccac70301a8c40bd96..a4035726e801815c6174810e12b374a99bad68a5 100644
--- a/sql/sql_locale.cc
+++ b/sql/sql_locale.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   The beginnings of locale(7) support.
diff --git a/sql/sql_locale.h b/sql/sql_locale.h
index 8559bb55cd9e16ab345098b17c1992dd893c6793..295add6ec06cd01af21944a721d72c7e03442a42 100644
--- a/sql/sql_locale.h
+++ b/sql/sql_locale.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_LOCALE_INCLUDED
 #define SQL_LOCALE_INCLUDED
diff --git a/sql/sql_manager.cc b/sql/sql_manager.cc
index 8cf849b97d04bb10c56fc1b4724be206dc1e4bed..029d29d4c76e8272a1bf585c64b1cea3dd796e23 100644
--- a/sql/sql_manager.cc
+++ b/sql/sql_manager.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* 
  * sql_manager.cc
diff --git a/sql/sql_manager.h b/sql/sql_manager.h
index 8debbe6ead9a24676c2974c414ddaaf019c64b12..9c6c84450edb097e5abbfd82d2592536bb95f7a0 100644
--- a/sql/sql_manager.h
+++ b/sql/sql_manager.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_MANAGER_INCLUDED
 #define SQL_MANAGER_INCLUDED
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index 73b820cf87c6ca62c122ef42c211a1141dc0152e..385319d80ad7da0f10da7060f19be5fefadedf5f 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #define MYSQL_LEX 1
 #include 
@@ -3280,274 +3280,6 @@ mysql_execute_command(THD *thd)
       res = ha_show_status(thd, lex->create_info.db_type, HA_ENGINE_MUTEX);
       break;
     }
-  case SQLCOM_CREATE_TABLE:
-  {
-    DBUG_ASSERT(first_table == all_tables && first_table != 0);
-    bool link_to_local;
-    TABLE_LIST *create_table= first_table;
-    TABLE_LIST *select_tables= lex->create_last_non_select_table->next_global;
-
-    if (lex->tmp_table())
-    {
-      status_var_decrement(thd->status_var.com_stat[SQLCOM_CREATE_TABLE]);
-      status_var_increment(thd->status_var.com_create_tmp_table);
-    }
-
-    /*
-      Code below (especially in mysql_create_table() and select_create
-      methods) may modify HA_CREATE_INFO structure in LEX, so we have to
-      use a copy of this structure to make execution prepared statement-
-      safe. A shallow copy is enough as this code won't modify any memory
-      referenced from this structure.
-    */
-    Table_specification_st create_info(lex->create_info);
-    /*
-      We need to copy alter_info for the same reasons of re-execution
-      safety, only in case of Alter_info we have to do (almost) a deep
-      copy.
-    */
-    Alter_info alter_info(lex->alter_info, thd->mem_root);
-
-    if (thd->is_fatal_error)
-    {
-      /* If out of memory when creating a copy of alter_info. */
-      res= 1;
-      goto end_with_restore_list;
-    }
-
-    /* Check privileges */
-    if ((res= create_table_precheck(thd, select_tables, create_table)))
-      goto end_with_restore_list;
-
-    /* Might have been updated in create_table_precheck */
-    create_info.alias= create_table->alias;
-
-    /* Fix names if symlinked or relocated tables */
-    if (append_file_to_dir(thd, &create_info.data_file_name,
-			   create_table->table_name) ||
-	append_file_to_dir(thd, &create_info.index_file_name,
-			   create_table->table_name))
-      goto end_with_restore_list;
-
-    /*
-      If no engine type was given, work out the default now
-      rather than at parse-time.
-    */
-    if (!(create_info.used_fields & HA_CREATE_USED_ENGINE))
-      create_info.use_default_db_type(thd);
-    /*
-      If we are using SET CHARSET without DEFAULT, add an implicit
-      DEFAULT to not confuse old users. (This may change).
-    */
-    if ((create_info.used_fields &
-	 (HA_CREATE_USED_DEFAULT_CHARSET | HA_CREATE_USED_CHARSET)) ==
-	HA_CREATE_USED_CHARSET)
-    {
-      create_info.used_fields&= ~HA_CREATE_USED_CHARSET;
-      create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
-      create_info.default_table_charset= create_info.table_charset;
-      create_info.table_charset= 0;
-    }
-
-    /*
-      If we are a slave, we should add OR REPLACE if we don't have
-      IF EXISTS. This will help a slave to recover from
-      CREATE TABLE OR EXISTS failures by dropping the table and
-      retrying the create.
-    */
-    if (thd->slave_thread &&
-        slave_ddl_exec_mode_options == SLAVE_EXEC_MODE_IDEMPOTENT &&
-        !lex->create_info.if_not_exists())
-    {
-      create_info.add(DDL_options_st::OPT_OR_REPLACE);
-      create_info.add(DDL_options_st::OPT_OR_REPLACE_SLAVE_GENERATED);
-    }
-
-#ifdef WITH_PARTITION_STORAGE_ENGINE
-    {
-      partition_info *part_info= thd->lex->part_info;
-      if (part_info && !(part_info= part_info->get_clone(thd)))
-      {
-        res= -1;
-        goto end_with_restore_list;
-      }
-      thd->work_part_info= part_info;
-    }
-#endif
-
-    if (select_lex->item_list.elements)		// With select
-    {
-      select_result *result;
-
-      /*
-        CREATE TABLE...IGNORE/REPLACE SELECT... can be unsafe, unless
-        ORDER BY PRIMARY KEY clause is used in SELECT statement. We therefore
-        use row based logging if mixed or row based logging is available.
-        TODO: Check if the order of the output of the select statement is
-        deterministic. Waiting for BUG#42415
-      */
-      if(lex->ignore)
-        lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_CREATE_IGNORE_SELECT);
-
-      if(lex->duplicates == DUP_REPLACE)
-        lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_CREATE_REPLACE_SELECT);
-
-      /*
-        If:
-        a) we inside an SP and there was NAME_CONST substitution,
-        b) binlogging is on (STMT mode),
-        c) we log the SP as separate statements
-        raise a warning, as it may cause problems
-        (see 'NAME_CONST issues' in 'Binary Logging of Stored Programs')
-       */
-      if (thd->query_name_consts && mysql_bin_log.is_open() &&
-          thd->wsrep_binlog_format() == BINLOG_FORMAT_STMT &&
-          !mysql_bin_log.is_query_in_union(thd, thd->query_id))
-      {
-        List_iterator_fast it(select_lex->item_list);
-        Item *item;
-        uint splocal_refs= 0;
-        /* Count SP local vars in the top-level SELECT list */
-        while ((item= it++))
-        {
-          if (item->get_item_splocal())
-            splocal_refs++;
-        }
-        /*
-          If it differs from number of NAME_CONST substitution applied,
-          we may have a SOME_FUNC(NAME_CONST()) in the SELECT list,
-          that may cause a problem with binary log (see BUG#35383),
-          raise a warning. 
-        */
-        if (splocal_refs != thd->query_name_consts)
-          push_warning(thd, 
-                       Sql_condition::WARN_LEVEL_WARN,
-                       ER_UNKNOWN_ERROR,
-"Invoked routine ran a statement that may cause problems with "
-"binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' "
-"section of the manual.");
-      }
-      
-      select_lex->options|= SELECT_NO_UNLOCK;
-      unit->set_limit(select_lex);
-
-      /*
-        Disable non-empty MERGE tables with CREATE...SELECT. Too
-        complicated. See Bug #26379. Empty MERGE tables are read-only
-        and don't allow CREATE...SELECT anyway.
-      */
-      if (create_info.used_fields & HA_CREATE_USED_UNION)
-      {
-        my_error(ER_WRONG_OBJECT, MYF(0), create_table->db,
-                 create_table->table_name, "BASE TABLE");
-        res= 1;
-        goto end_with_restore_list;
-      }
-
-      /* Copy temporarily the statement flags to thd for lock_table_names() */
-      uint save_thd_create_info_options= thd->lex->create_info.options;
-      thd->lex->create_info.options|= create_info.options;
-      res= open_and_lock_tables(thd, create_info, lex->query_tables, TRUE, 0);
-      thd->lex->create_info.options= save_thd_create_info_options;
-      if (res)
-      {
-        /* Got error or warning. Set res to 1 if error */
-        if (!(res= thd->is_error()))
-          my_ok(thd);                           // CREATE ... IF NOT EXISTS
-        goto end_with_restore_list;
-      }
-
-      /* Ensure we don't try to create something from which we select from */
-      if (create_info.or_replace() && !create_info.tmp_table())
-      {
-        TABLE_LIST *duplicate;
-        if ((duplicate= unique_table(thd, lex->query_tables,
-                                     lex->query_tables->next_global,
-                                     CHECK_DUP_FOR_CREATE)))
-        {
-          update_non_unique_table_error(lex->query_tables, "CREATE",
-                                        duplicate);
-          res= TRUE;
-          goto end_with_restore_list;
-        }
-      }
-      {
-        /*
-          Remove target table from main select and name resolution
-          context. This can't be done earlier as it will break view merging in
-          statements like "CREATE TABLE IF NOT EXISTS existing_view SELECT".
-        */
-        lex->unlink_first_table(&link_to_local);
-
-        /* Store reference to table in case of LOCK TABLES */
-        create_info.table= create_table->table;
-
-        /*
-          select_create is currently not re-execution friendly and
-          needs to be created for every execution of a PS/SP.
-          Note: In wsrep-patch, CTAS is handled like a regular transaction.
-        */
-        if ((result= new (thd->mem_root) select_create(thd, create_table,
-                                                       &create_info,
-                                                       &alter_info,
-                                                       select_lex->item_list,
-                                                       lex->duplicates,
-                                                       lex->ignore,
-                                                       select_tables)))
-        {
-          /*
-            CREATE from SELECT give its SELECT_LEX for SELECT,
-            and item_list belong to SELECT
-          */
-          if (!(res= handle_select(thd, lex, result, 0)))
-          {
-            if (create_info.tmp_table())
-              thd->variables.option_bits|= OPTION_KEEP_LOG;
-          }
-          delete result;
-        }
-        lex->link_first_table_back(create_table, link_to_local);
-      }
-    }
-    else
-    {
-      /* regular create */
-      if (create_info.like())
-      {
-        /* CREATE TABLE ... LIKE ... */
-        res= mysql_create_like_table(thd, create_table, select_tables,
-                                     &create_info);
-      }
-      else
-      {
-        /*
-          In STATEMENT format, we probably have to replicate also temporary
-          tables, like mysql replication does. Also check if the requested
-          engine is allowed/supported.
-        */
-        if (WSREP(thd) &&
-            !check_engine(thd, create_table->db, create_table->table_name,
-                          &create_info) &&
-            (!thd->is_current_stmt_binlog_format_row() ||
-             !create_info.tmp_table()))
-        {
-	  WSREP_TO_ISOLATION_BEGIN(create_table->db, create_table->table_name, NULL)
-        }
-        /* Regular CREATE TABLE */
-        res= mysql_create_table(thd, create_table, &create_info, &alter_info);
-      }
-      if (!res)
-      {
-        /* So that CREATE TEMPORARY TABLE gets to binlog at commit/rollback */
-        if (create_info.tmp_table())
-          thd->variables.option_bits|= OPTION_KEEP_LOG;
-        my_ok(thd);
-      }
-    }
-
-end_with_restore_list:
-    break;
-  }
   case SQLCOM_CREATE_INDEX:
   case SQLCOM_DROP_INDEX:
   /*
@@ -4022,6 +3754,13 @@ mysql_execute_command(THD *thd)
       */
       /* Skip first table, which is the table we are inserting in */
       TABLE_LIST *second_table= first_table->next_local;
+      /*
+        This is a hack: this leaves select_lex->table_list in an inconsistent
+        state as 'elements' does not contain number of elements in the list.
+        Moreover, if second_table == NULL then 'next' becomes invalid.
+        TODO: fix it by removing the front element (restoring of it should
+        be done properly as well)
+      */
       select_lex->table_list.first= second_table;
       select_lex->context.table_list= 
         select_lex->context.first_name_resolution_table= second_table;
@@ -5692,6 +5431,7 @@ mysql_execute_command(THD *thd)
   case SQLCOM_OPTIMIZE:
   case SQLCOM_REPAIR:
   case SQLCOM_TRUNCATE:
+  case SQLCOM_CREATE_TABLE:
   case SQLCOM_ALTER_TABLE:
       DBUG_ASSERT(first_table == all_tables && first_table != 0);
     /* fall through */
@@ -7620,7 +7360,7 @@ TABLE_LIST *st_select_lex::add_table_to_list(THD *thd,
                                              List *partition_names,
                                              LEX_STRING *option)
 {
-  register TABLE_LIST *ptr;
+  TABLE_LIST *ptr;
   TABLE_LIST *UNINIT_VAR(previous_table_ref); /* The table preceding the current one. */
   char *alias_str;
   LEX *lex= thd->lex;
@@ -7854,6 +7594,7 @@ TABLE_LIST *st_select_lex::end_nested_join(THD *thd)
   join_list= ptr->join_list;
   embedding= ptr->embedding;
   nested_join= ptr->nested_join;
+  nested_join->nest_type= 0;
   if (nested_join->join_list.elements == 1)
   {
     TABLE_LIST *embedded= nested_join->join_list.head();
@@ -7863,6 +7604,8 @@ TABLE_LIST *st_select_lex::end_nested_join(THD *thd)
     join_list->push_front(embedded, thd->mem_root);
     ptr= embedded;
     embedded->lifted= 1;
+    if (embedded->nested_join)
+      embedded->nested_join->nest_type= 0;
   }
   else if (nested_join->join_list.elements == 0)
   {
@@ -7893,6 +7636,16 @@ TABLE_LIST *st_select_lex::nest_last_join(THD *thd)
   List *embedded_list;
   DBUG_ENTER("nest_last_join");
 
+  TABLE_LIST *head= join_list->head();
+  if (head->nested_join && head->nested_join->nest_type & REBALANCED_NEST)
+  {
+    List_iterator li(*join_list);
+    li++;
+    while (li++)
+      li.remove();
+    DBUG_RETURN(head);
+  }
+
   if (!(ptr= (TABLE_LIST*) thd->calloc(ALIGN_SIZE(sizeof(TABLE_LIST))+
                                        sizeof(NESTED_JOIN))))
     DBUG_RETURN(0);
@@ -7904,6 +7657,7 @@ TABLE_LIST *st_select_lex::nest_last_join(THD *thd)
   ptr->alias= (char*) "(nest_last_join)";
   embedded_list= &nested_join->join_list;
   embedded_list->empty();
+  nested_join->nest_type= JOIN_OP_NEST;
 
   for (uint i=0; i < 2; i++)
   {
@@ -7954,6 +7708,227 @@ void st_select_lex::add_joined_table(TABLE_LIST *table)
 }
 
 
+/**
+  @brief
+    Create a node for JOIN/INNER JOIN/CROSS JOIN/STRAIGHT_JOIN operation
+
+  @param left_op     the node for the left operand constructed by the parser
+  @param right_op    the node for the right operand constructed by the parser
+  @param straight_fl TRUE if STRAIGHT_JOIN is used
+
+  @retval
+    false on success
+    true  otherwise
+
+  @details
+
+    JOIN operator can be left-associative with other join operators in one
+    context and right-associative in another context.
+
+    In this query
+       SELECT * FROM t1 JOIN t2 LEFT JOIN t3 ON t2.a=t3.a  (Q1)
+    JOIN is left-associative and the query Q1 is interpreted as
+       SELECT * FROM (t1 JOIN t2) LEFT JOIN t3 ON t2.a=t3.a.
+    While in this query
+       SELECT * FROM t1 JOIN t2 LEFT JOIN t3 ON t2.a=t3.a ON t1.b=t2.b (Q2)
+    JOIN is right-associative and the query Q2 is interpreted as
+       SELECT * FROM t1 JOIN (t2 LEFT JOIN t3 ON t2.a=t3.a) ON t1.b=t2.b
+
+    JOIN is right-associative if it is used with ON clause or with USING clause.
+    Otherwise it is left-associative.
+    When parsing a join expression with JOIN operator we can't determine
+    whether this operation left or right associative until either we read the
+    corresponding ON clause or we reach the end of the expression. This creates
+    a problem for the parser to build a proper internal representation of the
+    used join expression.
+
+    For Q1 and Q2 the trees representing the used join expressions look like
+
+            LJ - ON                   J - ON
+           /  \                      / \
+          J    t3   (TQ1)          t1   LJ - ON      (TQ2)
+         / \                           /  \
+       t1   t2                       t2    t3
+
+    To build TQ1 the parser has to reduce the expression for JOIN right after
+    it has read the reference to t2. To build TQ2 the parser reduces JOIN
+    when he has read the whole join expression. There is no way to determine
+    whether an early reduction is needed until the whole join expression is
+    read.
+    A solution here is always to do a late reduction. In this case the parser
+    first builds an incorrect tree TQ1* that has to be rebalanced right after
+    it has been constructed.
+
+             J                               LJ - ON
+            / \                             /  \
+          t1   LJ - ON    (TQ1*)    =>     J    t3
+              /  \                        / \
+            t2    t3                    t1   t2
+
+    Actually the transformation is performed over the nodes t1 and LJ before the
+    node for J is created in the function st_select_lex::add_cross_joined_table.
+    The function creates a node for J which replaces the node t2. Then it
+    attaches the nodes t1 and t2 to this newly created node. The node LJ becomes
+    the top node of the tree.
+
+    For the query
+      SELECT * FROM t1 JOIN t2 RIGHT JOIN t3 ON t2.a=t3.a  (Q3)
+    the transformation looks slightly differently because the parser
+    replaces the RIGHT JOIN tree for an equivalent LEFT JOIN tree.
+
+             J                               LJ - ON
+            / \                             /  \
+          t1   LJ - ON    (TQ3*)    =>     J    t2
+              /  \                        / \
+            t3    t2                    t1   t3
+
+    With several left associative JOINs
+      SELECT * FROM t1 JOIN t2 JOIN t3 LEFT JOIN t4 ON t3.a=t4.a (Q4)
+    the newly created node for JOIN replaces the left most node of the tree:
+
+          J1                         LJ - ON
+         /  \                       /  \
+       t1    LJ - ON               J2   t4
+            /  \          =>      /  \
+           J2   t4              J1    t3
+          /  \                 /  \
+        t2    t3             t1    t2
+
+     Here's another example:
+       SELECT *
+       FROM t1 JOIN t2 LEFT JOIN t3 JOIN t4 ON t3.a=t4.a ON t2.b=t3.b (Q5)
+
+          J                       LJ - ON
+         / \                     /   \
+       t1   LJ - ON             J     J - ON
+           /  \          =>    / \   / \
+         t2    J - ON         t1 t2 t3 t4
+              / \
+            t3   t4
+
+     If the transformed nested join node node is a natural join node like in
+     the following query
+       SELECT * FROM t1 JOIN t2 LEFT JOIN t3 USING(a)  (Q6)
+     the transformation additionally has to take care about setting proper
+     references in the field natural_join for both operands of the natural
+     join operation.
+     The function also has to change the name resolution context for ON
+     expressions used in the transformed join expression to take into
+     account the tables of the left_op node.
+*/
+
+bool st_select_lex::add_cross_joined_table(TABLE_LIST *left_op,
+                                           TABLE_LIST *right_op,
+                                           bool straight_fl)
+{
+  DBUG_ENTER("add_cross_joined_table");
+  THD *thd= parent_lex->thd;
+  if (!(right_op->nested_join &&
+	(right_op->nested_join->nest_type & JOIN_OP_NEST)))
+  {
+    /*
+      This handles the cases when the right operand is not a nested join.
+      like in queries
+        SELECT * FROM t1 JOIN t2;
+        SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a JOIN t3
+    */
+    right_op->straight= straight_fl;
+    DBUG_RETURN(false);
+  }
+
+  TABLE_LIST *tbl;
+  List *jl= &right_op->nested_join->join_list;
+  TABLE_LIST *cj_nest;
+
+  /*
+    Create the node NJ for a new nested join for the future inclusion
+    of left_op in it. Initially the nest is empty.
+  */
+  if (unlikely(!(cj_nest=
+                 (TABLE_LIST*) thd->calloc(ALIGN_SIZE(sizeof(TABLE_LIST))+
+                                           sizeof(NESTED_JOIN)))))
+    DBUG_RETURN(true);
+  cj_nest->nested_join=
+    ((NESTED_JOIN*) ((uchar*) cj_nest + ALIGN_SIZE(sizeof(TABLE_LIST))));
+  cj_nest->nested_join->nest_type= JOIN_OP_NEST;
+  List *cjl=  &cj_nest->nested_join->join_list;
+  cjl->empty();
+
+  /* Look for the left most node tbl of the right_op tree */
+  for ( ; ; )
+  {
+    TABLE_LIST *pair_tbl= 0;  /* useful only for operands of natural joins */
+
+    List_iterator li(*jl);
+    tbl= li++;
+
+    /* Expand name resolution context */
+    Name_resolution_context *on_context;
+    if ((on_context= tbl->on_context))
+    {
+      on_context->first_name_resolution_table=
+        left_op->first_leaf_for_name_resolution();
+    }
+
+    if (!(tbl->outer_join & JOIN_TYPE_RIGHT))
+    {
+      pair_tbl= tbl;
+      tbl= li++;
+    }
+    if (tbl->nested_join &&
+        tbl->nested_join->nest_type & JOIN_OP_NEST)
+    {
+      jl= &tbl->nested_join->join_list;
+      continue;
+    }
+
+    /* Replace the tbl node in the tree for the newly created NJ node */
+    cj_nest->outer_join= tbl->outer_join;
+    cj_nest->on_expr= tbl->on_expr;
+    cj_nest->embedding= tbl->embedding;
+    cj_nest->join_list= jl;
+    cj_nest->alias= (char*) "(nest_last_join)";
+    li.replace(cj_nest);
+
+    /*
+      If tbl is an operand of a natural join set properly the references
+      in the fields natural_join for both operands of the operation.
+    */
+    if(tbl->embedding && tbl->embedding->is_natural_join)
+    {
+      if (!pair_tbl)
+        pair_tbl= li++;
+      pair_tbl->natural_join= cj_nest;
+      cj_nest->natural_join= pair_tbl;
+    }
+    break;
+  }
+
+  /* Attach tbl as the right operand of NJ */
+  if (unlikely(cjl->push_back(tbl, thd->mem_root)))
+    DBUG_RETURN(true);
+  tbl->outer_join= 0;
+  tbl->on_expr= 0;
+  tbl->straight= straight_fl;
+  tbl->natural_join= 0;
+  tbl->embedding= cj_nest;
+  tbl->join_list= cjl;
+
+  /* Add left_op as the left operand of NJ */
+  if (unlikely(cjl->push_back(left_op, thd->mem_root)))
+    DBUG_RETURN(true);
+  left_op->embedding= cj_nest;
+  left_op->join_list= cjl;
+
+  /*
+    Mark right_op as a rebalanced nested join in order not to
+    create a new top level nested join node.
+  */
+  right_op->nested_join->nest_type|= REBALANCED_NEST;
+  DBUG_RETURN(false);
+}
+
+
 /**
   Convert a right join into equivalent left join.
 
diff --git a/sql/sql_parse.h b/sql/sql_parse.h
index 602a3e8d788067e7affb043deacd2d4cdd9ab409..1048c735ff9200c138c50ee046a08445f72a7a2f 100644
--- a/sql/sql_parse.h
+++ b/sql/sql_parse.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_PARSE_INCLUDED
 #define SQL_PARSE_INCLUDED
diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc
index 05ef69e579597439883c31d224b83a7292abff34..6ca181cdbb0bbf9ce1174ac5cdd5725446dea9b2 100644
--- a/sql/sql_partition.cc
+++ b/sql/sql_partition.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /*
   This file is a container for general functionality related
diff --git a/sql/sql_partition.h b/sql/sql_partition.h
index 6629537b2ae81f2b0bb26ef6306cee90d2bc7753..6a3315c7f6a89c77fa7f52e037dfe386ee943b10 100644
--- a/sql/sql_partition.h
+++ b/sql/sql_partition.h
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface				/* gcc class implementation */
diff --git a/sql/sql_partition_admin.cc b/sql/sql_partition_admin.cc
index d2fdee934ceaa62903b1edfb980489e3e8c77e81..fdec68a517514c36df876f5829af781efcd6848d 100644
--- a/sql/sql_partition_admin.cc
+++ b/sql/sql_partition_admin.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "sql_parse.h"                      // check_one_table_access
                                             // check_merge_table_access
diff --git a/sql/sql_partition_admin.h b/sql/sql_partition_admin.h
index 9c53744d9bca2121057e6748df8b0ebfad8b06a0..4be9e56e3598acc1838adcbff1a322bb2c0507f1 100644
--- a/sql/sql_partition_admin.h
+++ b/sql/sql_partition_admin.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_PARTITION_ADMIN_H
 #define SQL_PARTITION_ADMIN_H
diff --git a/sql/sql_plist.h b/sql/sql_plist.h
index df50cccc87404d88e5b952a5f7d08cb052a67a29..1274a5a78c0e30ea403ded34f3f7ed140366420f 100644
--- a/sql/sql_plist.h
+++ b/sql/sql_plist.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #include 
diff --git a/sql/sql_plugin.cc b/sql/sql_plugin.cc
index 1000fc3711ae3289873b129e534e6c5de33a8304..c7f36014003b6128ffb56acb4d4274f3ef019b66 100644
--- a/sql/sql_plugin.cc
+++ b/sql/sql_plugin.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "sql_plugin.h"                         // Includes my_global.h
 #include "sql_priv.h"                         // SHOW_MY_BOOL
@@ -77,7 +77,7 @@ uint plugin_maturity_map[]=
 { 0, 1, 2, 3, 4, 5, 6 };
 
 /*
-  When you ad a new plugin type, add both a string and make sure that the
+  When you add a new plugin type, add both a string and make sure that the
   init and deinit array are correctly updated.
 */
 const LEX_STRING plugin_type_names[MYSQL_MAX_PLUGIN_TYPE_NUM]=
@@ -228,6 +228,7 @@ static DYNAMIC_ARRAY plugin_array;
 static HASH plugin_hash[MYSQL_MAX_PLUGIN_TYPE_NUM];
 static MEM_ROOT plugin_mem_root;
 static bool reap_needed= false;
+volatile int global_plugin_version= 1;
 
 static bool initialized= 0;
 ulong dlopen_count;
@@ -746,9 +747,9 @@ static st_plugin_dl *plugin_dl_add(const LEX_STRING *dl, int report)
     This is done to ensure that only approved libraries from the
     plugin directory are used (to make this even remotely secure).
   */
-  if (check_valid_path(dl->str, dl->length) ||
-      check_string_char_length((LEX_STRING *) dl, 0, NAME_CHAR_LEN,
+  if (check_string_char_length((LEX_STRING *) dl, 0, NAME_CHAR_LEN,
                                system_charset_info, 1) ||
+      check_valid_path(dl->str, dl->length) ||
       plugin_dir_len + dl->length + 1 >= FN_REFLEN)
   {
     report_error(report, ER_UDF_NO_PATHS);
@@ -1813,6 +1814,9 @@ static void plugin_load(MEM_ROOT *tmp_root)
     LEX_STRING name= {(char *)str_name.ptr(), str_name.length()};
     LEX_STRING dl= {(char *)str_dl.ptr(), str_dl.length()};
 
+    if (!name.length || !dl.length)
+      continue;
+
     /*
       there're no other threads running yet, so we don't need a mutex.
       but plugin_add() before is designed to work in multi-threaded
@@ -2181,6 +2185,7 @@ bool mysql_install_plugin(THD *thd, const LEX_STRING *name,
     reap_plugins();
   }
 err:
+  global_plugin_version++;
   mysql_mutex_unlock(&LOCK_plugin);
   if (argv)
     free_defaults(argv);
@@ -2327,6 +2332,7 @@ bool mysql_uninstall_plugin(THD *thd, const LEX_STRING *name,
   }
   reap_plugins();
 
+  global_plugin_version++;
   mysql_mutex_unlock(&LOCK_plugin);
   DBUG_RETURN(error);
 
@@ -3640,7 +3646,7 @@ static int construct_options(MEM_ROOT *mem_root, struct st_plugin_int *tmp,
   const LEX_STRING plugin_dash = { C_STRING_WITH_LEN("plugin-") };
   uint plugin_name_len= strlen(plugin_name);
   uint optnamelen;
-  const int max_comment_len= 180;
+  const int max_comment_len= 255;
   char *comment= (char *) alloc_root(mem_root, max_comment_len + 1);
   char *optname;
 
@@ -3674,8 +3680,9 @@ static int construct_options(MEM_ROOT *mem_root, struct st_plugin_int *tmp,
     options[0].typelib= options[1].typelib= &global_plugin_typelib;
 
     strxnmov(comment, max_comment_len, "Enable or disable ", plugin_name,
-            " plugin. One of: ON, OFF, FORCE (don't start "
-            "if the plugin fails to load).", NullS);
+            " plugin. One of: ON, OFF, FORCE (don't start if the plugin"
+            " fails to load), FORCE_PLUS_PERMANENT (like FORCE, but the"
+            " plugin can not be uninstalled).", NullS);
     options[0].comment= comment;
     /*
       Allocate temporary space for the value of the tristate.
diff --git a/sql/sql_plugin.h b/sql/sql_plugin.h
index d11c449962a87768233ac89fb28caa03972057d2..3bde06a992c8691a20330fad73f042016508edc0 100644
--- a/sql/sql_plugin.h
+++ b/sql/sql_plugin.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _sql_plugin_h
 #define _sql_plugin_h
@@ -37,6 +37,7 @@ enum enum_plugin_load_option { PLUGIN_OFF, PLUGIN_ON, PLUGIN_FORCE,
   PLUGIN_FORCE_PLUS_PERMANENT };
 extern const char *global_plugin_typelib_names[];
 
+extern volatile int global_plugin_version;
 extern ulong dlopen_count;
 
 #include 
diff --git a/sql/sql_plugin_compat.h b/sql/sql_plugin_compat.h
index 5c7bb62057513833260c7a714e2ee3ef81273842..876b18ee2d79af611f9893460e4649dffebd5863 100644
--- a/sql/sql_plugin_compat.h
+++ b/sql/sql_plugin_compat.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* old plugin api structures, used for backward compatibility */
 
diff --git a/sql/sql_plugin_services.ic b/sql/sql_plugin_services.ic
index 427d8937c57653a44f7552e351fbacf9387df943..6cf2a31f76b59076aa9eb3ef57574cc618ec8e51 100644
--- a/sql/sql_plugin_services.ic
+++ b/sql/sql_plugin_services.ic
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* support for Services */
 #include 
diff --git a/sql/sql_prepare.cc b/sql/sql_prepare.cc
index 9de2f7f34a58d02038f1131f57733ef1237acd0e..2c6aeda794ae7d7e32271c3e4421ca4cdcf851bd 100644
--- a/sql/sql_prepare.cc
+++ b/sql/sql_prepare.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /**
   @file
@@ -404,7 +404,7 @@ static bool send_prep_stmt(Prepared_statement *stmt,
 
 static ulong get_param_length(uchar **packet, ulong len)
 {
-  reg1 uchar *pos= *packet;
+  uchar *pos= *packet;
   if (len < 1)
     return 0;
   if (*pos < 251)
diff --git a/sql/sql_prepare.h b/sql/sql_prepare.h
index b468ac1bf9b401164122dc5a2a0e1f2510ca8d75..200d1abdd8af5bb023d58e4c5bc96659a1a9e17f 100644
--- a/sql/sql_prepare.h
+++ b/sql/sql_prepare.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "sql_error.h"
 
diff --git a/sql/sql_priv.h b/sql/sql_priv.h
index f54c66e1d9998c49fcc2842dbd93edc4c8eb5838..0f8ee5c0081978d77bcee68560de3535d29180c5 100644
--- a/sql/sql_priv.h
+++ b/sql/sql_priv.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/sql_profile.cc b/sql/sql_profile.cc
index 48f7987daf5f5a03a255ec55c8e5f9a2e60d64ec..d9dee7859f07eac30f8855843948c2ee1666af28 100644
--- a/sql/sql_profile.cc
+++ b/sql/sql_profile.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /**
diff --git a/sql/sql_profile.h b/sql/sql_profile.h
index 1d770ca1147657d958b9ffff785ad693fff95fc9..8271b97a840562047b48069bcd53827bb9254350 100644
--- a/sql/sql_profile.h
+++ b/sql/sql_profile.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef _SQL_PROFILE_H
 #define _SQL_PROFILE_H
diff --git a/sql/sql_reload.cc b/sql/sql_reload.cc
index ab9e7c33a9292cafbdb4887f6da61f021145e70e..daacab46c05bdbd4bf716d2b6b888d9e83109c87 100644
--- a/sql/sql_reload.cc
+++ b/sql/sql_reload.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_reload.h"
diff --git a/sql/sql_reload.h b/sql/sql_reload.h
index 33ca022dc14c969152b4f05dac8552c047ae1bef..699912e0398c66bc1f851e277179918f41ea001c 100644
--- a/sql/sql_reload.h
+++ b/sql/sql_reload.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 class THD;
 struct TABLE_LIST;
diff --git a/sql/sql_rename.cc b/sql/sql_rename.cc
index 4c164a3a621522e6bdc8b269962c562608279716..bd7841f1d3feb2a60c7345971b70080217e14990 100644
--- a/sql/sql_rename.cc
+++ b/sql/sql_rename.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Atomic rename of table;  RENAME TABLE t1 to t2, tmp to t1 [,...]
diff --git a/sql/sql_rename.h b/sql/sql_rename.h
index aaf09a8d030effd515230b73fa62c6433cda47b2..1b9fcfb12bc11aa74a421b5adbf539c3ade448f2 100644
--- a/sql/sql_rename.h
+++ b/sql/sql_rename.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_RENAME_INCLUDED
 #define SQL_RENAME_INCLUDED
diff --git a/sql/sql_repl.cc b/sql/sql_repl.cc
index f1a1ca6fd2b97a9bfb7843da0a0e96c4908a1881..ef6d0706da0a576e78b7834bbc92dfcf62ba16fd 100644
--- a/sql/sql_repl.cc
+++ b/sql/sql_repl.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sql_repl.h b/sql/sql_repl.h
index 37acff3141f244afc81232cb1e597f6e9a75f80e..6a50cc66a3a2e09a7d6c2852c859ef790d432a8f 100644
--- a/sql/sql_repl.h
+++ b/sql/sql_repl.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_REPL_INCLUDED
 #define SQL_REPL_INCLUDED
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index eb9e0492dc7623ceae92109faf2b6e4ed89b2ded..fb8e4755b1d7b2d5bcf3175f71669a3d3399eb31 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -1,5 +1,5 @@
-/* Copyright (c) 2000, 2016 Oracle and/or its affiliates.
-   Copyright (c) 2009, 2018 MariaDB Corporation
+/* Copyright (c) 2000, 2016, Oracle and/or its affiliates.
+   Copyright (c) 2009, 2019, MariaDB Corporation.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /**
   @file
@@ -218,7 +218,8 @@ static COND *make_cond_for_table_from_pred(THD *thd, Item *root_cond,
                                            table_map used_table,
                                            int join_tab_idx_arg,
                                            bool exclude_expensive_cond,
-                                           bool retain_ref_cond);
+                                           bool retain_ref_cond,
+                                           bool is_top_and_level);
 
 static Item* part_of_refkey(TABLE *form,Field *field);
 uint find_shortest_key(TABLE *table, const key_map *usable_keys);
@@ -357,7 +358,7 @@ bool handle_select(THD *thd, LEX *lex, select_result *result,
                    ulong setup_tables_done_option)
 {
   bool res;
-  register SELECT_LEX *select_lex = &lex->select_lex;
+  SELECT_LEX *select_lex = &lex->select_lex;
   DBUG_ENTER("handle_select");
   MYSQL_SELECT_START(thd->query());
 
@@ -1143,7 +1144,6 @@ JOIN::optimize_inner()
       DBUG_RETURN(1); /* purecov: inspected */
     /* dump_TABLE_LIST_graph(select_lex, select_lex->leaf_tables); */
     select_lex->update_used_tables();
-
   }
   
   eval_select_list_used_tables();
@@ -1205,6 +1205,8 @@ JOIN::optimize_inner()
 
     sel->where= conds;
 
+    select_lex->update_used_tables();
+
     if (arena)
       thd->restore_active_arena(arena, &backup);
   }
@@ -4238,7 +4240,7 @@ make_join_statistics(JOIN *join, List &tables_list,
     DBUG_RETURN(TRUE); /* purecov: inspected */
 
   {
-    ha_rows records= 1;
+    double records= 1;
     SELECT_LEX_UNIT *unit= join->select_lex->master_unit();
 
     /* Find an optimal join order of the non-constant tables. */
@@ -4263,10 +4265,11 @@ make_join_statistics(JOIN *join, List &tables_list,
         table/view.
       */
       for (i= 0; i < join->table_count ; i++)
-        records*= join->best_positions[i].records_read ?
-                  (ha_rows)join->best_positions[i].records_read : 1;
-      set_if_smaller(records, unit->select_limit_cnt);
-      join->select_lex->increase_derived_records(records);
+        if (double rr= join->best_positions[i].records_read)
+          records= COST_MULT(records, rr);
+      ha_rows rows= records > HA_ROWS_MAX ? HA_ROWS_MAX : (ha_rows) records;
+      set_if_smaller(rows, unit->select_limit_cnt);
+      join->select_lex->increase_derived_records(rows);
     }
   }
 
@@ -6153,7 +6156,7 @@ best_access_path(JOIN      *join,
             else
               tmp= table->file->read_time(key, 1,
                                           (ha_rows) MY_MIN(tmp,s->worst_seeks));
-            tmp*= record_count;
+            tmp= COST_MULT(tmp, record_count);
           }
         }
         else
@@ -6318,18 +6321,18 @@ best_access_path(JOIN      *join,
             else
               tmp= table->file->read_time(key, 1,
                                           (ha_rows) MY_MIN(tmp,s->worst_seeks));
-            tmp*= record_count;
+            tmp= COST_MULT(tmp, record_count);
           }
           else
-            tmp= best_time;                    // Do nothing
+            tmp= best_time;                     // Do nothing
         }
 
-        tmp += s->startup_cost;
+        tmp= COST_ADD(tmp, s->startup_cost);
         loose_scan_opt.check_ref_access_part2(key, start_key, records, tmp);
       } /* not ft_key */
       if (tmp + 0.0001 < best_time - records/(double) TIME_FOR_COMPARE)
       {
-        best_time= tmp + records/(double) TIME_FOR_COMPARE;
+        best_time= COST_ADD(tmp, records/(double) TIME_FOR_COMPARE);
         best= tmp;
         best_records= records;
         best_key= start_key;
@@ -6363,14 +6366,18 @@ best_access_path(JOIN      *join,
                                                      use_cond_selectivity);
 
     tmp= s->quick ? s->quick->read_time : s->scan_time();
-    tmp+= (s->records - rnd_records)/(double) TIME_FOR_COMPARE;
+    double cmp_time= (s->records - rnd_records)/(double) TIME_FOR_COMPARE;
+    tmp= COST_ADD(tmp, cmp_time);
 
     /* We read the table as many times as join buffer becomes full. */
-    tmp*= (1.0 + floor((double) cache_record_length(join,idx) *
-                          record_count /
-                          (double) thd->variables.join_buff_size));
-    best_time= tmp + 
-               (record_count*join_sel) / TIME_FOR_COMPARE * rnd_records;
+
+    double refills= (1.0 + floor((double) cache_record_length(join,idx) *
+                           record_count /
+			   (double) thd->variables.join_buff_size));
+    tmp= COST_MULT(tmp, refills);
+    best_time= COST_ADD(tmp,
+                        COST_MULT((record_count*join_sel) / TIME_FOR_COMPARE,
+                                  rnd_records));
     best= tmp;
     records= rnd_records;
     best_key= hj_start_key;
@@ -6396,7 +6403,8 @@ best_access_path(JOIN      *join,
         'range' access using index IDX, and the best way to perform 'ref' 
         access is to use the same index IDX, with the same or more key parts.
         (note: it is not clear how this rule is/should be extended to 
-        index_merge quick selects)
+        index_merge quick selects). Also if we have a hash join we prefer that
+        over a table scan
     (3) See above note about InnoDB.
     (4) NOT ("FORCE INDEX(...)" is used for table and there is 'ref' access
              path, but there is no quick select)
@@ -6412,6 +6420,7 @@ best_access_path(JOIN      *join,
         be used for cases with small datasets, which is annoying.
   */
   if ((records >= s->found_records || best > s->read_time) &&            // (1)
+      !(best_key && best_key->key == MAX_KEY) &&                         // (2)
       !(s->quick && best_key && s->quick->index == best_key->key &&      // (2)
         best_max_key_part >= s->table->quick_key_parts[best_key->key]) &&// (2)
       !((s->table->file->ha_table_flags() & HA_TABLE_SCAN_ON_INDEX) &&   // (3)
@@ -6439,9 +6448,9 @@ best_access_path(JOIN      *join,
         access (see first else-branch below), but we don't take it into 
         account here for range/index_merge access. Find out why this is so.
       */
-      tmp= record_count *
-        (s->quick->read_time +
-         (s->found_records - rnd_records)/(double) TIME_FOR_COMPARE);
+      double cmp_time= (s->found_records - rnd_records)/(double) TIME_FOR_COMPARE;
+      tmp= COST_MULT(record_count,
+                     COST_ADD(s->quick->read_time, cmp_time));
 
       loose_scan_opt.check_range_access(join, idx, s->quick);
     }
@@ -6460,16 +6469,15 @@ best_access_path(JOIN      *join,
           - read the whole table record 
           - skip rows which does not satisfy join condition
         */
-        tmp= record_count *
-          (tmp +
-           (s->records - rnd_records)/(double) TIME_FOR_COMPARE);
+        double cmp_time= (s->records - rnd_records)/(double) TIME_FOR_COMPARE;
+        tmp= COST_MULT(record_count, COST_ADD(tmp,cmp_time));
       }
       else
       {
-        /* We read the table as many times as join buffer becomes full. */
-        tmp*= (1.0 + floor((double) cache_record_length(join,idx) *
-                           record_count /
-                           (double) thd->variables.join_buff_size));
+        double refills= (1.0 + floor((double) cache_record_length(join,idx) *
+                        (record_count /
+                         (double) thd->variables.join_buff_size)));
+        tmp= COST_MULT(tmp, refills);
         /* 
             We don't make full cartesian product between rows in the scanned
            table and existing records because we skip all rows from the
@@ -6477,7 +6485,8 @@ best_access_path(JOIN      *join,
            we read the table (see flush_cached_records for details). Here we
            take into account cost to read and skip these records.
         */
-        tmp+= (s->records - rnd_records)/(double) TIME_FOR_COMPARE;
+        double cmp_time= (s->records - rnd_records)/(double) TIME_FOR_COMPARE;
+        tmp= COST_ADD(tmp, cmp_time);
       }
     }
 
@@ -6488,9 +6497,9 @@ best_access_path(JOIN      *join,
       tmp give us total cost of using TABLE SCAN
     */
     if (best == DBL_MAX ||
-        (tmp  + record_count/(double) TIME_FOR_COMPARE*rnd_records <
+        COST_ADD(tmp, record_count/(double) TIME_FOR_COMPARE*rnd_records) <
          (best_key->is_for_hash_join() ? best_time :
-          best + record_count/(double) TIME_FOR_COMPARE*records)))
+          COST_ADD(best, record_count/(double) TIME_FOR_COMPARE*records)))
     {
       /*
         If the table has a range (s->quick is set) make_join_select()
@@ -7019,9 +7028,10 @@ optimize_straight_join(JOIN *join, table_map join_tables)
                      join->positions + idx, &loose_scan_pos);
 
     /* compute the cost of the new plan extended with 's' */
-    record_count*= join->positions[idx].records_read;
-    read_time+= join->positions[idx].read_time +
-                record_count / (double) TIME_FOR_COMPARE;
+    record_count= COST_MULT(record_count, join->positions[idx].records_read);
+    read_time= COST_ADD(read_time,
+                        COST_ADD(join->positions[idx].read_time,
+                                 record_count / (double) TIME_FOR_COMPARE));
     advance_sj_state(join, join_tables, idx, &record_count, &read_time,
                      &loose_scan_pos);
 
@@ -7211,9 +7221,10 @@ greedy_search(JOIN      *join,
     swap_variables(JOIN_TAB*, join->best_ref[idx], join->best_ref[best_idx]);
 
     /* compute the cost of the new plan extended with 'best_table' */
-    record_count*= join->positions[idx].records_read;
-    read_time+= join->positions[idx].read_time + 
-                record_count / (double) TIME_FOR_COMPARE;
+    record_count= COST_MULT(record_count, join->positions[idx].records_read);
+    read_time= COST_ADD(read_time,
+                         COST_ADD(join->positions[idx].read_time,
+                                  record_count / (double) TIME_FOR_COMPARE));
 
     remaining_tables&= ~(best_table->table->map);
     --size_remain;
@@ -7320,11 +7331,13 @@ void JOIN::get_partial_cost_and_fanout(int end_tab_idx,
     }
     if (tab->records_read && (cur_table_map & filter_map))
     {
-      record_count *= tab->records_read;
-      read_time += tab->read_time + record_count / (double) TIME_FOR_COMPARE;
+      record_count= COST_MULT(record_count, tab->records_read);
+      read_time= COST_ADD(read_time,
+                          COST_ADD(tab->read_time,
+                                   record_count / (double) TIME_FOR_COMPARE));
       if (tab->emb_sj_nest)
-        sj_inner_fanout *= tab->records_read;
-    }
+        sj_inner_fanout= COST_MULT(sj_inner_fanout, tab->records_read);
+				     }
 
     if (i == last_sj_table)
     {
@@ -7362,8 +7375,8 @@ void JOIN::get_prefix_cost_and_fanout(uint n_tables,
   {
     if (best_positions[i].records_read)
     {
-      record_count *= best_positions[i].records_read;
-      read_time += best_positions[i].read_time;
+      record_count= COST_MULT(record_count, best_positions[i].records_read);
+      read_time= COST_ADD(read_time, best_positions[i].read_time);
     }
   }
   *read_time_arg= read_time;// + record_count / TIME_FOR_COMPARE;
@@ -7382,18 +7395,23 @@ double JOIN::get_examined_rows()
 {
   double examined_rows;
   double prev_fanout= 1;
+  double records;
   JOIN_TAB *tab= first_breadth_first_optimization_tab();
   JOIN_TAB *prev_tab= tab;
 
-  examined_rows= tab->get_examined_rows();
+  records= tab->get_examined_rows();
 
   while ((tab= next_breadth_first_tab(first_breadth_first_optimization_tab(),
                                       top_table_access_tabs_count, tab)))
   {
-    prev_fanout *= prev_tab->records_read;
-    examined_rows+= tab->get_examined_rows() * prev_fanout;
+    prev_fanout= COST_MULT(prev_fanout, prev_tab->records_read);
+    records=
+      COST_ADD(records,
+               COST_MULT((double) (tab->get_examined_rows()), prev_fanout));
     prev_tab= tab;
   }
+  examined_rows=
+    records > (double) HA_ROWS_MAX ? HA_ROWS_MAX : (ha_rows) records;
   return examined_rows;
 }
 
@@ -7924,13 +7942,12 @@ best_extension_by_limited_search(JOIN      *join,
       best_access_path(join, s, remaining_tables, idx, disable_jbuf,
                        record_count, join->positions + idx, &loose_scan_pos);
 
-      /* Compute the cost of extending the plan with 's', avoid overflow */
-      if (position->records_read < DBL_MAX / record_count)
-        current_record_count= record_count * position->records_read;
-      else
-        current_record_count= DBL_MAX;
-      current_read_time=read_time + position->read_time +
-                        current_record_count / (double) TIME_FOR_COMPARE;
+      /* Compute the cost of extending the plan with 's' */
+      current_record_count= COST_MULT(record_count, position->records_read);
+      current_read_time=COST_ADD(read_time,
+                                 COST_ADD(position->read_time,
+                                          current_record_count /
+                                          (double) TIME_FOR_COMPARE));
 
       advance_sj_state(join, remaining_tables, idx, ¤t_record_count,
                        ¤t_read_time, &loose_scan_pos);
@@ -8012,12 +8029,12 @@ best_extension_by_limited_search(JOIN      *join,
         if (join->sort_by_table &&
             join->sort_by_table !=
             join->positions[join->const_tables].table->table)
-          /* 
-             We may have to make a temp table, note that this is only a 
-             heuristic since we cannot know for sure at this point. 
+          /*
+             We may have to make a temp table, note that this is only a
+             heuristic since we cannot know for sure at this point.
              Hence it may be wrong.
           */
-          current_read_time+= current_record_count;
+          current_read_time= COST_ADD(current_read_time, current_record_count);
         if (current_read_time < join->best_read)
         {
           memcpy((uchar*) join->best_positions, (uchar*) join->positions,
@@ -8061,11 +8078,11 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
     DBUG_PRINT("best",("read_time: %g  record_count: %g",read_time,
 		       record_count));
 
-    read_time+=record_count/(double) TIME_FOR_COMPARE;
+    read_time= COST_ADD(read_time, record_count/(double) TIME_FOR_COMPARE);
     if (join->sort_by_table &&
 	join->sort_by_table !=
 	join->positions[join->const_tables].table->table)
-      read_time+=record_count;			// We have to make a temp table
+      read_time= COST_ADD(read_time, record_count);	// We have to make a temp table
     if (read_time < join->best_read)
     {
       memcpy((uchar*) join->best_positions,(uchar*) join->positions,
@@ -8074,7 +8091,8 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
     }
     DBUG_RETURN(FALSE);
   }
-  if (read_time+record_count/(double) TIME_FOR_COMPARE >= join->best_read)
+  if (COST_ADD(read_time, record_count/(double) TIME_FOR_COMPARE)
+      >= join->best_read)
     DBUG_RETURN(FALSE);					/* Found better before */
 
   JOIN_TAB *s;
@@ -8096,8 +8114,8 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
 	Go to the next level only if there hasn't been a better key on
 	this level! This will cut down the search for a lot simple cases!
       */
-      double current_record_count=record_count*records;
-      double current_read_time=read_time+best;
+      double current_record_count= COST_MULT(record_count, records);
+      double current_read_time= COST_ADD(read_time, best);
       advance_sj_state(join, rest_tables, idx, ¤t_record_count, 
                        ¤t_read_time, &loose_scan_pos);
 
@@ -8434,8 +8452,8 @@ prev_record_reads(POSITION *positions, uint idx, table_map found_ref)
           #max_nested_outer_joins=64-1) will not make it any more precise.
       */
       if (pos->records_read)
-        found*= pos->records_read;
-    }
+        found= COST_MULT(found, pos->records_read);
+     }
   }
   return found;
 }
@@ -9843,12 +9861,6 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
                      RAND_TABLE_BIT;
       }
 
-      /*
-	Following force including random expression in last table condition.
-	It solve problem with select like SELECT * FROM t1 WHERE rand() > 0.5
-      */
-      if (tab == join->join_tab + last_top_base_tab_idx)
-        current_map|= RAND_TABLE_BIT;
       used_tables|=current_map;
 
       if (tab->type == JT_REF && tab->quick &&
@@ -9890,6 +9902,20 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
         {
           tmp= make_cond_for_table(thd, cond, used_tables, current_map, i,
                                    FALSE, FALSE);
+          if (tab == join->join_tab + last_top_base_tab_idx)
+          {
+            /*
+              This pushes conjunctive conditions of WHERE condition such that:
+              - their used_tables() contain RAND_TABLE_BIT
+              - the conditions does not refer to any fields
+              (such like rand() > 0.5)
+            */
+            table_map rand_table_bit= (table_map) RAND_TABLE_BIT;
+            COND *rand_cond= make_cond_for_table(thd, cond, used_tables,
+                                                 rand_table_bit, -1,
+                                                 FALSE, FALSE);
+            add_cond_and_fix(thd, &tmp, rand_cond);
+          }
         }
         /* Add conditions added by add_not_null_conds(). */
         if (tab->select_cond)
@@ -10027,8 +10053,16 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
 	  /*
 	    We plan to scan all rows.
 	    Check again if we should use an index.
-	    We could have used an column from a previous table in
-	    the index if we are using limit and this is the first table
+
+            There are two cases:
+            1) There could be an index usage the refers to a previous
+               table that we didn't consider before, but could be consider
+               now as a "last resort". For example
+               SELECT * from t1,t2 where t1.a between t2.a and t2.b;
+            2) If the current table is the first non const table
+               and there is a limit it still possibly beneficial
+               to use the index even if the index range is big as
+               we can stop when we've found limit rows.
 
             (1) - Don't switch the used index if we are using semi-join
                   LooseScan on this table. Using different index will not
@@ -10217,6 +10251,21 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
                                               current_map,
                                               /*(inner_tab - first_tab)*/ -1,
 					      FALSE, FALSE);
+          if (tab == last_tab)
+          {
+            /*
+              This pushes conjunctive conditions of ON expression of an outer
+              join such that:
+              - their used_tables() contain RAND_TABLE_BIT
+              - the conditions does not refer to any fields
+              (such like rand() > 0.5)
+            */
+            table_map rand_table_bit= (table_map) RAND_TABLE_BIT;
+            COND *rand_cond= make_cond_for_table(thd, on_expr, used_tables2,
+                                                 rand_table_bit, -1,
+                                                 FALSE, FALSE);
+            add_cond_and_fix(thd, &tmp_cond, rand_cond);
+          }
           bool is_sjm_lookup_tab= FALSE;
           if (inner_tab->bush_children)
           {
@@ -11830,6 +11879,8 @@ ha_rows JOIN_TAB::get_examined_rows()
   else
     examined_rows= records_read;
 
+  if (examined_rows >= (double) HA_ROWS_MAX)
+    return HA_ROWS_MAX;
   return (ha_rows) examined_rows;
 }
 
@@ -12844,6 +12895,9 @@ static bool check_simple_equality(THD *thd, const Item::Context &ctx,
   {
     if (((Item_ref*)left_item)->get_depended_from())
       return FALSE;
+    if (((Item_direct_view_ref*)left_item)->get_null_ref_table() !=
+        NO_NULL_TABLE && !left_item->real_item()->used_tables())
+      return FALSE;
     left_item= left_item->real_item();
   }
   if (right_item->type() == Item::REF_ITEM &&
@@ -12851,6 +12905,9 @@ static bool check_simple_equality(THD *thd, const Item::Context &ctx,
   {
     if (((Item_ref*)right_item)->get_depended_from())
       return FALSE;
+    if (((Item_direct_view_ref*)right_item)->get_null_ref_table() !=
+        NO_NULL_TABLE && !right_item->real_item()->used_tables())
+      return FALSE;
     right_item= right_item->real_item();
   }
   if (left_item->type() == Item::FIELD_ITEM &&
@@ -14625,8 +14682,20 @@ simplify_joins(JOIN *join, List *join_list, COND *conds, bool top,
         table->table->maybe_null= FALSE;
       table->outer_join= 0;
       if (!(straight_join || table->straight))
-        table->dep_tables= table->embedding && !table->embedding->sj_subq_pred ?
-                             table->embedding->dep_tables : 0;
+      {
+        table->dep_tables= 0;
+        TABLE_LIST *embedding= table->embedding;
+        while (embedding)
+        {
+          if (embedding->nested_join->join_list.head()->outer_join)
+          {
+            if (!embedding->sj_subq_pred)
+              table->dep_tables= embedding->dep_tables;
+            break;
+          }
+          embedding= embedding->embedding;
+        }
+      }
       if (table->on_expr)
       {
         /* Add ON expression to the WHERE or upper-level ON condition. */
@@ -15149,11 +15218,12 @@ void optimize_wo_join_buffering(JOIN *join, uint first_tab, uint last_tab,
       pos= loose_scan_pos;
 
     reopt_remaining_tables &= ~rs->table->map;
-    rec_count *= pos.records_read;
-    cost += pos.read_time;
+    rec_count= COST_MULT(rec_count, pos.records_read);
+    cost= COST_ADD(cost, pos.read_time);
+
 
     if (!rs->emb_sj_nest)
-      *outer_rec_count *= pos.records_read;
+      *outer_rec_count= COST_MULT(*outer_rec_count, pos.records_read);
   }
   join->cur_sj_inner_tables= save_cur_sj_inner_tables;
 
@@ -20244,7 +20314,7 @@ make_cond_for_table(THD *thd, Item *cond, table_map tables,
   return make_cond_for_table_from_pred(thd, cond, cond, tables, used_table,
                                        join_tab_idx_arg,
                                        exclude_expensive_cond,
-                                       retain_ref_cond);
+                                       retain_ref_cond, true);
 }
 
 
@@ -20254,9 +20324,12 @@ make_cond_for_table_from_pred(THD *thd, Item *root_cond, Item *cond,
                               int join_tab_idx_arg,
                               bool exclude_expensive_cond __attribute__
                               ((unused)),
-                              bool retain_ref_cond)
+                              bool retain_ref_cond,
+                              bool is_top_and_level)
 
 {
+  table_map rand_table_bit= (table_map) RAND_TABLE_BIT;
+
   if (used_table && !(cond->used_tables() & used_table))
     return (COND*) 0;				// Already checked
 
@@ -20272,11 +20345,28 @@ make_cond_for_table_from_pred(THD *thd, Item *root_cond, Item *cond,
       Item *item;
       while ((item=li++))
       {
+        /*
+          Special handling of top level conjuncts with RAND_TABLE_BIT:
+          if such a conjunct contains a reference to a field that is not
+          an outer field then it is pushed to the corresponding table by
+          the same rule as all other conjuncts. Otherwise, if the conjunct
+          is used in WHERE is is pushed to the last joined table, if is it
+          is used in ON condition of an outer join it is pushed into the
+          last inner table of the outer join. Such conjuncts are pushed in
+          a call of make_cond_for_table_from_pred() with the
+          parameter 'used_table' equal to PSEUDO_TABLE_BITS.
+        */
+        if (is_top_and_level && used_table == rand_table_bit &&
+            (item->used_tables() & ~OUTER_REF_TABLE_BIT) != rand_table_bit)
+        {
+          /* The conjunct with RAND_TABLE_BIT has been allready pushed */
+          continue;
+        }
 	Item *fix=make_cond_for_table_from_pred(thd, root_cond, item, 
                                                 tables, used_table,
-						join_tab_idx_arg,
+                                                join_tab_idx_arg,
                                                 exclude_expensive_cond,
-                                                retain_ref_cond);
+                                                retain_ref_cond, false);
 	if (fix)
 	  new_cond->argument_list()->push_back(fix, thd->mem_root);
       }
@@ -20300,6 +20390,13 @@ make_cond_for_table_from_pred(THD *thd, Item *root_cond, Item *cond,
     }
     else
     {						// Or list
+      if (is_top_and_level && used_table == rand_table_bit &&
+          (cond->used_tables() & ~OUTER_REF_TABLE_BIT) != rand_table_bit)
+      {
+        /* This top level formula with RAND_TABLE_BIT has been already pushed */
+        return (COND*) 0;
+      }
+
       Item_cond_or *new_cond=new (thd->mem_root) Item_cond_or(thd);
       if (!new_cond)
 	return (COND*) 0;			// OOM /* purecov: inspected */
@@ -20311,7 +20408,7 @@ make_cond_for_table_from_pred(THD *thd, Item *root_cond, Item *cond,
                                                 tables, 0L,
                                                 join_tab_idx_arg,
                                                 exclude_expensive_cond,
-                                                retain_ref_cond);
+                                                retain_ref_cond, false);
 	if (!fix)
 	  return (COND*) 0;			// Always true
 	new_cond->argument_list()->push_back(fix, thd->mem_root);
@@ -20328,6 +20425,13 @@ make_cond_for_table_from_pred(THD *thd, Item *root_cond, Item *cond,
     }
   }
 
+  if (is_top_and_level && used_table == rand_table_bit &&
+      (cond->used_tables() & ~OUTER_REF_TABLE_BIT) != rand_table_bit)
+  {
+    /* This top level formula with RAND_TABLE_BIT has been already pushed */
+    return (COND*) 0;
+  }
+
   /*
     Because the following test takes a while and it can be done
     table_count times, we mark each item that we have examined with the result
@@ -24454,10 +24558,10 @@ void JOIN_TAB::save_explain_data(Explain_table_access *eta,
   }
   else
   {
-    double examined_rows= get_examined_rows();
+    ha_rows examined_rows= get_examined_rows();
 
     eta->rows_set= true;
-    eta->rows= (ha_rows) examined_rows;
+    eta->rows= examined_rows;
 
     /* "filtered"  */
     float f= 0.0; 
diff --git a/sql/sql_select.h b/sql/sql_select.h
index 266fe7a70661197ada3a3544246d0fe2bb51ac07..d955d569ced7a6e473b11623ab4b9f897baebbab 100644
--- a/sql/sql_select.h
+++ b/sql/sql_select.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/sql_servers.cc b/sql/sql_servers.cc
index 0138c3e5a3bfb614c1bb8774fc69325356d350cc..def4063f7e716606a921be23f637583d1a9aac17 100644
--- a/sql/sql_servers.cc
+++ b/sql/sql_servers.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /*
diff --git a/sql/sql_servers.h b/sql/sql_servers.h
index d5668f0dfcb848770bde1a3836394e8238fc6edf..85e7e68e05848cc6c23810dac01c4a805f47d84b 100644
--- a/sql/sql_servers.h
+++ b/sql/sql_servers.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "my_global.h"                  /* uint */
 #include "slave.h" // for tables_ok(), rpl_filter
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index 7f0c50a2e551c1adaf304c68c653f5d8dabca4d4..71bfc6444415a29f97e64d911f547cd287aae04a 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Function with list databases, tables or fields */
@@ -4272,8 +4272,8 @@ fill_schema_table_by_open(THD *thd, bool is_show_fields_or_keys,
     SQLCOM_SHOW_FIELDS is used because it satisfies
     'only_view_structure()'.
   */
-  lex->sql_command= SQLCOM_SHOW_FIELDS;
   thd->force_read_stats= get_schema_table_idx(schema_table) == SCH_STATISTICS;
+  lex->sql_command= SQLCOM_SHOW_FIELDS;
   result= (open_temporary_tables(thd, table_list) ||
            open_normal_and_derived_tables(thd, table_list,
                                           (MYSQL_OPEN_IGNORE_FLUSH |
@@ -4281,16 +4281,15 @@ fill_schema_table_by_open(THD *thd, bool is_show_fields_or_keys,
                                            (can_deadlock ?
                                             MYSQL_OPEN_FAIL_ON_MDL_CONFLICT : 0)),
                                           DT_PREPARE | DT_CREATE));
-
-  (void) read_statistics_for_tables_if_needed(thd, table_list);
-  thd->force_read_stats= false;
-
   /*
     Restore old value of sql_command back as it is being looked at in
     process_table() function.
   */
   lex->sql_command= old_lex->sql_command;
 
+  (void) read_statistics_for_tables_if_needed(thd, table_list);
+  thd->force_read_stats= false;
+
   DEBUG_SYNC(thd, "after_open_table_ignore_flush");
 
   /*
@@ -9840,8 +9839,6 @@ char *thd_get_error_context_description(THD *thd, char *buffer,
   char header[256];
   int len;
 
-  mysql_mutex_lock(&LOCK_thread_count);
-
   len= my_snprintf(header, sizeof(header),
                    "MySQL thread id %lu, OS thread handle 0x%lx, query id %lu",
                    thd->thread_id, (ulong) thd->real_id, (ulong) thd->query_id);
@@ -9886,7 +9883,6 @@ char *thd_get_error_context_description(THD *thd, char *buffer,
     }
     mysql_mutex_unlock(&thd->LOCK_thd_data);
   }
-  mysql_mutex_unlock(&LOCK_thread_count);
 
   if (str.c_ptr_safe() == buffer)
     return buffer;
diff --git a/sql/sql_show.h b/sql/sql_show.h
index dbae2a42b392c8cc27ee24c7a59e87bc5916f6a0..b912023d0b02de0ea51559586574e814a70eafce 100644
--- a/sql/sql_show.h
+++ b/sql/sql_show.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_SHOW_H
 #define SQL_SHOW_H
diff --git a/sql/sql_signal.cc b/sql/sql_signal.cc
index 1b7edbee54a3082c49037e2dfafe93f5752a9e1c..bb3b99ba4f66a7fe93248e9f4d0e987ba462adab 100644
--- a/sql/sql_signal.cc
+++ b/sql/sql_signal.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "sql_priv.h"
diff --git a/sql/sql_signal.h b/sql/sql_signal.h
index 2a508eed5bf7ae8a16fa0d82233702521640ccfa..b73233ef16e69c5e74277aa08dbf7368b5f8dd3d 100644
--- a/sql/sql_signal.h
+++ b/sql/sql_signal.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef SQL_SIGNAL_H
 #define SQL_SIGNAL_H
diff --git a/sql/sql_sort.h b/sql/sql_sort.h
index d30ddfb6eece13bba1e7a4f3b0873e0a66c8b9ec..09bf7d696e493573137760880d720954a2db6c57 100644
--- a/sql/sql_sort.h
+++ b/sql/sql_sort.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "m_string.h"                           /* memset */
 #include "my_global.h"                          /* uchar */
diff --git a/sql/sql_state.c b/sql/sql_state.c
index 2bfd61d66965378d7a67046266ae9bb718aaf514..dcffe49a783ef88930393577b197a16e5520a996 100644
--- a/sql/sql_state.c
+++ b/sql/sql_state.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Functions to map mysqld errno to sql_state */
 
diff --git a/sql/sql_statistics.cc b/sql/sql_statistics.cc
index 061622a2cd62d582cc18b417f81dac07754aa157..37f73adccb3fc5754ca63ae838b6e0ce76ac214c 100644
--- a/sql/sql_statistics.cc
+++ b/sql/sql_statistics.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file
@@ -2191,6 +2191,9 @@ inline bool statistics_for_command_is_needed(THD *thd)
   case SQLCOM_DELETE_MULTI:
   case SQLCOM_REPLACE:
   case SQLCOM_REPLACE_SELECT:
+  case SQLCOM_CREATE_TABLE:
+  case SQLCOM_SET_OPTION:
+  case SQLCOM_DO:
     break;
   default: 
     return FALSE;
@@ -3285,12 +3288,13 @@ int read_statistics_for_tables_if_needed(THD *thd, TABLE_LIST *tables)
       if (table_share->stats_cb.stats_is_read)
         tl->table->stats_is_read= TRUE;
       if (thd->variables.optimizer_use_condition_selectivity > 3 && 
-          table_share && !table_share->stats_cb.histograms_are_read)
+          table_share && table_share->stats_cb.stats_can_be_read &&
+          !table_share->stats_cb.histograms_are_read)
       {
         (void) read_histograms_for_table(thd, tl->table, stat_tables);
         table_share->stats_cb.histograms_are_read= TRUE;
       }
-      if (table_share->stats_cb.stats_is_read)
+      if (table_share->stats_cb.histograms_are_read)
         tl->table->histograms_are_read= TRUE;
     }
   }  
diff --git a/sql/sql_statistics.h b/sql/sql_statistics.h
index 6530c2d6c8f5b6dfe2ca39e7313a715752fc16b0..16325220e8452f7a9b11ddefe0b7ae17a107be8d 100644
--- a/sql/sql_statistics.h
+++ b/sql/sql_statistics.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_STATISTICS_H
 #define SQL_STATISTICS_H
diff --git a/sql/sql_string.cc b/sql/sql_string.cc
index 8c69bea2487c9fbff14ae2143aff82e5b07b416a..d03ed5be02f4c0c19c40c7c234a394d0e3ea4af7 100644
--- a/sql/sql_string.cc
+++ b/sql/sql_string.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is originally from the mysql distribution. Coded by monty */
 
@@ -608,8 +608,8 @@ int String::strstr(const String &s,uint32 offset)
     if (!s.length())
       return ((int) offset);	// Empty string is always found
 
-    register const char *str = Ptr+offset;
-    register const char *search=s.ptr();
+    const char *str = Ptr+offset;
+    const char *search=s.ptr();
     const char *end=Ptr+str_length-s.length()+1;
     const char *search_end=s.ptr()+s.length();
 skip:
@@ -617,7 +617,7 @@ int String::strstr(const String &s,uint32 offset)
     {
       if (*str++ == *search)
       {
-	register char *i,*j;
+	char *i,*j;
 	i=(char*) str; j=(char*) search+1;
 	while (j != search_end)
 	  if (*i++ != *j++) goto skip;
@@ -638,8 +638,8 @@ int String::strrstr(const String &s,uint32 offset)
   {
     if (!s.length())
       return offset;				// Empty string is always found
-    register const char *str = Ptr+offset-1;
-    register const char *search=s.ptr()+s.length()-1;
+    const char *str = Ptr+offset-1;
+    const char *search=s.ptr()+s.length()-1;
 
     const char *end=Ptr+s.length()-2;
     const char *search_end=s.ptr()-1;
@@ -648,7 +648,7 @@ int String::strrstr(const String &s,uint32 offset)
     {
       if (*str-- == *search)
       {
-	register char *i,*j;
+	char *i,*j;
 	i=(char*) str; j=(char*) search-1;
 	while (j != search_end)
 	  if (*i-- != *j--) goto skip;
diff --git a/sql/sql_string.h b/sql/sql_string.h
index ba28dbeea26978d2f82dadfcd740a5c9ca29ae4b..6fd3d7a10db52bec09a33cee78a4783db4ddbe35 100644
--- a/sql/sql_string.h
+++ b/sql/sql_string.h
@@ -16,7 +16,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is originally from the mysql distribution. Coded by monty */
 
diff --git a/sql/sql_table.cc b/sql/sql_table.cc
index 57333e7dc3010b64e1cc1c4b2e9da4f06ec49930..656834c78521683d1dc6786e8a92c5369bb7aba4 100644
--- a/sql/sql_table.cc
+++ b/sql/sql_table.cc
@@ -1,6 +1,6 @@
 /*
-   Copyright (c) 2000, 2016, Oracle and/or its affiliates.
-   Copyright (c) 2010, 2018, MariaDB
+   Copyright (c) 2000, 2019, Oracle and/or its affiliates.
+   Copyright (c) 2010, 2019, MariaDB
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /* drop and alter of tables */
@@ -2265,7 +2265,7 @@ int mysql_rm_table_no_locks(THD *thd, TABLE_LIST *tables, bool if_exists,
   for (table= tables; table; table= table->next_local)
   {
     bool is_trans= 0;
-    bool table_creation_was_logged= 1;
+    bool table_creation_was_logged= 0;
     char *db=table->db;
     size_t db_length= table->db_length;
     handlerton *table_type= 0;
@@ -2529,8 +2529,7 @@ int mysql_rm_table_no_locks(THD *thd, TABLE_LIST *tables, bool if_exists,
                                     table->table_name););
   }
   DEBUG_SYNC(thd, "rm_table_no_locks_before_binlog");
-  thd->thread_specific_used|= (trans_tmp_table_deleted ||
-                               non_trans_tmp_table_deleted);
+  thd->thread_specific_used= TRUE;
   error= 0;
 err:
   if (wrong_tables.length())
@@ -8242,6 +8241,50 @@ static bool fk_prepare_copy_alter_table(THD *thd, TABLE *table,
     }
   }
 
+  /*
+    Normally, an attempt to modify an FK parent table will cause
+    FK children to be prelocked, so the table-being-altered cannot
+    be modified by a cascade FK action, because ALTER holds a lock
+    and prelocking will wait.
+
+    But if a new FK is being added by this very ALTER, then the target
+    table is not locked yet (it's a temporary table). So, we have to
+    lock FK parents explicitly.
+  */
+  if (alter_info->flags & Alter_info::ADD_FOREIGN_KEY)
+  {
+    List_iterator fk_list_it(alter_info->key_list);
+
+    while (Key *key= fk_list_it++)
+    {
+      if (key->type != Key::FOREIGN_KEY)
+        continue;
+
+      Foreign_key *fk= static_cast(key);
+      char dbuf[NAME_LEN];
+      char tbuf[NAME_LEN];
+      const char *ref_db= fk->ref_db.str ? fk->ref_db.str : alter_ctx->new_db;
+      const char *ref_table= fk->ref_table.str;
+      MDL_request mdl_request;
+
+      if (lower_case_table_names)
+      {
+        strmake_buf(dbuf, ref_db);
+        my_casedn_str(system_charset_info, dbuf);
+        strmake_buf(tbuf, ref_table);
+        my_casedn_str(system_charset_info, tbuf);
+        ref_db= dbuf;
+        ref_table= tbuf;
+      }
+
+      mdl_request.init(MDL_key::TABLE, ref_db, ref_table, MDL_SHARED_NO_WRITE,
+                       MDL_TRANSACTION);
+      if (thd->mdl_context.acquire_lock(&mdl_request,
+                                        thd->variables.lock_wait_timeout))
+        DBUG_RETURN(true);
+    }
+  }
+
   DBUG_RETURN(false);
 }
 
@@ -9093,6 +9136,7 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name,
 
   /* Mark that we have created table in storage engine. */
   no_ha_table= false;
+  DEBUG_SYNC(thd, "alter_table_intermediate_table_created");
 
   if (create_info->tmp_table())
   {
@@ -9126,52 +9170,6 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name,
                                    true, true);
     if (!new_table)
       goto err_new_table_cleanup;
-
-    /*
-      Normally, an attempt to modify an FK parent table will cause
-      FK children to be prelocked, so the table-being-altered cannot
-      be modified by a cascade FK action, because ALTER holds a lock
-      and prelocking will wait.
-
-      But if a new FK is being added by this very ALTER, then the target
-      table is not locked yet (it's a temporary table). So, we have to
-      lock FK parents explicitly.
-    */
-    if (alter_info->flags & Alter_info::ADD_FOREIGN_KEY)
-    {
-      List  fk_list;
-      List_iterator fk_list_it(fk_list);
-      FOREIGN_KEY_INFO *fk;
-
-      /* tables_opened can be > 1 only for MERGE tables */
-      DBUG_ASSERT(tables_opened == 1);
-      DBUG_ASSERT(&table_list->next_global == thd->lex->query_tables_last);
-
-      new_table->file->get_foreign_key_list(thd, &fk_list);
-      while ((fk= fk_list_it++))
-      {
-        MDL_request mdl_request;
-
-        if (lower_case_table_names)
-        {
-         char buf[NAME_LEN];
-         uint len;
-         strmake_buf(buf, fk->referenced_db->str);
-         len = my_casedn_str(files_charset_info, buf);
-         thd->make_lex_string(fk->referenced_db, buf, len);
-         strmake_buf(buf, fk->referenced_table->str);
-         len = my_casedn_str(files_charset_info, buf);
-         thd->make_lex_string(fk->referenced_table, buf, len);
-        }
-
-        mdl_request.init(MDL_key::TABLE,
-                         fk->referenced_db->str, fk->referenced_table->str,
-                         MDL_SHARED_NO_WRITE, MDL_TRANSACTION);
-        if (thd->mdl_context.acquire_lock(&mdl_request,
-                                          thd->variables.lock_wait_timeout))
-          goto err_new_table_cleanup;
-      }
-    }
   }
   /*
     Note: In case of MERGE table, we do not attach children. We do not
@@ -10117,3 +10115,303 @@ bool check_engine(THD *thd, const char *db_name,
 
   DBUG_RETURN(false);
 }
+
+
+bool Sql_cmd_create_table::execute(THD *thd)
+{
+  DBUG_ENTER("Sql_cmd_create_table::execute");
+  LEX *lex= thd->lex;
+  TABLE_LIST *all_tables= lex->query_tables;
+  SELECT_LEX *select_lex= &lex->select_lex;
+  TABLE_LIST *first_table= select_lex->table_list.first;
+  DBUG_ASSERT(first_table == all_tables && first_table != 0);
+  bool link_to_local;
+  TABLE_LIST *create_table= first_table;
+  TABLE_LIST *select_tables= lex->create_last_non_select_table->next_global;
+  /* most outer SELECT_LEX_UNIT of query */
+  SELECT_LEX_UNIT *unit= &lex->unit;
+  int res= 0;
+
+  const bool used_engine= lex->create_info.used_fields & HA_CREATE_USED_ENGINE;
+  DBUG_ASSERT((m_storage_engine_name.str != NULL) == used_engine);
+  if (used_engine)
+  {
+    if (resolve_storage_engine_with_error(thd, &lex->create_info.db_type,
+                                          lex->create_info.tmp_table()))
+      DBUG_RETURN(true); // Engine not found, substitution is not allowed
+
+    if (!lex->create_info.db_type) // Not found, but substitution is allowed
+    {
+      lex->create_info.use_default_db_type(thd);
+      push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
+                          ER_WARN_USING_OTHER_HANDLER,
+                          ER_THD(thd, ER_WARN_USING_OTHER_HANDLER),
+                          hton_name(lex->create_info.db_type)->str,
+                          create_table->table_name);
+    }
+  }
+
+  if (lex->tmp_table())
+  {
+    status_var_decrement(thd->status_var.com_stat[SQLCOM_CREATE_TABLE]);
+    status_var_increment(thd->status_var.com_create_tmp_table);
+  }
+
+  /*
+    Code below (especially in mysql_create_table() and select_create
+    methods) may modify HA_CREATE_INFO structure in LEX, so we have to
+    use a copy of this structure to make execution prepared statement-
+    safe. A shallow copy is enough as this code won't modify any memory
+    referenced from this structure.
+  */
+  Table_specification_st create_info(lex->create_info);
+  /*
+    We need to copy alter_info for the same reasons of re-execution
+    safety, only in case of Alter_info we have to do (almost) a deep
+    copy.
+  */
+  Alter_info alter_info(lex->alter_info, thd->mem_root);
+
+  if (thd->is_fatal_error)
+  {
+    /* If out of memory when creating a copy of alter_info. */
+    res= 1;
+    goto end_with_restore_list;
+  }
+
+  /* Check privileges */
+  if ((res= create_table_precheck(thd, select_tables, create_table)))
+    goto end_with_restore_list;
+
+  /* Might have been updated in create_table_precheck */
+  create_info.alias= create_table->alias;
+
+  /* Fix names if symlinked or relocated tables */
+  if (append_file_to_dir(thd, &create_info.data_file_name,
+                         create_table->table_name) ||
+      append_file_to_dir(thd, &create_info.index_file_name,
+                         create_table->table_name))
+    goto end_with_restore_list;
+
+  /*
+    If no engine type was given, work out the default now
+    rather than at parse-time.
+  */
+  if (!(create_info.used_fields & HA_CREATE_USED_ENGINE))
+    create_info.use_default_db_type(thd);
+  /*
+    If we are using SET CHARSET without DEFAULT, add an implicit
+    DEFAULT to not confuse old users. (This may change).
+  */
+  if ((create_info.used_fields &
+       (HA_CREATE_USED_DEFAULT_CHARSET | HA_CREATE_USED_CHARSET)) ==
+      HA_CREATE_USED_CHARSET)
+  {
+    create_info.used_fields&= ~HA_CREATE_USED_CHARSET;
+    create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
+    create_info.default_table_charset= create_info.table_charset;
+    create_info.table_charset= 0;
+  }
+
+  /*
+    If we are a slave, we should add OR REPLACE if we don't have
+    IF EXISTS. This will help a slave to recover from
+    CREATE TABLE OR EXISTS failures by dropping the table and
+    retrying the create.
+  */
+  if (thd->slave_thread &&
+      slave_ddl_exec_mode_options == SLAVE_EXEC_MODE_IDEMPOTENT &&
+      !lex->create_info.if_not_exists())
+  {
+    create_info.add(DDL_options_st::OPT_OR_REPLACE);
+    create_info.add(DDL_options_st::OPT_OR_REPLACE_SLAVE_GENERATED);
+  }
+
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+  {
+    partition_info *part_info= thd->lex->part_info;
+    if (part_info && !(part_info= part_info->get_clone(thd)))
+    {
+      res= -1;
+      goto end_with_restore_list;
+    }
+    thd->work_part_info= part_info;
+  }
+#endif
+
+  if (select_lex->item_list.elements)		// With select
+  {
+    select_result *result;
+
+    /*
+      CREATE TABLE...IGNORE/REPLACE SELECT... can be unsafe, unless
+      ORDER BY PRIMARY KEY clause is used in SELECT statement. We therefore
+      use row based logging if mixed or row based logging is available.
+      TODO: Check if the order of the output of the select statement is
+      deterministic. Waiting for BUG#42415
+    */
+    if(lex->ignore)
+      lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_CREATE_IGNORE_SELECT);
+
+    if(lex->duplicates == DUP_REPLACE)
+      lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_CREATE_REPLACE_SELECT);
+
+    /*
+      If:
+      a) we inside an SP and there was NAME_CONST substitution,
+      b) binlogging is on (STMT mode),
+      c) we log the SP as separate statements
+      raise a warning, as it may cause problems
+      (see 'NAME_CONST issues' in 'Binary Logging of Stored Programs')
+     */
+    if (thd->query_name_consts && mysql_bin_log.is_open() &&
+        thd->wsrep_binlog_format() == BINLOG_FORMAT_STMT &&
+        !mysql_bin_log.is_query_in_union(thd, thd->query_id))
+    {
+      List_iterator_fast it(select_lex->item_list);
+      Item *item;
+      uint splocal_refs= 0;
+      /* Count SP local vars in the top-level SELECT list */
+      while ((item= it++))
+      {
+        if (item->get_item_splocal())
+          splocal_refs++;
+      }
+      /*
+        If it differs from number of NAME_CONST substitution applied,
+        we may have a SOME_FUNC(NAME_CONST()) in the SELECT list,
+        that may cause a problem with binary log (see BUG#35383),
+        raise a warning.
+      */
+      if (splocal_refs != thd->query_name_consts)
+        push_warning(thd,
+                     Sql_condition::WARN_LEVEL_WARN,
+                     ER_UNKNOWN_ERROR,
+"Invoked routine ran a statement that may cause problems with "
+"binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' "
+"section of the manual.");
+    }
+
+    select_lex->options|= SELECT_NO_UNLOCK;
+    unit->set_limit(select_lex);
+
+    /*
+      Disable non-empty MERGE tables with CREATE...SELECT. Too
+      complicated. See Bug #26379. Empty MERGE tables are read-only
+      and don't allow CREATE...SELECT anyway.
+    */
+    if (create_info.used_fields & HA_CREATE_USED_UNION)
+    {
+      my_error(ER_WRONG_OBJECT, MYF(0), create_table->db,
+               create_table->table_name, "BASE TABLE");
+      res= 1;
+      goto end_with_restore_list;
+    }
+
+    /* Copy temporarily the statement flags to thd for lock_table_names() */
+    uint save_thd_create_info_options= thd->lex->create_info.options;
+    thd->lex->create_info.options|= create_info.options;
+    res= open_and_lock_tables(thd, create_info, lex->query_tables, TRUE, 0);
+    thd->lex->create_info.options= save_thd_create_info_options;
+    if (res)
+    {
+      /* Got error or warning. Set res to 1 if error */
+      if (!(res= thd->is_error()))
+        my_ok(thd);                           // CREATE ... IF NOT EXISTS
+      goto end_with_restore_list;
+    }
+
+    /* Ensure we don't try to create something from which we select from */
+    if (create_info.or_replace() && !create_info.tmp_table())
+    {
+      TABLE_LIST *duplicate;
+      if ((duplicate= unique_table(thd, lex->query_tables,
+                                   lex->query_tables->next_global,
+                                   CHECK_DUP_FOR_CREATE)))
+      {
+        update_non_unique_table_error(lex->query_tables, "CREATE",
+                                      duplicate);
+        res= TRUE;
+        goto end_with_restore_list;
+      }
+    }
+    {
+      /*
+        Remove target table from main select and name resolution
+        context. This can't be done earlier as it will break view merging in
+        statements like "CREATE TABLE IF NOT EXISTS existing_view SELECT".
+      */
+      lex->unlink_first_table(&link_to_local);
+
+      /* Store reference to table in case of LOCK TABLES */
+      create_info.table= create_table->table;
+
+      /*
+        select_create is currently not re-execution friendly and
+        needs to be created for every execution of a PS/SP.
+        Note: In wsrep-patch, CTAS is handled like a regular transaction.
+      */
+      if ((result= new (thd->mem_root) select_create(thd, create_table,
+                                                     &create_info,
+                                                     &alter_info,
+                                                     select_lex->item_list,
+                                                     lex->duplicates,
+                                                     lex->ignore,
+                                                     select_tables)))
+      {
+        /*
+          CREATE from SELECT give its SELECT_LEX for SELECT,
+          and item_list belong to SELECT
+        */
+        if (!(res= handle_select(thd, lex, result, 0)))
+        {
+          if (create_info.tmp_table())
+            thd->variables.option_bits|= OPTION_KEEP_LOG;
+        }
+        delete result;
+      }
+      lex->link_first_table_back(create_table, link_to_local);
+    }
+  }
+  else
+  {
+    /* regular create */
+    if (create_info.like())
+    {
+      /* CREATE TABLE ... LIKE ... */
+      res= mysql_create_like_table(thd, create_table, select_tables,
+                                   &create_info);
+    }
+    else
+    {
+      /*
+        In STATEMENT format, we probably have to replicate also temporary
+        tables, like mysql replication does. Also check if the requested
+        engine is allowed/supported.
+      */
+      if (WSREP(thd) &&
+          !check_engine(thd, create_table->db, create_table->table_name,
+                        &create_info) &&
+          (!thd->is_current_stmt_binlog_format_row() ||
+           !create_info.tmp_table()))
+      {
+        WSREP_TO_ISOLATION_BEGIN(create_table->db, create_table->table_name, NULL)
+      }
+      /* Regular CREATE TABLE */
+      res= mysql_create_table(thd, create_table, &create_info, &alter_info);
+    }
+    if (!res)
+    {
+      /* So that CREATE TEMPORARY TABLE gets to binlog at commit/rollback */
+      if (create_info.tmp_table())
+        thd->variables.option_bits|= OPTION_KEEP_LOG;
+      my_ok(thd);
+    }
+  }
+
+end_with_restore_list:
+  DBUG_RETURN(res);
+
+WSREP_ERROR_LABEL:
+  DBUG_RETURN(true);
+}
diff --git a/sql/sql_table.h b/sql/sql_table.h
index 474fe9cd90b0b1232d961a61e5552f42dc2b8bea..1ac7387046272ff169efe7c8fc58ba62f38ef573 100644
--- a/sql/sql_table.h
+++ b/sql/sql_table.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_TABLE_INCLUDED
 #define SQL_TABLE_INCLUDED
diff --git a/sql/sql_tablespace.cc b/sql/sql_tablespace.cc
index 8b9e14e5a18410171fe74d46794de617394b065d..3e241e313a5d4f5808ce989f888c6142e57b15f8 100644
--- a/sql/sql_tablespace.cc
+++ b/sql/sql_tablespace.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* drop and alter of tablespaces */
 
diff --git a/sql/sql_tablespace.h b/sql/sql_tablespace.h
index ae77d15cbcb7c5b72f7c5ca7b1027e61777dab5d..0760935edfc02d52a0542fda4457e05cc3dc51bf 100644
--- a/sql/sql_tablespace.h
+++ b/sql/sql_tablespace.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_TABLESPACE_INCLUDED
 #define SQL_TABLESPACE_INCLUDED
diff --git a/sql/sql_test.cc b/sql/sql_test.cc
index 8e7525893ebbb1eea37a1c7a8449b0e9a325c160..adda01d2f97a36726806b23e9f4082eed3b60aa2 100644
--- a/sql/sql_test.cc
+++ b/sql/sql_test.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Write some debug info */
diff --git a/sql/sql_test.h b/sql/sql_test.h
index 3c1ee188eeb187a87e44855172dcab4d69543392..f6d89cf554eeb3a42c1948de18eafb636650a1c7 100644
--- a/sql/sql_test.h
+++ b/sql/sql_test.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_TEST_INCLUDED
 #define SQL_TEST_INCLUDED
diff --git a/sql/sql_time.cc b/sql/sql_time.cc
index c4d875e4178647a3d1de4e531bdb31288dcc6355..6d94de047e8ffb7d6a980d0c7814d0fd4742eea8 100644
--- a/sql/sql_time.cc
+++ b/sql/sql_time.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Functions to handle date and time */
diff --git a/sql/sql_time.h b/sql/sql_time.h
index e0cab5cfa66e8019d9ae667c1eb1e414854bb970..e3aa6bcb359ac7731184b32101c04e8c293cc581 100644
--- a/sql/sql_time.h
+++ b/sql/sql_time.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_TIME_INCLUDED
 #define SQL_TIME_INCLUDED
diff --git a/sql/sql_trigger.cc b/sql/sql_trigger.cc
index f6dd48131bf1d0bbe9cb10972fe6c8c3582b2fab..4ecd813992132d1e2506ea9be596f63d3ebc34f5 100644
--- a/sql/sql_trigger.cc
+++ b/sql/sql_trigger.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #define MYSQL_LEX 1
diff --git a/sql/sql_trigger.h b/sql/sql_trigger.h
index fa858a0582b2368e5cfd3572b2c4cc273971c655..f451dfda1ee5b48d82afcb863d72589a20e90479 100644
--- a/sql/sql_trigger.h
+++ b/sql/sql_trigger.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 
diff --git a/sql/sql_truncate.cc b/sql/sql_truncate.cc
index 6252caf98b0c835cacac53da69a86ab570d08ec5..a00659e362bd45abbc4145b53ca685f6bb8df708 100644
--- a/sql/sql_truncate.cc
+++ b/sql/sql_truncate.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "debug_sync.h"  // DEBUG_SYNC
 #include "table.h"       // TABLE, FOREIGN_KEY_INFO
diff --git a/sql/sql_truncate.h b/sql/sql_truncate.h
index b8525fd6abbdb19c3b9564d378ce1603aaed9de0..7d2ff4b605061adebdbe44ccf95532ce08abeb1e 100644
--- a/sql/sql_truncate.h
+++ b/sql/sql_truncate.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 class THD;
 struct TABLE_LIST;
diff --git a/sql/sql_type.cc b/sql/sql_type.cc
index 7d52419ae18fd70847e4ffc3b076ad5d5f4060a4..628e1cfd3665bf13b0e0ce87698ca85e2e672851 100644
--- a/sql/sql_type.cc
+++ b/sql/sql_type.cc
@@ -12,7 +12,7 @@
 
  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "sql_type.h"
 #include "sql_const.h"
diff --git a/sql/sql_type.h b/sql/sql_type.h
index f5a42e8d97d48a2a6b2c7c747a539a243cee56b6..632492affd8ad744ac85930f54db11826b2d1e2f 100644
--- a/sql/sql_type.h
+++ b/sql/sql_type.h
@@ -14,7 +14,7 @@
 
  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
diff --git a/sql/sql_type_int.h b/sql/sql_type_int.h
index 7433bd5249f1b3cce0ce9bd872b8efb218f90edc..74e59b083853dc2977422f16775372e07ce73a44 100644
--- a/sql/sql_type_int.h
+++ b/sql/sql_type_int.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_TYPE_INT_INCLUDED
 #define SQL_TYPE_INT_INCLUDED
diff --git a/sql/sql_udf.cc b/sql/sql_udf.cc
index 4ccd4948b58d39d58cc9094a0f5d5926cbb5738e..d195000e33d0c195a231df20c82360f1187d73f6 100644
--- a/sql/sql_udf.cc
+++ b/sql/sql_udf.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This implements 'user defined functions' */
 
diff --git a/sql/sql_udf.h b/sql/sql_udf.h
index d3ec1cc1f9549caea5f912b19b7dbc497e133a2d..a683b8a75540a9b8b2d0cb994126632cdfd8331e 100644
--- a/sql/sql_udf.h
+++ b/sql/sql_udf.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* This file defines structures needed by udf functions */
diff --git a/sql/sql_union.cc b/sql/sql_union.cc
index 72926a26e13ef7daf24d913b727412cc028a0541..38de2d592edd84edecafd837427a98c81b30d62a 100644
--- a/sql/sql_union.cc
+++ b/sql/sql_union.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /*
diff --git a/sql/sql_union.h b/sql/sql_union.h
index 171f607fba76be370d9cdf17a584babd03389185..7b65bccd40dcc1c2650bca80a1577c8336c20ed0 100644
--- a/sql/sql_union.h
+++ b/sql/sql_union.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_UNION_INCLUDED
 #define SQL_UNION_INCLUDED
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index 721e1ed908c9fa152e16c659183d8b8fe43c3175..1360bf9fb743df230e860b487d6ab1537817598e 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /*
@@ -1364,106 +1364,81 @@ static bool multi_update_check_table_access(THD *thd, TABLE_LIST *table,
 }
 
 
-/*
-  make update specific preparation and checks after opening tables
+class Multiupdate_prelocking_strategy : public DML_prelocking_strategy
+{
+  bool done;
+  bool has_prelocking_list;
+public:
+  void reset(THD *thd);
+  bool handle_end(THD *thd);
+};
+
+void Multiupdate_prelocking_strategy::reset(THD *thd)
+{
+  done= false;
+  has_prelocking_list= thd->lex->requires_prelocking();
+}
 
-  SYNOPSIS
-    mysql_multi_update_prepare()
-    thd         thread handler
+/**
+  Determine what tables could be updated in the multi-update
 
-  RETURN
-    FALSE OK
-    TRUE  Error
+  For these tables we'll need to open triggers and continue prelocking
+  until all is open.
 */
-
-int mysql_multi_update_prepare(THD *thd)
+bool Multiupdate_prelocking_strategy::handle_end(THD *thd)
 {
-  LEX *lex= thd->lex;
-  TABLE_LIST *table_list= lex->query_tables;
-  TABLE_LIST *tl;
-  List *fields= &lex->select_lex.item_list;
-  table_map tables_for_update;
-  bool update_view= 0;
-  DML_prelocking_strategy prelocking_strategy;
-  bool has_prelocking_list= thd->lex->requires_prelocking();
+  DBUG_ENTER("Multiupdate_prelocking_strategy::handle_end");
+  if (done)
+    DBUG_RETURN(0);
 
-  /*
-    if this multi-update was converted from usual update, here is table
-    counter else junk will be assigned here, but then replaced with real
-    count in open_tables()
-  */
-  uint  table_count= lex->table_count;
-  const bool using_lock_tables= thd->locked_tables_mode != LTM_NONE;
-  bool original_multiupdate= (thd->lex->sql_command == SQLCOM_UPDATE_MULTI);
-  DBUG_ENTER("mysql_multi_update_prepare");
+  LEX *lex= thd->lex;
+  SELECT_LEX *select_lex= &lex->select_lex;
+  TABLE_LIST *table_list= lex->query_tables, *tl;
 
-  /* following need for prepared statements, to run next time multi-update */
-  thd->lex->sql_command= SQLCOM_UPDATE_MULTI;
+  done= true;
 
-  /*
-    Open tables and create derived ones, but do not lock and fill them yet.
+  if (mysql_handle_derived(lex, DT_INIT) ||
+      mysql_handle_derived(lex, DT_MERGE_FOR_INSERT) ||
+      mysql_handle_derived(lex, DT_PREPARE))
+    DBUG_RETURN(1);
 
-    During prepare phase acquire only S metadata locks instead of SW locks to
-    keep prepare of multi-UPDATE compatible with concurrent LOCK TABLES WRITE
-    and global read lock.
-  */
-  if ((original_multiupdate && open_tables(thd, &table_list, &table_count,
-                                           thd->stmt_arena->is_stmt_prepare()
-                                           ? MYSQL_OPEN_FORCE_SHARED_MDL : 0,
-                                           &prelocking_strategy)) ||
-      mysql_handle_derived(lex, DT_INIT))
-    DBUG_RETURN(TRUE);
   /*
     setup_tables() need for VIEWs. JOIN::prepare() will call setup_tables()
     second time, but this call will do nothing (there are check for second
     call in setup_tables()).
   */
 
-  //We need to merge for insert prior to prepare.
-  if (mysql_handle_derived(lex, DT_MERGE_FOR_INSERT))
-    DBUG_RETURN(TRUE);
-  if (mysql_handle_derived(lex, DT_PREPARE))
-    DBUG_RETURN(TRUE);
-
-  if (setup_tables_and_check_access(thd, &lex->select_lex.context,
-                                    &lex->select_lex.top_join_list,
-                                    table_list,
-                                    lex->select_lex.leaf_tables, FALSE,
-                                    UPDATE_ACL, SELECT_ACL, FALSE))
-    DBUG_RETURN(TRUE);
+  if (setup_tables_and_check_access(thd, &select_lex->context,
+        &select_lex->top_join_list, table_list, select_lex->leaf_tables,
+        FALSE, UPDATE_ACL, SELECT_ACL, FALSE))
+    DBUG_RETURN(1);
 
-  if (lex->select_lex.handle_derived(thd->lex, DT_MERGE))  
-    DBUG_RETURN(TRUE);
+  if (select_lex->handle_derived(thd->lex, DT_MERGE))
+    DBUG_RETURN(1);
 
+  List *fields= &lex->select_lex.item_list;
   if (setup_fields_with_no_wrap(thd, 0, *fields, MARK_COLUMNS_WRITE, 0, 0))
-    DBUG_RETURN(TRUE);
+    DBUG_RETURN(1);
 
   for (tl= table_list; tl ; tl= tl->next_local)
-  {
     if (tl->view)
     {
-      update_view= 1;
-      break;
+      if (check_fields(thd, *fields))
+        DBUG_RETURN(1);
+      else
+        break;
     }
-  }
-
-  if (update_view && check_fields(thd, *fields))
-  {
-    DBUG_RETURN(TRUE);
-  }
-
-  thd->table_map_for_update= tables_for_update= get_table_map(fields);
 
-  if (unsafe_key_update(lex->select_lex.leaf_tables, tables_for_update))
-    DBUG_RETURN(true);
+  table_map tables_for_update= thd->table_map_for_update= get_table_map(fields);
 
-  TABLE_LIST **new_tables= lex->query_tables_last;
-  DBUG_ASSERT(*new_tables== NULL);
+  if (unsafe_key_update(select_lex->leaf_tables, tables_for_update))
+    DBUG_RETURN(1);
 
   /*
     Setup timestamp handling and locking mode
   */
-  List_iterator ti(lex->select_lex.leaf_tables);
+  List_iterator ti(select_lex->leaf_tables);
+  const bool using_lock_tables= thd->locked_tables_mode != LTM_NONE;
   while ((tl= ti++))
   {
     TABLE *table= tl->table;
@@ -1477,7 +1452,7 @@ int mysql_multi_update_prepare(THD *thd)
       if (!tl->single_table_updatable() || check_key_in_view(thd, tl))
       {
         my_error(ER_NON_UPDATABLE_TABLE, MYF(0), tl->alias, "UPDATE");
-        DBUG_RETURN(TRUE);
+        DBUG_RETURN(1);
       }
 
       DBUG_PRINT("info",("setting table `%s` for update", tl->alias));
@@ -1488,8 +1463,8 @@ int mysql_multi_update_prepare(THD *thd)
       tl->updating= 1;
       if (tl->belong_to_view)
         tl->belong_to_view->updating= 1;
-      if (extend_table_list(thd, tl, &prelocking_strategy, has_prelocking_list))
-        DBUG_RETURN(TRUE);
+      if (extend_table_list(thd, tl, this, has_prelocking_list))
+        DBUG_RETURN(1);
     }
     else
     {
@@ -1521,19 +1496,6 @@ int mysql_multi_update_prepare(THD *thd)
     through all leaf tables but also through all view hierarchy.
   */
 
-  uint addon_table_count= 0;
-  if (*new_tables)
-  {
-    Sroutine_hash_entry **new_routines= thd->lex->sroutines_list.next;
-    DBUG_ASSERT(*new_routines == NULL);
-    if (open_tables(thd, thd->lex->create_info, new_tables,
-                    &addon_table_count, new_routines,
-                    thd->stmt_arena->is_stmt_prepare()
-                    ? MYSQL_OPEN_FORCE_SHARED_MDL : 0,
-                    &prelocking_strategy))
-      DBUG_RETURN(TRUE);
-  }
-
   for (tl= table_list; tl; tl= tl->next_local)
   {
     bool not_used= false;
@@ -1546,23 +1508,67 @@ int mysql_multi_update_prepare(THD *thd)
   /* check single table update for view compound from several tables */
   for (tl= table_list; tl; tl= tl->next_local)
   {
+    TABLE_LIST *for_update= 0;
     if (tl->is_jtbm())
       continue;
-    if (tl->is_merged_derived())
+    if (tl->is_merged_derived() &&
+        tl->check_single_table(&for_update, tables_for_update, tl))
     {
-      TABLE_LIST *for_update= 0;
-      if (tl->check_single_table(&for_update, tables_for_update, tl))
-      {
-	my_error(ER_VIEW_MULTIUPDATE, MYF(0),
-		 tl->view_db.str, tl->view_name.str);
-	DBUG_RETURN(-1);
-      }
+      my_error(ER_VIEW_MULTIUPDATE, MYF(0), tl->view_db.str, tl->view_name.str);
+      DBUG_RETURN(-1);
     }
   }
 
+  DBUG_RETURN(0);
+}
+
+/*
+  make update specific preparation and checks after opening tables
+
+  SYNOPSIS
+    mysql_multi_update_prepare()
+    thd         thread handler
+
+  RETURN
+    FALSE OK
+    TRUE  Error
+*/
+
+int mysql_multi_update_prepare(THD *thd)
+{
+  LEX *lex= thd->lex;
+  TABLE_LIST *table_list= lex->query_tables;
+  TABLE_LIST *tl;
+  Multiupdate_prelocking_strategy prelocking_strategy;
+  uint table_count= lex->table_count;
+  DBUG_ENTER("mysql_multi_update_prepare");
+
+  /*
+    Open tables and create derived ones, but do not lock and fill them yet.
+
+    During prepare phase acquire only S metadata locks instead of SW locks to
+    keep prepare of multi-UPDATE compatible with concurrent LOCK TABLES WRITE
+    and global read lock.
+  */
+  if (thd->lex->sql_command == SQLCOM_UPDATE_MULTI)
+  {
+    if (open_tables(thd, &table_list, &table_count,
+        thd->stmt_arena->is_stmt_prepare() ? MYSQL_OPEN_FORCE_SHARED_MDL : 0,
+        &prelocking_strategy))
+      DBUG_RETURN(TRUE);
+  }
+  else
+  {
+    /* following need for prepared statements, to run next time multi-update */
+    thd->lex->sql_command= SQLCOM_UPDATE_MULTI;
+    prelocking_strategy.reset(thd);
+    if (prelocking_strategy.handle_end(thd))
+      DBUG_RETURN(TRUE);
+  }
+
   /* now lock and fill tables */
   if (!thd->stmt_arena->is_stmt_prepare() &&
-      lock_tables(thd, table_list, table_count + addon_table_count, 0))
+      lock_tables(thd, table_list, table_count, 0))
   {
     DBUG_RETURN(TRUE);
   }
@@ -1575,7 +1581,7 @@ int mysql_multi_update_prepare(THD *thd)
   */
   lex->select_lex.exclude_from_table_unique_test= TRUE;
   /* We only need SELECT privilege for columns in the values list */
-  ti.rewind();
+  List_iterator ti(lex->select_lex.leaf_tables);
   while ((tl= ti++))
   {
     if (tl->is_jtbm())
@@ -1618,25 +1624,18 @@ int mysql_multi_update_prepare(THD *thd)
   Setup multi-update handling and call SELECT to do the join
 */
 
-bool mysql_multi_update(THD *thd,
-                        TABLE_LIST *table_list,
-                        List *fields,
-                        List *values,
-                        COND *conds,
-                        ulonglong options,
+bool mysql_multi_update(THD *thd, TABLE_LIST *table_list, List *fields,
+                        List *values, COND *conds, ulonglong options,
                         enum enum_duplicates handle_duplicates,
-                        bool ignore,
-                        SELECT_LEX_UNIT *unit,
-                        SELECT_LEX *select_lex,
-                        multi_update **result)
+                        bool ignore, SELECT_LEX_UNIT *unit,
+                        SELECT_LEX *select_lex, multi_update **result)
 {
   bool res;
   DBUG_ENTER("mysql_multi_update");
-  
+
   if (!(*result= new (thd->mem_root) multi_update(thd, table_list,
                                  &thd->lex->select_lex.leaf_tables,
-                                 fields, values,
-                                 handle_duplicates, ignore)))
+                                 fields, values, handle_duplicates, ignore)))
   {
     DBUG_RETURN(TRUE);
   }
@@ -1644,11 +1643,9 @@ bool mysql_multi_update(THD *thd,
   thd->abort_on_warning= !ignore && thd->is_strict_mode();
   List total_list;
 
-  res= mysql_select(thd, &select_lex->ref_pointer_array,
-                    table_list, select_lex->with_wild,
-                    total_list,
-                    conds, 0, (ORDER *) NULL, (ORDER *)NULL, (Item *) NULL,
-                    (ORDER *)NULL,
+  res= mysql_select(thd, &select_lex->ref_pointer_array, table_list,
+                    select_lex->with_wild, total_list, conds, 0, NULL, NULL,
+                    NULL, NULL,
                     options | SELECT_NO_JOIN_CACHE | SELECT_NO_UNLOCK |
                     OPTION_SETUP_TABLES_DONE,
                     *result, unit, select_lex);
diff --git a/sql/sql_update.h b/sql/sql_update.h
index 4c6f89d84688d30299dabacb6af8a125f700256a..d8cd302880f5bfa170472b9c68552f453e3b0757 100644
--- a/sql/sql_update.h
+++ b/sql/sql_update.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef SQL_UPDATE_INCLUDED
 #define SQL_UPDATE_INCLUDED
diff --git a/sql/sql_view.cc b/sql/sql_view.cc
index cef20ba08f9f2dd9637ebff8161d9abe9735ce0d..cb92f30c932ef929008a62bb5f2595bc60a4c211 100644
--- a/sql/sql_view.cc
+++ b/sql/sql_view.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #define MYSQL_LEX 1
diff --git a/sql/sql_view.h b/sql/sql_view.h
index ce83dc656adc1aca6738dd65a161551582308c03..63831b08d508a56fe93f8c6caa347140d31f428f 100644
--- a/sql/sql_view.h
+++ b/sql/sql_view.h
@@ -16,7 +16,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 #include "sql_class.h"     /* Required by sql_lex.h */
diff --git a/sql/sql_yacc.cc b/sql/sql_yacc.cc
index 6c54c78cd99f3acb4eda81684868760b105d5949..825e61c34d0b60bbb728ea951c50940b1b7084ff 100644
--- a/sql/sql_yacc.cc
+++ b/sql/sql_yacc.cc
@@ -1668,7 +1668,9 @@ extern int MYSQLdebug;
     YEAR_MONTH_SYM = 896,
     YEAR_SYM = 897,
     ZEROFILL = 898,
-    IMPOSSIBLE_ACTION = 899
+    IMPOSSIBLE_ACTION = 899,
+    CONDITIONLESS_JOIN = 900,
+    ON_SYM = 901
   };
 #endif
 /* Tokens.  */
@@ -2314,6 +2316,8 @@ extern int MYSQLdebug;
 #define YEAR_SYM 897
 #define ZEROFILL 898
 #define IMPOSSIBLE_ACTION 899
+#define CONDITIONLESS_JOIN 900
+#define ON_SYM 901
 
 /* Value type.  */
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
@@ -2393,7 +2397,7 @@ union YYSTYPE
   enum enum_mysql_timestamp_type date_time_type;
   DDL_options_st object_ddl_options;
 
-#line 2397 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:355  */
+#line 2401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:355  */
 };
 # define YYSTYPE_IS_TRIVIAL 1
 # define YYSTYPE_IS_DECLARED 1
@@ -2410,7 +2414,7 @@ int MYSQLparse (THD *thd);
 
 bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
 
-#line 2414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:358  */
+#line 2418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:358  */
 
 #ifdef short
 # undef short
@@ -2652,10 +2656,10 @@ union yyalloc
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  636
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   66945
+#define YYLAST   67023
 
 /* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  667
+#define YYNTOKENS  669
 /* YYNNTS -- Number of nonterminals.  */
 #define YYNNTS  1031
 /* YYNRULES -- Number of rules.  */
@@ -2666,7 +2670,7 @@ union yyalloc
 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
    by yylex, with out-of-bounds checking.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   899
+#define YYMAXUTOK   901
 
 #define YYTRANSLATE(YYX)                                                \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -2678,16 +2682,16 @@ static const yytype_uint16 yytranslate[] =
        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,   660,     2,     2,     2,   654,   649,     2,
-     657,   658,   652,   651,   659,   650,   665,   653,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,   666,   663,
-     647,   645,   646,     2,   664,     2,     2,     2,     2,     2,
+       2,     2,     2,   662,     2,     2,     2,   656,   651,     2,
+     659,   660,   654,   653,   661,   652,   667,   655,     2,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,   668,   665,
+     649,   647,   648,     2,   666,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,   655,     2,     2,     2,     2,     2,
+       2,     2,     2,     2,   657,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,   661,   648,   662,   656,     2,     2,     2,
+       2,     2,     2,   663,   650,   664,   658,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -2764,7 +2768,8 @@ static const yytype_uint16 yytranslate[] =
      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
-     635,   636,   637,   638,   639,   640,   641,   642,   643,   644
+     635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
+     645,   646
 };
 
 #if YYDEBUG
@@ -2783,281 +2788,281 @@ static const yytype_uint16 yyrline[] =
     2256,  2260,  2265,  2269,  2273,  2277,  2281,  2285,  2290,  2294,
     2299,  2326,  2330,  2334,  2339,  2342,  2344,  2345,  2349,  2355,
     2357,  2358,  2362,  2368,  2370,  2371,  2375,  2382,  2386,  2401,
-    2405,  2411,  2417,  2423,  2433,  2437,  2441,  2455,  2454,  2493,
-    2490,  2503,  2501,  2513,  2511,  2522,  2521,  2534,  2533,  2542,
-    2547,  2553,  2557,  2561,  2561,  2568,  2567,  2579,  2580,  2584,
-    2589,  2594,  2599,  2604,  2609,  2614,  2622,  2621,  2653,  2652,
-    2659,  2666,  2667,  2673,  2679,  2689,  2695,  2701,  2703,  2710,
-    2711,  2715,  2725,  2726,  2734,  2734,  2778,  2792,  2803,  2821,
-    2822,  2826,  2827,  2832,  2834,  2836,  2838,  2840,  2842,  2844,
-    2850,  2851,  2855,  2859,  2867,  2866,  2879,  2881,  2884,  2886,
-    2890,  2894,  2901,  2903,  2907,  2908,  2913,  2912,  2945,  2947,
-    2951,  2952,  2956,  2960,  2961,  2962,  2963,  2967,  2968,  2972,
-    2973,  2978,  2981,  3000,  2999,  3071,  3084,  3083,  3142,  3164,
-    3164,  3183,  3184,  3189,  3191,  3196,  3211,  3219,  3223,  3242,
-    3243,  3247,  3251,  3257,  3263,  3269,  3278,  3292,  3307,  3313,
-    3314,  3320,  3323,  3327,  3335,  3352,  3354,  3372,  3378,  3380,
-    3382,  3384,  3386,  3388,  3390,  3392,  3394,  3396,  3398,  3400,
-    3405,  3420,  3436,  3437,  3442,  3448,  3457,  3463,  3472,  3480,
-    3489,  3498,  3500,  3509,  3514,  3520,  3529,  3537,  3539,  3541,
-    3543,  3545,  3547,  3549,  3551,  3553,  3555,  3557,  3559,  3561,
-    3566,  3578,  3593,  3594,  3598,  3599,  3600,  3601,  3602,  3603,
-    3604,  3605,  3606,  3607,  3608,  3612,  3613,  3614,  3615,  3620,
-    3619,  3630,  3630,  3683,  3682,  3707,  3757,  3798,  3817,  3816,
-    3836,  3853,  3855,  3856,  3860,  3874,  3891,  3893,  3909,  3891,
-    3928,  3930,  3931,  3936,  3935,  4005,  4007,  4005,  4016,  4021,
-    4022,  4026,  4027,  4032,  4036,  4031,  4057,  4061,  4056,  4080,
-    4090,  4094,  4095,  4100,  4099,  4121,  4120,  4130,  4129,  4140,
-    4140,  4180,  4195,  4194,  4226,  4225,  4245,  4259,  4268,  4267,
-    4275,  4274,  4283,  4282,  4293,  4292,  4301,  4300,  4310,  4309,
-    4320,  4322,  4327,  4329,  4331,  4348,  4353,  4359,  4366,  4367,
-    4375,  4381,  4390,  4396,  4402,  4403,  4407,  4407,  4412,  4413,
-    4414,  4418,  4419,  4420,  4424,  4428,  4429,  4430,  4434,  4435,
-    4436,  4437,  4438,  4439,  4440,  4441,  4445,  4449,  4450,  4451,
-    4455,  4456,  4457,  4458,  4459,  4463,  4467,  4468,  4469,  4473,
-    4474,  4475,  4476,  4477,  4478,  4479,  4483,  4487,  4488,  4489,
-    4493,  4494,  4495,  4500,  4508,  4516,  4524,  4537,  4550,  4555,
-    4560,  4568,  4576,  4584,  4592,  4600,  4608,  4616,  4626,  4636,
-    4646,  4648,  4652,  4657,  4667,  4668,  4707,  4706,  4709,  4715,
-    4715,  4716,  4730,  4731,  4735,  4737,  4736,  4740,  4739,  4745,
-    4782,  4783,  4788,  4787,  4806,  4821,  4820,  4837,  4841,  4849,
-    4848,  4851,  4853,  4855,  4857,  4862,  4863,  4869,  4870,  4887,
-    4888,  4892,  4893,  4897,  4913,  4923,  4934,  4943,  4944,  4957,
-    4959,  4958,  4963,  4961,  4972,  4973,  4977,  4992,  5008,  5009,
-    5022,  5031,  5053,  5054,  5059,  5058,  5083,  5095,  5107,  5106,
-    5121,  5120,  5137,  5159,  5163,  5192,  5204,  5205,  5210,  5221,
-    5209,  5246,  5247,  5251,  5264,  5285,  5298,  5324,  5325,  5330,
-    5329,  5367,  5376,  5377,  5381,  5382,  5386,  5388,  5394,  5400,
-    5402,  5404,  5406,  5408,  5410,  5420,  5435,  5419,  5449,  5450,
-    5454,  5455,  5459,  5460,  5464,  5465,  5470,  5473,  5481,  5484,
-    5491,  5495,  5501,  5503,  5507,  5508,  5512,  5513,  5514,  5518,
-    5523,  5528,  5533,  5538,  5543,  5548,  5553,  5568,  5574,  5589,
-    5594,  5609,  5615,  5633,  5638,  5643,  5648,  5653,  5658,  5664,
-    5663,  5689,  5690,  5691,  5696,  5701,  5706,  5708,  5710,  5712,
-    5718,  5723,  5728,  5736,  5744,  5750,  5759,  5767,  5784,  5805,
-    5816,  5817,  5818,  5819,  5820,  5821,  5822,  5826,  5827,  5828,
-    5832,  5833,  5834,  5835,  5840,  5847,  5848,  5852,  5853,  5857,
-    5858,  5863,  5862,  5870,  5869,  5877,  5876,  5884,  5883,  5893,
-    5890,  5901,  5899,  5908,  5907,  5942,  5945,  5947,  5951,  5955,
-    5956,  5960,  5965,  5978,  5964,  5997,  5998,  6004,  6005,  6010,
-    6013,  6017,  6024,  6025,  6029,  6030,  6034,  6040,  6046,  6050,
-    6063,  6080,  6081,  6082,  6097,  6102,  6106,  6111,  6116,  6120,
-    6125,  6130,  6136,  6141,  6147,  6151,  6156,  6161,  6179,  6181,
-    6184,  6201,  6204,  6209,  6214,  6225,  6230,  6235,  6240,  6242,
-    6244,  6246,  6248,  6250,  6252,  6254,  6256,  6258,  6260,  6262,
-    6271,  6272,  6273,  6279,  6280,  6281,  6282,  6283,  6287,  6291,
-    6292,  6296,  6297,  6301,  6302,  6303,  6304,  6305,  6309,  6310,
-    6311,  6312,  6313,  6317,  6322,  6324,  6330,  6332,  6340,  6341,
-    6343,  6348,  6357,  6358,  6362,  6363,  6367,  6368,  6369,  6373,
-    6374,  6375,  6376,  6379,  6380,  6384,  6385,  6389,  6390,  6394,
-    6395,  6399,  6400,  6401,  6402,  6409,  6410,  6416,  6422,  6428,
-    6434,  6435,  6442,  6450,  6458,  6464,  6473,  6488,  6494,  6499,
-    6500,  6504,  6509,  6513,  6514,  6518,  6519,  6523,  6529,  6533,
-    6534,  6538,  6546,  6547,  6551,  6552,  6556,  6557,  6561,  6562,
-    6563,  6571,  6572,  6573,  6574,  6575,  6579,  6580,  6585,  6584,
-    6597,  6598,  6602,  6605,  6606,  6607,  6608,  6612,  6620,  6627,
-    6628,  6632,  6642,  6643,  6647,  6648,  6651,  6653,  6657,  6669,
-    6670,  6674,  6681,  6694,  6695,  6697,  6699,  6705,  6710,  6716,
-    6722,  6729,  6739,  6740,  6741,  6742,  6743,  6747,  6748,  6752,
-    6753,  6757,  6758,  6762,  6763,  6764,  6768,  6769,  6773,  6777,
-    6789,  6790,  6794,  6795,  6799,  6800,  6804,  6805,  6809,  6810,
-    6814,  6815,  6819,  6820,  6824,  6825,  6826,  6829,  6831,  6836,
-    6838,  6840,  6848,  6856,  6862,  6870,  6871,  6875,  6879,  6880,
-    6890,  6891,  6892,  6896,  6900,  6907,  6913,  6925,  6926,  6930,
-    6931,  6935,  6937,  6946,  6960,  6945,  6980,  6979,  6993,  7002,
-    7001,  7017,  7016,  7032,  7031,  7047,  7041,  7058,  7057,  7092,
-    7097,  7102,  7107,  7113,  7112,  7121,  7122,  7123,  7124,  7128,
-    7129,  7141,  7142,  7146,  7147,  7150,  7152,  7160,  7168,  7170,
-    7172,  7173,  7181,  7182,  7188,  7197,  7195,  7208,  7221,  7220,
-    7233,  7231,  7244,  7251,  7261,  7262,  7289,  7296,  7300,  7306,
-    7304,  7323,  7325,  7330,  7338,  7337,  7353,  7357,  7356,  7368,
-    7369,  7373,  7389,  7390,  7394,  7402,  7406,  7411,  7416,  7423,
-    7430,  7440,  7450,  7461,  7471,  7477,  7483,  7492,  7502,  7518,
-    7532,  7542,  7546,  7551,  7552,  7555,  7557,  7558,  7559,  7560,
-    7563,  7568,  7576,  7581,  7589,  7590,  7594,  7595,  7599,  7599,
-    7602,  7604,  7608,  7609,  7613,  7614,  7622,  7623,  7624,  7628,
-    7629,  7634,  7642,  7643,  7644,  7645,  7650,  7649,  7659,  7658,
-    7665,  7672,  7682,  7699,  7702,  7709,  7713,  7720,  7724,  7728,
-    7735,  7735,  7741,  7742,  7746,  7747,  7748,  7752,  7753,  7762,
-    7769,  7770,  7775,  7774,  7786,  7787,  7788,  7792,  7793,  7793,
-    7798,  7797,  7818,  7819,  7823,  7824,  7828,  7829,  7830,  7834,
-    7835,  7840,  7839,  7860,  7861,  7865,  7870,  7871,  7878,  7880,
-    7884,  7886,  7885,  7897,  7899,  7898,  7911,  7912,  7917,  7926,
-    7927,  7928,  7932,  7939,  7949,  7957,  7966,  7967,  7967,  7971,
-    7970,  7993,  7994,  7998,  7999,  8003,  8004,  8005,  8006,  8007,
-    8008,  8012,  8013,  8018,  8017,  8038,  8039,  8040,  8045,  8044,
-    8050,  8057,  8063,  8072,  8073,  8077,  8091,  8090,  8103,  8104,
-    8108,  8109,  8113,  8123,  8133,  8134,  8139,  8138,  8149,  8150,
-    8154,  8155,  8159,  8169,  8180,  8179,  8187,  8187,  8196,  8197,
-    8202,  8203,  8212,  8221,  8222,  8226,  8226,  8238,  8243,  8243,
-    8252,  8257,  8256,  8271,  8275,  8276,  8297,  8297,  8311,  8322,
-    8325,  8327,  8331,  8337,  8344,  8346,  8354,  8355,  8359,  8360,
-    8377,  8396,  8398,  8405,  8416,  8417,  8418,  8432,  8437,  8459,
-    8465,  8471,  8477,  8478,  8479,  8480,  8481,  8485,  8486,  8487,
-    8491,  8492,  8493,  8497,  8498,  8503,  8554,  8561,  8604,  8610,
-    8616,  8622,  8628,  8634,  8640,  8646,  8650,  8656,  8662,  8668,
-    8674,  8680,  8684,  8690,  8699,  8705,  8713,  8719,  8729,  8735,
-    8744,  8754,  8761,  8771,  8777,  8786,  8790,  8796,  8802,  8808,
-    8814,  8820,  8826,  8832,  8838,  8844,  8850,  8856,  8862,  8868,
-    8874,  8878,  8879,  8883,  8884,  8888,  8889,  8893,  8894,  8898,
-    8899,  8900,  8901,  8902,  8903,  8907,  8908,  8913,  8919,  8923,
-    8930,  8937,  8944,  8951,  8958,  8964,  8963,  8971,  8978,  8985,
-    8993,  9004,  9026,  9033,  9041,  9042,  9043,  9044,  9045,  9046,
-    9057,  9058,  9059,  9060,  9061,  9067,  9071,  9077,  9083,  9089,
-    9095,  9097,  9104,  9111,  9117,  9141,  9151,  9158,  9166,  9172,
-    9179,  9185,  9195,  9202,  9218,  9224,  9230,  9239,  9248,  9254,
-    9260,  9266,  9272,  9286,  9297,  9303,  9309,  9315,  9321,  9327,
-    9334,  9341,  9347,  9353,  9359,  9365,  9371,  9377,  9383,  9389,
-    9395,  9403,  9424,  9431,  9437,  9444,  9451,  9458,  9465,  9471,
-    9477,  9484,  9490,  9497,  9503,  9509,  9515,  9521,  9527,  9545,
-    9551,  9557,  9564,  9571,  9579,  9586,  9593,  9600,  9607,  9624,
-    9630,  9636,  9642,  9648,  9655,  9661,  9667,  9673,  9679,  9685,
-    9691,  9698,  9706,  9712,  9718,  9724,  9730,  9738,  9744,  9758,
-    9764,  9770,  9778,  9790,  9797,  9812,  9818,  9825,  9832,  9839,
-    9846,  9853,  9857,  9877,  9876,  9948,  9986,  9988,  9993,  9994,
-    9998,  9999, 10003, 10004, 10008, 10015, 10023, 10050, 10056, 10062,
-   10068, 10074, 10080, 10089, 10096, 10098, 10095, 10105, 10116, 10122,
-   10128, 10134, 10140, 10146, 10152, 10158, 10164, 10171, 10170, 10190,
-   10189, 10201, 10211, 10219, 10235, 10236, 10241, 10246, 10249, 10252,
-   10251, 10267, 10269, 10275, 10274, 10291, 10294, 10293, 10297, 10299,
-   10301, 10303, 10305, 10307, 10309, 10311, 10317, 10323, 10326, 10325,
-   10331, 10332, 10336, 10343, 10351, 10352, 10356, 10363, 10371, 10372,
-   10376, 10377, 10381, 10389, 10400, 10401, 10413, 10424, 10425, 10431,
-   10432, 10452, 10456, 10454, 10472, 10470, 10481, 10491, 10489, 10507,
-   10506, 10516, 10527, 10525, 10544, 10543, 10554, 10566, 10567, 10568,
-   10572, 10573, 10581, 10582, 10586, 10601, 10601, 10616, 10652, 10737,
-   10748, 10745, 10770, 10783, 10783, 10799, 10798, 10819, 10836, 10819,
-   10843, 10847, 10870, 10871, 10876, 10879, 10880, 10881, 10885, 10886,
-   10891, 10890, 10896, 10895, 10903, 10904, 10907, 10909, 10909, 10913,
-   10913, 10918, 10919, 10923, 10925, 10930, 10931, 10935, 10946, 10959,
-   10960, 10961, 10962, 10963, 10964, 10965, 10966, 10967, 10968, 10969,
-   10970, 10974, 10975, 10976, 10977, 10978, 10979, 10980, 10981, 10982,
-   10986, 10987, 10988, 10989, 10992, 10994, 10995, 10999, 11000, 11008,
-   11010, 11014, 11016, 11015, 11029, 11032, 11031, 11046, 11052, 11066,
-   11068, 11072, 11074, 11079, 11080, 11097, 11119, 11123, 11124, 11128,
-   11140, 11142, 11147, 11146, 11196, 11198, 11203, 11204, 11205, 11209,
-   11210, 11214, 11227, 11234, 11239, 11246, 11253, 11260, 11270, 11297,
-   11301, 11307, 11313, 11322, 11330, 11334, 11341, 11342, 11346, 11347,
-   11348, 11352, 11353, 11354, 11355, 11356, 11357, 11361, 11362, 11363,
-   11364, 11365, 11369, 11370, 11371, 11372, 11373, 11377, 11378, 11379,
-   11380, 11381, 11385, 11390, 11391, 11395, 11396, 11400, 11402, 11401,
-   11439, 11440, 11444, 11445, 11449, 11459, 11459, 11470, 11471, 11474,
-   11494, 11498, 11512, 11513, 11518, 11517, 11527, 11537, 11526, 11539,
-   11552, 11564, 11563, 11581, 11580, 11589, 11589, 11606, 11612, 11627,
-   11643, 11651, 11655, 11660, 11659, 11668, 11673, 11679, 11684, 11689,
-   11697, 11698, 11702, 11713, 11726, 11727, 11731, 11743, 11747, 11756,
-   11759, 11766, 11767, 11775, 11783, 11774, 11793, 11800, 11792, 11810,
-   11818, 11819, 11827, 11831, 11832, 11843, 11844, 11848, 11857, 11858,
-   11859, 11861, 11860, 11871, 11873, 11877, 11878, 11880, 11879, 11883,
-   11882, 11888, 11889, 11893, 11894, 11898, 11908, 11909, 11913, 11914,
-   11919, 11918, 11932, 11933, 11937, 11942, 11950, 11951, 11959, 11961,
-   11961, 11969, 11977, 11968, 11999, 12000, 12004, 12012, 12013, 12017,
-   12027, 12028, 12035, 12034, 12050, 12061, 12049, 12064, 12063, 12075,
-   12074, 12087, 12089, 12093, 12094, 12098, 12111, 12127, 12128, 12132,
-   12133, 12137, 12138, 12139, 12144, 12143, 12164, 12166, 12169, 12171,
-   12174, 12175, 12178, 12182, 12186, 12190, 12194, 12198, 12202, 12206,
-   12210, 12218, 12221, 12231, 12230, 12246, 12253, 12261, 12269, 12277,
-   12285, 12293, 12300, 12307, 12313, 12315, 12317, 12326, 12330, 12335,
-   12334, 12341, 12340, 12345, 12354, 12361, 12366, 12371, 12376, 12378,
-   12380, 12382, 12384, 12386, 12393, 12401, 12403, 12411, 12418, 12425,
-   12432, 12438, 12443, 12451, 12459, 12463, 12468, 12475, 12480, 12487,
-   12494, 12500, 12507, 12514, 12519, 12524, 12529, 12536, 12558, 12560,
-   12562, 12567, 12568, 12571, 12573, 12577, 12578, 12582, 12583, 12587,
-   12588, 12592, 12593, 12597, 12598, 12602, 12603, 12611, 12623, 12622,
-   12638, 12637, 12647, 12648, 12649, 12650, 12651, 12655, 12656, 12660,
-   12667, 12668, 12669, 12673, 12674, 12686, 12687, 12688, 12703, 12702,
-   12715, 12714, 12726, 12730, 12731, 12744, 12747, 12746, 12758, 12759,
-   12764, 12766, 12768, 12770, 12772, 12774, 12782, 12784, 12786, 12788,
-   12793, 12795, 12803, 12805, 12807, 12809, 12825, 12826, 12830, 12831,
-   12834, 12836, 12837, 12841, 12857, 12858, 12862, 12861, 12871, 12872,
-   12876, 12876, 12880, 12879, 12885, 12889, 12890, 12894, 12895, 12903,
-   12902, 12913, 12917, 12921, 12934, 12933, 12948, 12949, 12950, 12953,
-   12954, 12955, 12956, 12964, 12968, 12977, 12983, 12995, 13007, 13017,
-   13028, 12994, 13036, 13037, 13041, 13042, 13046, 13047, 13055, 13059,
-   13060, 13061, 13064, 13066, 13070, 13071, 13075, 13080, 13087, 13092,
-   13099, 13101, 13105, 13106, 13110, 13115, 13123, 13124, 13127, 13129,
-   13137, 13138, 13142, 13143, 13144, 13148, 13150, 13155, 13156, 13165,
-   13166, 13170, 13171, 13175, 13188, 13212, 13224, 13231, 13250, 13258,
-   13263, 13276, 13285, 13301, 13318, 13319, 13320, 13328, 13329, 13330,
-   13331, 13345, 13351, 13357, 13363, 13369, 13375, 13393, 13403, 13413,
-   13419, 13428, 13440, 13446, 13452, 13468, 13469, 13473, 13482, 13497,
-   13501, 13544, 13548, 13565, 13569, 13641, 13665, 13695, 13696, 13706,
-   13713, 13717, 13723, 13729, 13739, 13745, 13754, 13764, 13765, 13793,
-   13807, 13821, 13836, 13837, 13847, 13848, 13858, 13859, 13860, 13864,
-   13877, 13907, 13917, 13917, 13919, 13929, 13930, 13931, 13932, 13933,
-   13934, 13935, 13936, 13937, 13938, 13939, 13940, 13941, 13942, 13943,
-   13944, 13945, 13946, 13947, 13948, 13949, 13950, 13951, 13952, 13953,
-   13954, 13955, 13956, 13957, 13958, 13959, 13960, 13961, 13962, 13963,
-   13964, 13965, 13966, 13967, 13968, 13969, 13970, 13971, 13972, 13973,
-   13974, 13975, 13976, 13977, 13978, 13979, 13980, 13981, 13982, 13983,
-   13984, 13985, 13986, 13987, 13988, 13989, 13999, 14000, 14001, 14002,
-   14003, 14004, 14005, 14006, 14007, 14008, 14009, 14010, 14011, 14012,
-   14013, 14014, 14015, 14016, 14017, 14018, 14019, 14020, 14021, 14022,
-   14023, 14024, 14025, 14026, 14027, 14028, 14029, 14030, 14031, 14032,
-   14033, 14034, 14035, 14036, 14037, 14038, 14039, 14040, 14041, 14042,
-   14043, 14044, 14045, 14046, 14047, 14048, 14053, 14054, 14055, 14056,
-   14057, 14058, 14059, 14060, 14061, 14062, 14063, 14064, 14065, 14066,
-   14067, 14068, 14069, 14070, 14071, 14072, 14073, 14074, 14075, 14076,
-   14077, 14078, 14079, 14080, 14081, 14082, 14083, 14084, 14085, 14086,
-   14087, 14088, 14089, 14090, 14091, 14092, 14093, 14094, 14095, 14096,
-   14097, 14098, 14099, 14100, 14101, 14102, 14103, 14104, 14105, 14106,
-   14107, 14108, 14109, 14110, 14111, 14112, 14113, 14114, 14115, 14116,
-   14117, 14118, 14119, 14120, 14121, 14122, 14123, 14124, 14125, 14126,
-   14127, 14128, 14129, 14130, 14131, 14132, 14133, 14134, 14135, 14136,
-   14137, 14138, 14139, 14140, 14141, 14142, 14143, 14144, 14145, 14146,
-   14147, 14148, 14149, 14150, 14151, 14152, 14153, 14154, 14155, 14156,
-   14157, 14158, 14159, 14160, 14161, 14162, 14163, 14164, 14165, 14166,
-   14167, 14168, 14169, 14170, 14171, 14172, 14173, 14174, 14175, 14176,
-   14177, 14178, 14179, 14180, 14181, 14182, 14183, 14184, 14185, 14186,
-   14187, 14188, 14189, 14190, 14191, 14192, 14193, 14194, 14195, 14196,
-   14197, 14198, 14199, 14200, 14201, 14202, 14203, 14204, 14205, 14206,
-   14207, 14208, 14209, 14210, 14211, 14212, 14213, 14214, 14215, 14216,
-   14217, 14218, 14219, 14220, 14221, 14222, 14223, 14224, 14225, 14226,
-   14227, 14228, 14229, 14230, 14231, 14232, 14233, 14234, 14235, 14236,
-   14237, 14238, 14239, 14240, 14241, 14242, 14243, 14244, 14245, 14246,
-   14247, 14248, 14249, 14250, 14251, 14252, 14253, 14254, 14255, 14256,
-   14257, 14258, 14259, 14260, 14261, 14262, 14263, 14264, 14265, 14266,
-   14267, 14268, 14269, 14270, 14271, 14272, 14273, 14274, 14275, 14276,
-   14277, 14278, 14279, 14280, 14281, 14282, 14283, 14284, 14285, 14286,
-   14287, 14288, 14289, 14290, 14291, 14292, 14293, 14294, 14295, 14296,
-   14297, 14298, 14299, 14300, 14301, 14302, 14303, 14304, 14305, 14306,
-   14307, 14308, 14309, 14310, 14311, 14323, 14322, 14335, 14343, 14334,
-   14360, 14361, 14366, 14365, 14372, 14371, 14381, 14380, 14391, 14390,
-   14396, 14404, 14406, 14411, 14411, 14420, 14419, 14433, 14432, 14437,
-   14441, 14442, 14443, 14447, 14448, 14449, 14450, 14454, 14455, 14456,
-   14457, 14462, 14486, 14512, 14523, 14540, 14554, 14569, 14588, 14605,
-   14617, 14625, 14641, 14667, 14704, 14718, 14719, 14720, 14721, 14725,
-   14743, 14761, 14762, 14766, 14767, 14768, 14769, 14773, 14787, 14791,
-   14792, 14793, 14803, 14804, 14805, 14811, 14817, 14829, 14828, 14841,
-   14842, 14846, 14847, 14851, 14869, 14870, 14871, 14876, 14877, 14882,
-   14881, 14898, 14907, 14917, 14916, 14947, 14948, 14952, 14953, 14957,
-   14958, 14959, 14960, 14962, 14961, 14974, 14975, 14976, 14977, 14978,
-   14984, 14989, 14995, 15006, 15017, 15021, 15028, 15037, 15039, 15044,
-   15049, 15056, 15068, 15080, 15087, 15099, 15100, 15103, 15104, 15107,
-   15112, 15120, 15130, 15149, 15152, 15154, 15158, 15159, 15166, 15168,
-   15172, 15173, 15178, 15177, 15181, 15180, 15184, 15183, 15187, 15186,
-   15189, 15190, 15191, 15192, 15193, 15194, 15195, 15196, 15197, 15198,
-   15199, 15200, 15201, 15202, 15203, 15204, 15205, 15206, 15207, 15208,
-   15209, 15210, 15211, 15212, 15213, 15214, 15218, 15219, 15223, 15224,
-   15228, 15235, 15242, 15252, 15263, 15272, 15281, 15293, 15298, 15306,
-   15311, 15319, 15324, 15331, 15331, 15332, 15332, 15335, 15342, 15347,
-   15353, 15359, 15365, 15369, 15373, 15374, 15378, 15406, 15408, 15412,
-   15416, 15420, 15427, 15428, 15432, 15433, 15437, 15438, 15442, 15443,
-   15449, 15455, 15461, 15467, 15477, 15476, 15486, 15495, 15496, 15500,
-   15501, 15506, 15507, 15508, 15513, 15514, 15515, 15519, 15520, 15524,
-   15536, 15545, 15555, 15564, 15578, 15579, 15584, 15583, 15599, 15600,
-   15604, 15605, 15609, 15609, 15630, 15631, 15635, 15636, 15637, 15641,
-   15646, 15654, 15657, 15655, 15670, 15677, 15698, 15724, 15726, 15730,
-   15731, 15735, 15736, 15744, 15745, 15746, 15747, 15753, 15759, 15769,
-   15771, 15773, 15778, 15779, 15780, 15781, 15782, 15786, 15787, 15788,
-   15789, 15790, 15791, 15801, 15802, 15807, 15820, 15836, 15838, 15840,
-   15846, 15847, 15849, 15855, 15854, 15873, 15874, 15878, 15884, 15893,
-   15893, 15917, 15918, 15923, 15924, 15926, 15928, 15942, 15951, 15957,
-   15962, 15939, 16012, 16013, 16017, 16037, 16058, 16062, 16068, 16074,
-   16033, 16133, 16145, 16154, 16158, 16132, 16175, 16179, 16183, 16187,
-   16191, 16195, 16202, 16209, 16216, 16226, 16227, 16231, 16232, 16233,
-   16237, 16238, 16243, 16245, 16244, 16250, 16251, 16255, 16262, 16272,
-   16278, 16289
+    2405,  2411,  2417,  2423,  2433,  2437,  2441,  2455,  2454,  2485,
+    2482,  2495,  2493,  2505,  2503,  2514,  2513,  2526,  2525,  2534,
+    2539,  2545,  2549,  2553,  2553,  2560,  2559,  2571,  2572,  2576,
+    2581,  2586,  2591,  2596,  2601,  2606,  2614,  2613,  2645,  2644,
+    2651,  2658,  2659,  2665,  2671,  2681,  2687,  2693,  2695,  2702,
+    2703,  2707,  2717,  2718,  2726,  2726,  2770,  2784,  2795,  2813,
+    2814,  2818,  2819,  2824,  2826,  2828,  2830,  2832,  2834,  2836,
+    2842,  2843,  2847,  2851,  2859,  2858,  2871,  2873,  2876,  2878,
+    2882,  2886,  2893,  2895,  2899,  2900,  2905,  2904,  2937,  2939,
+    2943,  2944,  2948,  2952,  2953,  2954,  2955,  2959,  2960,  2964,
+    2965,  2970,  2973,  2992,  2991,  3063,  3076,  3075,  3134,  3156,
+    3156,  3175,  3176,  3181,  3183,  3188,  3203,  3211,  3215,  3234,
+    3235,  3239,  3243,  3249,  3255,  3261,  3270,  3284,  3299,  3305,
+    3306,  3312,  3315,  3319,  3327,  3344,  3346,  3364,  3370,  3372,
+    3374,  3376,  3378,  3380,  3382,  3384,  3386,  3388,  3390,  3392,
+    3397,  3412,  3428,  3429,  3434,  3440,  3449,  3455,  3464,  3472,
+    3481,  3490,  3492,  3501,  3506,  3512,  3521,  3529,  3531,  3533,
+    3535,  3537,  3539,  3541,  3543,  3545,  3547,  3549,  3551,  3553,
+    3558,  3570,  3585,  3586,  3590,  3591,  3592,  3593,  3594,  3595,
+    3596,  3597,  3598,  3599,  3600,  3604,  3605,  3606,  3607,  3612,
+    3611,  3622,  3622,  3675,  3674,  3699,  3749,  3790,  3809,  3808,
+    3828,  3845,  3847,  3848,  3852,  3866,  3883,  3885,  3901,  3883,
+    3920,  3922,  3923,  3928,  3927,  3997,  3999,  3997,  4008,  4013,
+    4014,  4018,  4019,  4024,  4028,  4023,  4049,  4053,  4048,  4072,
+    4082,  4086,  4087,  4092,  4091,  4113,  4112,  4122,  4121,  4132,
+    4132,  4172,  4187,  4186,  4218,  4217,  4237,  4251,  4260,  4259,
+    4267,  4266,  4275,  4274,  4285,  4284,  4293,  4292,  4302,  4301,
+    4312,  4314,  4319,  4321,  4323,  4340,  4345,  4351,  4358,  4359,
+    4367,  4373,  4382,  4388,  4394,  4395,  4399,  4399,  4404,  4405,
+    4406,  4410,  4411,  4412,  4416,  4420,  4421,  4422,  4426,  4427,
+    4428,  4429,  4430,  4431,  4432,  4433,  4437,  4441,  4442,  4443,
+    4447,  4448,  4449,  4450,  4451,  4455,  4459,  4460,  4461,  4465,
+    4466,  4467,  4468,  4469,  4470,  4471,  4475,  4479,  4480,  4481,
+    4485,  4486,  4487,  4492,  4500,  4508,  4516,  4529,  4542,  4547,
+    4552,  4560,  4568,  4576,  4584,  4592,  4600,  4608,  4618,  4628,
+    4638,  4640,  4644,  4649,  4659,  4660,  4699,  4698,  4701,  4707,
+    4707,  4708,  4722,  4723,  4727,  4729,  4728,  4732,  4731,  4737,
+    4774,  4775,  4780,  4779,  4798,  4813,  4812,  4829,  4833,  4841,
+    4840,  4843,  4845,  4847,  4849,  4854,  4855,  4861,  4862,  4879,
+    4880,  4884,  4885,  4889,  4905,  4915,  4926,  4935,  4936,  4949,
+    4951,  4950,  4955,  4953,  4964,  4965,  4969,  4984,  5000,  5001,
+    5014,  5023,  5045,  5046,  5051,  5050,  5075,  5087,  5099,  5098,
+    5113,  5112,  5129,  5151,  5155,  5184,  5196,  5197,  5202,  5213,
+    5201,  5238,  5239,  5243,  5256,  5277,  5290,  5316,  5317,  5322,
+    5321,  5359,  5368,  5369,  5373,  5374,  5378,  5380,  5386,  5392,
+    5394,  5396,  5398,  5400,  5402,  5412,  5427,  5411,  5441,  5442,
+    5446,  5447,  5451,  5452,  5456,  5457,  5462,  5465,  5473,  5476,
+    5483,  5487,  5493,  5495,  5499,  5500,  5504,  5505,  5506,  5510,
+    5525,  5530,  5535,  5540,  5545,  5550,  5555,  5570,  5576,  5591,
+    5596,  5611,  5617,  5635,  5640,  5645,  5650,  5655,  5660,  5666,
+    5665,  5691,  5692,  5693,  5698,  5703,  5708,  5710,  5712,  5714,
+    5720,  5725,  5730,  5738,  5746,  5752,  5761,  5769,  5786,  5796,
+    5807,  5808,  5809,  5810,  5811,  5812,  5813,  5817,  5818,  5819,
+    5823,  5824,  5825,  5826,  5831,  5838,  5839,  5843,  5844,  5848,
+    5849,  5854,  5853,  5861,  5860,  5868,  5867,  5875,  5874,  5884,
+    5881,  5892,  5890,  5899,  5898,  5933,  5936,  5938,  5942,  5946,
+    5947,  5951,  5956,  5969,  5955,  5988,  5989,  5995,  5996,  6001,
+    6004,  6008,  6015,  6016,  6020,  6021,  6025,  6031,  6037,  6041,
+    6054,  6071,  6072,  6073,  6088,  6093,  6097,  6102,  6107,  6111,
+    6116,  6121,  6127,  6132,  6138,  6142,  6147,  6152,  6170,  6172,
+    6175,  6192,  6195,  6200,  6205,  6216,  6221,  6226,  6231,  6233,
+    6235,  6237,  6239,  6241,  6243,  6245,  6247,  6249,  6251,  6253,
+    6262,  6263,  6264,  6270,  6271,  6272,  6273,  6274,  6278,  6282,
+    6283,  6287,  6288,  6292,  6293,  6294,  6295,  6296,  6300,  6301,
+    6302,  6303,  6304,  6308,  6313,  6315,  6321,  6323,  6331,  6332,
+    6334,  6339,  6348,  6349,  6353,  6354,  6358,  6359,  6360,  6364,
+    6365,  6366,  6367,  6370,  6371,  6375,  6376,  6380,  6381,  6385,
+    6386,  6390,  6391,  6392,  6393,  6400,  6401,  6407,  6413,  6419,
+    6425,  6426,  6433,  6441,  6449,  6455,  6464,  6479,  6485,  6490,
+    6491,  6495,  6500,  6504,  6505,  6509,  6510,  6514,  6520,  6524,
+    6525,  6529,  6537,  6538,  6542,  6543,  6547,  6548,  6552,  6553,
+    6554,  6562,  6563,  6564,  6565,  6566,  6570,  6571,  6576,  6575,
+    6588,  6589,  6593,  6596,  6597,  6598,  6599,  6603,  6611,  6618,
+    6619,  6623,  6633,  6634,  6638,  6639,  6642,  6644,  6648,  6660,
+    6661,  6665,  6672,  6685,  6686,  6688,  6690,  6696,  6701,  6707,
+    6713,  6720,  6730,  6731,  6732,  6733,  6734,  6738,  6739,  6743,
+    6744,  6748,  6749,  6753,  6754,  6755,  6759,  6760,  6764,  6768,
+    6780,  6781,  6785,  6786,  6790,  6791,  6795,  6796,  6800,  6801,
+    6805,  6806,  6810,  6811,  6815,  6816,  6817,  6820,  6822,  6827,
+    6829,  6831,  6839,  6847,  6853,  6861,  6862,  6866,  6870,  6871,
+    6881,  6882,  6883,  6887,  6891,  6898,  6904,  6916,  6917,  6921,
+    6922,  6926,  6928,  6937,  6951,  6936,  6971,  6970,  6984,  6993,
+    6992,  7008,  7007,  7023,  7022,  7038,  7032,  7049,  7048,  7083,
+    7088,  7093,  7098,  7104,  7103,  7112,  7113,  7114,  7115,  7119,
+    7120,  7132,  7133,  7137,  7138,  7141,  7143,  7151,  7159,  7161,
+    7163,  7164,  7172,  7173,  7179,  7188,  7186,  7199,  7212,  7211,
+    7224,  7222,  7235,  7242,  7252,  7253,  7280,  7287,  7291,  7297,
+    7295,  7314,  7316,  7321,  7329,  7328,  7344,  7348,  7347,  7359,
+    7360,  7364,  7380,  7381,  7385,  7393,  7397,  7402,  7407,  7414,
+    7421,  7431,  7441,  7452,  7462,  7468,  7474,  7483,  7493,  7509,
+    7523,  7528,  7532,  7537,  7538,  7541,  7543,  7544,  7545,  7546,
+    7549,  7554,  7562,  7567,  7575,  7576,  7580,  7581,  7585,  7585,
+    7588,  7590,  7594,  7595,  7599,  7600,  7608,  7609,  7610,  7614,
+    7615,  7620,  7628,  7629,  7630,  7631,  7636,  7635,  7645,  7644,
+    7651,  7658,  7668,  7685,  7688,  7695,  7699,  7706,  7710,  7714,
+    7721,  7721,  7727,  7728,  7732,  7733,  7734,  7738,  7739,  7748,
+    7755,  7756,  7761,  7760,  7772,  7773,  7774,  7778,  7779,  7779,
+    7784,  7783,  7804,  7805,  7809,  7810,  7814,  7815,  7816,  7820,
+    7821,  7826,  7825,  7846,  7847,  7851,  7856,  7857,  7864,  7866,
+    7870,  7872,  7871,  7883,  7885,  7884,  7897,  7898,  7903,  7912,
+    7913,  7914,  7918,  7925,  7935,  7943,  7952,  7953,  7953,  7957,
+    7956,  7979,  7980,  7984,  7985,  7989,  7990,  7991,  7992,  7993,
+    7994,  7998,  7999,  8004,  8003,  8024,  8025,  8026,  8031,  8030,
+    8036,  8043,  8049,  8058,  8059,  8063,  8077,  8076,  8089,  8090,
+    8094,  8095,  8099,  8109,  8119,  8120,  8125,  8124,  8135,  8136,
+    8140,  8141,  8145,  8155,  8166,  8165,  8173,  8173,  8182,  8183,
+    8188,  8189,  8198,  8207,  8208,  8212,  8212,  8224,  8229,  8229,
+    8238,  8243,  8242,  8257,  8261,  8262,  8283,  8283,  8297,  8308,
+    8311,  8313,  8317,  8323,  8330,  8332,  8340,  8341,  8345,  8346,
+    8363,  8382,  8384,  8391,  8402,  8403,  8404,  8418,  8423,  8445,
+    8451,  8457,  8463,  8464,  8465,  8466,  8467,  8471,  8472,  8473,
+    8477,  8478,  8479,  8483,  8484,  8489,  8540,  8547,  8590,  8596,
+    8602,  8608,  8614,  8620,  8626,  8632,  8636,  8642,  8648,  8654,
+    8660,  8666,  8670,  8676,  8685,  8691,  8699,  8705,  8715,  8721,
+    8730,  8740,  8747,  8757,  8763,  8772,  8776,  8782,  8788,  8794,
+    8800,  8806,  8812,  8818,  8824,  8830,  8836,  8842,  8848,  8854,
+    8860,  8864,  8865,  8869,  8870,  8874,  8875,  8879,  8880,  8884,
+    8885,  8886,  8887,  8888,  8889,  8893,  8894,  8899,  8905,  8909,
+    8916,  8923,  8930,  8937,  8944,  8950,  8949,  8957,  8964,  8971,
+    8979,  8990,  9012,  9019,  9027,  9028,  9029,  9030,  9031,  9032,
+    9043,  9044,  9045,  9046,  9047,  9053,  9057,  9063,  9069,  9075,
+    9081,  9083,  9090,  9097,  9103,  9127,  9137,  9144,  9152,  9158,
+    9165,  9171,  9181,  9188,  9204,  9210,  9216,  9225,  9234,  9240,
+    9246,  9252,  9258,  9272,  9283,  9289,  9295,  9301,  9307,  9313,
+    9320,  9327,  9333,  9339,  9345,  9351,  9357,  9363,  9369,  9375,
+    9381,  9389,  9410,  9417,  9423,  9430,  9437,  9444,  9451,  9457,
+    9463,  9470,  9476,  9483,  9489,  9495,  9501,  9507,  9513,  9531,
+    9537,  9543,  9550,  9557,  9565,  9572,  9579,  9586,  9593,  9610,
+    9616,  9622,  9628,  9634,  9641,  9647,  9653,  9659,  9665,  9671,
+    9677,  9684,  9692,  9698,  9704,  9710,  9716,  9724,  9730,  9744,
+    9750,  9756,  9764,  9776,  9783,  9798,  9804,  9811,  9818,  9825,
+    9832,  9839,  9843,  9863,  9862,  9934,  9972,  9974,  9979,  9980,
+    9984,  9985,  9989,  9990,  9994, 10001, 10009, 10036, 10042, 10048,
+   10054, 10060, 10066, 10075, 10082, 10084, 10081, 10091, 10102, 10108,
+   10114, 10120, 10126, 10132, 10138, 10144, 10150, 10157, 10156, 10176,
+   10175, 10187, 10197, 10205, 10221, 10222, 10227, 10232, 10235, 10238,
+   10237, 10253, 10255, 10261, 10260, 10277, 10280, 10279, 10283, 10285,
+   10287, 10289, 10291, 10293, 10295, 10297, 10303, 10309, 10312, 10311,
+   10317, 10318, 10322, 10329, 10337, 10338, 10342, 10349, 10357, 10358,
+   10362, 10363, 10367, 10375, 10386, 10387, 10399, 10410, 10411, 10417,
+   10418, 10436, 10445, 10443, 10461, 10459, 10470, 10480, 10478, 10496,
+   10495, 10505, 10516, 10514, 10533, 10532, 10543, 10555, 10556, 10557,
+   10561, 10562, 10570, 10571, 10575, 10590, 10590, 10605, 10641, 10726,
+   10737, 10734, 10759, 10772, 10772, 10788, 10787, 10808, 10825, 10808,
+   10832, 10836, 10859, 10860, 10865, 10868, 10869, 10870, 10874, 10875,
+   10880, 10879, 10885, 10884, 10892, 10893, 10896, 10898, 10898, 10902,
+   10902, 10907, 10908, 10912, 10914, 10919, 10920, 10924, 10935, 10948,
+   10949, 10950, 10951, 10952, 10953, 10954, 10955, 10956, 10957, 10958,
+   10959, 10963, 10964, 10965, 10966, 10967, 10968, 10969, 10970, 10971,
+   10975, 10976, 10977, 10978, 10981, 10983, 10984, 10988, 10989, 10997,
+   10999, 11003, 11005, 11004, 11018, 11021, 11020, 11035, 11041, 11055,
+   11057, 11061, 11063, 11068, 11069, 11086, 11108, 11112, 11113, 11117,
+   11129, 11131, 11136, 11135, 11185, 11187, 11192, 11193, 11194, 11198,
+   11199, 11203, 11216, 11223, 11228, 11235, 11242, 11249, 11259, 11286,
+   11290, 11296, 11302, 11311, 11319, 11323, 11330, 11331, 11335, 11336,
+   11337, 11341, 11342, 11343, 11344, 11345, 11346, 11350, 11351, 11352,
+   11353, 11354, 11358, 11359, 11360, 11361, 11362, 11366, 11367, 11368,
+   11369, 11370, 11374, 11379, 11380, 11384, 11385, 11389, 11391, 11390,
+   11428, 11429, 11433, 11434, 11438, 11448, 11448, 11459, 11460, 11463,
+   11483, 11487, 11501, 11502, 11507, 11506, 11516, 11526, 11515, 11528,
+   11541, 11553, 11552, 11570, 11569, 11578, 11578, 11595, 11601, 11616,
+   11632, 11640, 11644, 11649, 11648, 11657, 11662, 11668, 11673, 11678,
+   11686, 11687, 11691, 11702, 11715, 11716, 11720, 11732, 11736, 11745,
+   11748, 11755, 11756, 11764, 11772, 11763, 11782, 11789, 11781, 11799,
+   11807, 11808, 11816, 11820, 11821, 11832, 11833, 11837, 11846, 11847,
+   11848, 11850, 11849, 11860, 11862, 11866, 11867, 11869, 11868, 11872,
+   11871, 11877, 11878, 11882, 11883, 11887, 11897, 11898, 11902, 11903,
+   11908, 11907, 11921, 11922, 11926, 11931, 11939, 11940, 11948, 11950,
+   11950, 11958, 11966, 11957, 11988, 11989, 11993, 12001, 12002, 12006,
+   12016, 12017, 12024, 12023, 12039, 12050, 12038, 12053, 12052, 12064,
+   12063, 12076, 12078, 12082, 12083, 12087, 12100, 12116, 12117, 12121,
+   12122, 12126, 12127, 12128, 12133, 12132, 12153, 12155, 12158, 12160,
+   12163, 12164, 12167, 12171, 12175, 12179, 12183, 12187, 12191, 12195,
+   12199, 12207, 12210, 12220, 12219, 12235, 12242, 12250, 12258, 12266,
+   12274, 12282, 12289, 12296, 12302, 12304, 12306, 12315, 12319, 12324,
+   12323, 12330, 12329, 12334, 12343, 12350, 12355, 12360, 12365, 12367,
+   12369, 12371, 12373, 12375, 12382, 12390, 12392, 12400, 12407, 12414,
+   12421, 12427, 12432, 12440, 12448, 12452, 12457, 12464, 12469, 12476,
+   12483, 12489, 12496, 12503, 12508, 12513, 12518, 12525, 12547, 12549,
+   12551, 12556, 12557, 12560, 12562, 12566, 12567, 12571, 12572, 12576,
+   12577, 12581, 12582, 12586, 12587, 12591, 12592, 12600, 12612, 12611,
+   12627, 12626, 12636, 12637, 12638, 12639, 12640, 12644, 12645, 12649,
+   12656, 12657, 12658, 12662, 12663, 12675, 12676, 12677, 12692, 12691,
+   12704, 12703, 12715, 12719, 12720, 12733, 12736, 12735, 12747, 12748,
+   12753, 12755, 12757, 12759, 12761, 12763, 12771, 12773, 12775, 12777,
+   12782, 12784, 12792, 12794, 12796, 12798, 12814, 12815, 12819, 12820,
+   12823, 12825, 12826, 12830, 12846, 12847, 12851, 12850, 12860, 12861,
+   12865, 12865, 12869, 12868, 12874, 12878, 12879, 12883, 12884, 12892,
+   12891, 12902, 12906, 12910, 12923, 12922, 12937, 12938, 12939, 12942,
+   12943, 12944, 12945, 12953, 12957, 12966, 12972, 12984, 12996, 13006,
+   13017, 12983, 13025, 13026, 13030, 13031, 13035, 13036, 13044, 13048,
+   13049, 13050, 13053, 13055, 13059, 13060, 13064, 13069, 13076, 13081,
+   13088, 13090, 13094, 13095, 13099, 13104, 13112, 13113, 13116, 13118,
+   13126, 13127, 13131, 13132, 13133, 13137, 13139, 13144, 13145, 13154,
+   13155, 13159, 13160, 13164, 13177, 13201, 13213, 13220, 13239, 13247,
+   13252, 13265, 13274, 13290, 13307, 13308, 13309, 13317, 13318, 13319,
+   13320, 13334, 13340, 13346, 13352, 13358, 13364, 13382, 13392, 13402,
+   13408, 13417, 13429, 13435, 13441, 13457, 13458, 13462, 13471, 13486,
+   13490, 13533, 13537, 13554, 13558, 13630, 13654, 13684, 13685, 13695,
+   13702, 13706, 13712, 13718, 13728, 13734, 13743, 13753, 13754, 13782,
+   13796, 13810, 13825, 13826, 13836, 13837, 13847, 13848, 13849, 13853,
+   13866, 13896, 13906, 13906, 13908, 13918, 13919, 13920, 13921, 13922,
+   13923, 13924, 13925, 13926, 13927, 13928, 13929, 13930, 13931, 13932,
+   13933, 13934, 13935, 13936, 13937, 13938, 13939, 13940, 13941, 13942,
+   13943, 13944, 13945, 13946, 13947, 13948, 13949, 13950, 13951, 13952,
+   13953, 13954, 13955, 13956, 13957, 13958, 13959, 13960, 13961, 13962,
+   13963, 13964, 13965, 13966, 13967, 13968, 13969, 13970, 13971, 13972,
+   13973, 13974, 13975, 13976, 13977, 13978, 13988, 13989, 13990, 13991,
+   13992, 13993, 13994, 13995, 13996, 13997, 13998, 13999, 14000, 14001,
+   14002, 14003, 14004, 14005, 14006, 14007, 14008, 14009, 14010, 14011,
+   14012, 14013, 14014, 14015, 14016, 14017, 14018, 14019, 14020, 14021,
+   14022, 14023, 14024, 14025, 14026, 14027, 14028, 14029, 14030, 14031,
+   14032, 14033, 14034, 14035, 14036, 14037, 14042, 14043, 14044, 14045,
+   14046, 14047, 14048, 14049, 14050, 14051, 14052, 14053, 14054, 14055,
+   14056, 14057, 14058, 14059, 14060, 14061, 14062, 14063, 14064, 14065,
+   14066, 14067, 14068, 14069, 14070, 14071, 14072, 14073, 14074, 14075,
+   14076, 14077, 14078, 14079, 14080, 14081, 14082, 14083, 14084, 14085,
+   14086, 14087, 14088, 14089, 14090, 14091, 14092, 14093, 14094, 14095,
+   14096, 14097, 14098, 14099, 14100, 14101, 14102, 14103, 14104, 14105,
+   14106, 14107, 14108, 14109, 14110, 14111, 14112, 14113, 14114, 14115,
+   14116, 14117, 14118, 14119, 14120, 14121, 14122, 14123, 14124, 14125,
+   14126, 14127, 14128, 14129, 14130, 14131, 14132, 14133, 14134, 14135,
+   14136, 14137, 14138, 14139, 14140, 14141, 14142, 14143, 14144, 14145,
+   14146, 14147, 14148, 14149, 14150, 14151, 14152, 14153, 14154, 14155,
+   14156, 14157, 14158, 14159, 14160, 14161, 14162, 14163, 14164, 14165,
+   14166, 14167, 14168, 14169, 14170, 14171, 14172, 14173, 14174, 14175,
+   14176, 14177, 14178, 14179, 14180, 14181, 14182, 14183, 14184, 14185,
+   14186, 14187, 14188, 14189, 14190, 14191, 14192, 14193, 14194, 14195,
+   14196, 14197, 14198, 14199, 14200, 14201, 14202, 14203, 14204, 14205,
+   14206, 14207, 14208, 14209, 14210, 14211, 14212, 14213, 14214, 14215,
+   14216, 14217, 14218, 14219, 14220, 14221, 14222, 14223, 14224, 14225,
+   14226, 14227, 14228, 14229, 14230, 14231, 14232, 14233, 14234, 14235,
+   14236, 14237, 14238, 14239, 14240, 14241, 14242, 14243, 14244, 14245,
+   14246, 14247, 14248, 14249, 14250, 14251, 14252, 14253, 14254, 14255,
+   14256, 14257, 14258, 14259, 14260, 14261, 14262, 14263, 14264, 14265,
+   14266, 14267, 14268, 14269, 14270, 14271, 14272, 14273, 14274, 14275,
+   14276, 14277, 14278, 14279, 14280, 14281, 14282, 14283, 14284, 14285,
+   14286, 14287, 14288, 14289, 14290, 14291, 14292, 14293, 14294, 14295,
+   14296, 14297, 14298, 14299, 14300, 14312, 14311, 14324, 14332, 14323,
+   14349, 14350, 14355, 14354, 14361, 14360, 14370, 14369, 14380, 14379,
+   14385, 14393, 14395, 14400, 14400, 14409, 14408, 14422, 14421, 14426,
+   14430, 14431, 14432, 14436, 14437, 14438, 14439, 14443, 14444, 14445,
+   14446, 14451, 14475, 14501, 14512, 14529, 14543, 14558, 14577, 14594,
+   14606, 14614, 14630, 14656, 14693, 14707, 14708, 14709, 14710, 14714,
+   14732, 14750, 14751, 14755, 14756, 14757, 14758, 14762, 14776, 14780,
+   14781, 14782, 14792, 14793, 14794, 14800, 14806, 14818, 14817, 14830,
+   14831, 14835, 14836, 14840, 14858, 14859, 14860, 14865, 14866, 14871,
+   14870, 14887, 14896, 14906, 14905, 14936, 14937, 14941, 14942, 14946,
+   14947, 14948, 14949, 14951, 14950, 14963, 14964, 14965, 14966, 14967,
+   14973, 14978, 14984, 14995, 15006, 15010, 15017, 15026, 15028, 15033,
+   15038, 15045, 15057, 15069, 15076, 15088, 15089, 15092, 15093, 15096,
+   15101, 15109, 15119, 15138, 15141, 15143, 15147, 15148, 15155, 15157,
+   15161, 15162, 15167, 15166, 15170, 15169, 15173, 15172, 15176, 15175,
+   15178, 15179, 15180, 15181, 15182, 15183, 15184, 15185, 15186, 15187,
+   15188, 15189, 15190, 15191, 15192, 15193, 15194, 15195, 15196, 15197,
+   15198, 15199, 15200, 15201, 15202, 15203, 15207, 15208, 15212, 15213,
+   15217, 15224, 15231, 15241, 15252, 15261, 15270, 15282, 15287, 15295,
+   15300, 15308, 15313, 15320, 15320, 15321, 15321, 15324, 15331, 15336,
+   15342, 15348, 15354, 15358, 15362, 15363, 15367, 15395, 15397, 15401,
+   15405, 15409, 15416, 15417, 15421, 15422, 15426, 15427, 15431, 15432,
+   15438, 15444, 15450, 15456, 15466, 15465, 15475, 15484, 15485, 15489,
+   15490, 15495, 15496, 15497, 15502, 15503, 15504, 15508, 15509, 15513,
+   15525, 15534, 15544, 15553, 15567, 15568, 15573, 15572, 15588, 15589,
+   15593, 15594, 15598, 15598, 15619, 15620, 15624, 15625, 15626, 15630,
+   15635, 15643, 15646, 15644, 15659, 15666, 15687, 15713, 15715, 15719,
+   15720, 15724, 15725, 15733, 15734, 15735, 15736, 15742, 15748, 15758,
+   15760, 15762, 15767, 15768, 15769, 15770, 15771, 15775, 15776, 15777,
+   15778, 15779, 15780, 15790, 15791, 15796, 15809, 15825, 15827, 15829,
+   15835, 15836, 15838, 15844, 15843, 15862, 15863, 15867, 15873, 15882,
+   15882, 15906, 15907, 15912, 15913, 15915, 15917, 15931, 15940, 15946,
+   15951, 15928, 16001, 16002, 16006, 16026, 16047, 16051, 16057, 16063,
+   16022, 16122, 16134, 16143, 16147, 16121, 16164, 16168, 16172, 16176,
+   16180, 16184, 16191, 16198, 16205, 16215, 16216, 16220, 16221, 16222,
+   16226, 16227, 16232, 16234, 16233, 16239, 16240, 16244, 16251, 16261,
+   16267, 16278
 };
 #endif
 
@@ -3207,26 +3212,26 @@ static const char *const yytname[] =
   "WHEN_SYM", "WHERE", "WHILE_SYM", "WITH", "WITH_CUBE_SYM",
   "WITH_ROLLUP_SYM", "WORK_SYM", "WRAPPER_SYM", "WRITE_SYM", "X509_SYM",
   "XA_SYM", "XML_SYM", "XOR", "YEAR_MONTH_SYM", "YEAR_SYM", "ZEROFILL",
-  "IMPOSSIBLE_ACTION", "'='", "'>'", "'<'", "'|'", "'&'", "'-'", "'+'",
-  "'*'", "'/'", "'%'", "'^'", "'~'", "'('", "')'", "','", "'!'", "'{'",
-  "'}'", "';'", "'@'", "'.'", "':'", "$accept", "query", "$@1",
-  "opt_end_of_input", "verb_clause", "statement", "deallocate",
-  "deallocate_or_drop", "prepare", "prepare_src", "execute", "$@2",
-  "execute_using", "execute_var_list", "execute_var_ident", "help", "$@3",
-  "change", "$@4", "master_defs", "master_def", "ignore_server_id_list",
-  "ignore_server_id", "do_domain_id_list", "do_domain_id",
-  "ignore_domain_id_list", "ignore_domain_id", "master_file_def",
-  "optional_connection_name", "connection_name", "create", "$@5", "$@6",
-  "$@7", "$@8", "$@9", "$@10", "$@11", "server_def", "$@12",
-  "server_options_list", "server_option", "event_tail", "$@13",
-  "ev_schedule_time", "$@14", "opt_ev_status", "ev_starts", "ev_ends",
-  "opt_ev_on_completion", "ev_on_completion", "opt_ev_comment",
-  "ev_sql_stmt", "$@15", "clear_privileges", "sp_name", "sp_a_chistics",
-  "sp_c_chistics", "sp_chistic", "sp_c_chistic", "sp_suid", "call", "$@16",
-  "opt_sp_cparam_list", "opt_sp_cparams", "sp_cparams", "sp_fdparam_list",
-  "sp_fdparams", "sp_param_name_and_type", "@17", "sp_pdparam_list",
-  "sp_pdparams", "sp_pdparam", "sp_opt_inout", "sp_proc_stmts",
-  "sp_proc_stmts1", "sp_decls", "sp_decl", "$@18", "$@19",
+  "IMPOSSIBLE_ACTION", "CONDITIONLESS_JOIN", "ON_SYM", "'='", "'>'", "'<'",
+  "'|'", "'&'", "'-'", "'+'", "'*'", "'/'", "'%'", "'^'", "'~'", "'('",
+  "')'", "','", "'!'", "'{'", "'}'", "';'", "'@'", "'.'", "':'", "$accept",
+  "query", "$@1", "opt_end_of_input", "verb_clause", "statement",
+  "deallocate", "deallocate_or_drop", "prepare", "prepare_src", "execute",
+  "$@2", "execute_using", "execute_var_list", "execute_var_ident", "help",
+  "$@3", "change", "$@4", "master_defs", "master_def",
+  "ignore_server_id_list", "ignore_server_id", "do_domain_id_list",
+  "do_domain_id", "ignore_domain_id_list", "ignore_domain_id",
+  "master_file_def", "optional_connection_name", "connection_name",
+  "create", "$@5", "$@6", "$@7", "$@8", "$@9", "$@10", "$@11",
+  "server_def", "$@12", "server_options_list", "server_option",
+  "event_tail", "$@13", "ev_schedule_time", "$@14", "opt_ev_status",
+  "ev_starts", "ev_ends", "opt_ev_on_completion", "ev_on_completion",
+  "opt_ev_comment", "ev_sql_stmt", "$@15", "clear_privileges", "sp_name",
+  "sp_a_chistics", "sp_c_chistics", "sp_chistic", "sp_c_chistic",
+  "sp_suid", "call", "$@16", "opt_sp_cparam_list", "opt_sp_cparams",
+  "sp_cparams", "sp_fdparam_list", "sp_fdparams", "sp_param_name_and_type",
+  "@17", "sp_pdparam_list", "sp_pdparams", "sp_pdparam", "sp_opt_inout",
+  "sp_proc_stmts", "sp_proc_stmts1", "sp_decls", "sp_decl", "$@18", "$@19",
   "sp_cursor_stmt", "$@20", "sp_handler_type", "sp_hcond_list",
   "sp_hcond_element", "sp_cond", "sqlstate", "opt_value", "sp_hcond",
   "signal_stmt", "signal_value", "opt_signal_value",
@@ -3544,16 +3549,16 @@ static const yytype_uint16 yytoknum[] =
      865,   866,   867,   868,   869,   870,   871,   872,   873,   874,
      875,   876,   877,   878,   879,   880,   881,   882,   883,   884,
      885,   886,   887,   888,   889,   890,   891,   892,   893,   894,
-     895,   896,   897,   898,   899,    61,    62,    60,   124,    38,
-      45,    43,    42,    47,    37,    94,   126,    40,    41,    44,
-      33,   123,   125,    59,    64,    46,    58
+     895,   896,   897,   898,   899,   900,   901,    61,    62,    60,
+     124,    38,    45,    43,    42,    47,    37,    94,   126,    40,
+      41,    44,    33,   123,   125,    59,    64,    46,    58
 };
 # endif
 
-#define YYPACT_NINF -4035
+#define YYPACT_NINF -4295
 
 #define yypact_value_is_default(Yystate) \
-  (!!((Yystate) == (-4035)))
+  (!!((Yystate) == (-4295)))
 
 #define YYTABLE_NINF -2801
 
@@ -3564,497 +3569,497 @@ static const yytype_uint16 yytoknum[] =
      STATE-NUM.  */
 static const int yypact[] =
 {
-    6410,  2635,   940,  1761,   982,   942, 58671, -4035,   133,  -108,
-   -4035,  -151,    19, -4035, -4035, -4035, -4035, -4035,  3251, -4035,
-   58671,   117,  1228, -4035, 26809, -4035, -4035, -4035,   -16, -4035,
-     148,  -108, -4035,   117,   684, -4035, 58671, -4035,   929,  1598,
-     117, -4035, -4035, -4035, 51675, -4035,  -151, 58671, -4035,   954,
-   -4035, -4035, 51675,   206,   259,   944,   -12, -4035, -4035, 58671,
-   -4035,  2241, -4035,   862,  1642,  1514, -4035, -4035,  1244, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  3126, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, 27451,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  1035, 58671,  1053, 58671,  1500, 58671,
-   49767, 58671, -4035,  1593, -4035, -4035,  1586,  1138, -4035, -4035,
-    -108,   810, -4035, -4035,  1778,  -151, -4035, 49767, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,  1171, -4035, -4035,  1237,  1306, -4035, -4035,
-   -4035,  -116, -4035,  1866,  1691,  1456, 58671,  1342, 13102,  1697,
-    1697,  1697,  1729,  1790,  1697,  1697,  1697, 58671, -4035,  1697,
-    1697,  1697,  -108, -4035, -4035, -4035,  1819, 38319, 58671,  1635,
-     649,   -67, 49767, -4035,  1412, 58671,  1306,   137, -4035,  1771,
-   -4035, -4035, -4035, 65031,  -108, -4035,  2029,  1882,   258, 58671,
-   -4035, -4035, -4035, 65031,   990,  1298,  1501, -4035, -4035,  1643,
-   -4035, 38955,   207, -4035, -4035, -4035,   130,  1956, -4035, 29377,
-    5183,  1643,  1634,  1306,   638,  1681,  1306, -4035, -4035, 58671,
-    1306,  -108,  1852, -4035, 13102, -4035,   232,   232,   232, -4035,
-     232, -4035,   232,   862,  1507,  1715, -4035, -4035,  1553, 58671,
-    1995, -4035,  1995, -4035, -4035,  1995,   362,  1748,  2004,  2012,
-    2014,  1719,  1807,  1138,  2066, -4035, -4035, -4035,  1616,   772,
-   -4035,  1711, 42135, -4035, 58671, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,  1881, -4035,  1737,   125,  1796,  2151, -4035,
-   49767, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-    1670, 26809,  1674, 58671, -4035,  2178, 13102,  1237, -4035,  1772,
-   -4035, -4035, 26809, -4035, -4035, 26809,   256,  1207, 58671, -4035,
-   -4035,  2339, -4035, -4035, -4035, 52311,  1342,  1713,  1727,  1730,
-   18390, -4035,  1733,  1745,  1749, 13102,  1784,  1805,  1810,  1826,
-    1828,  1830,  1884,  1886,  1897,  1907,  1916,  1926,  1929,  1937,
-    1937,  1937,  1944,  1947,  1967,  1984,  -170,  1987, -4035,  2001,
-    2006,  2019, -4035, -4035,  2021,  2024,  2026,  2033, -4035, -4035,
-    2057,  2070,  2074, 13763,  2077,  2081,  2094, -4035, 23587,  2097,
-    2099,  2102,  2107,  2128,  2138,  2141,  2149,  2153, -4035, -4035,
-   13102,  1944, -4035, -4035,  2169, -4035,  2173,  2175,  2177,  2180,
-    2183,  2185,  2188,  2196,  2198,  2205,  2207,  2210,  2212,  2218,
-    2220,  2232,  2247,  1944, -4035,  -167,  2256,  2259,  1165,  2267,
-   -4035,  2285, -4035,   251,  2295,  1937,  1944,  1944,  2300,  2316,
-    2318,  2327,  2334,  2336, 18390, 18390, 18390, 13102, -4035, 58671,
-   -4035, 58671,  2230,  2824, -4035,  2702, 18390,   229, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  1723,  1880, -4035, -4035, -4035,
-   -4035, -4035, -4035,  2340,  1782,  2234, 58671, 58671, 58671,  2333,
-   58671, 58671, 58671, -4035, 49767,  2025, 58671, -4035, -4035,  1697,
-    2040,  4108, 32582,  2152,  2197,  2155,  1937, -4035, -4035,   671,
-     708,   719,  2303, -4035, -4035,  1969,   760,  2326, -4035,   815,
-     188, -4035,   106,   822,   911, -4035, -4035, -4035, -4035, -4035,
-   -4035,  2132,  2352,  2082, -4035, -4035,   161, -4035, -4035, 58671,
-   -4035,  2628, 13102, -4035, -4035, -4035,  2576,  2432, -4035, -4035,
-   -4035,  1001,  2952,   250, 26809,  1761, 58671,   151, 66303, 66303,
-   58671, -4035, 61851,  2346, -4035, -4035,  7682, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2351, -4035,
-   -4035,  2356, 13102,  1404, -4035,  1196, -4035, -4035,  2749, -4035,
-   -4035, 46587, 26809,  1469, 65667, -4035, -4035, -4035, 24231, -4035,
-   -4035,  2992, -4035,  2386, -4035, -4035,  1880,  3985, -4035,  2663,
-    2152,  2671, -4035,  2848, -4035,  2678,  2585,  1207,  2471, -4035,
-    3019,  2792, -4035,  2874,  1703, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  2427,  1956, -4035, -4035, 52947,
-     784,  2590,  -143,  1155,  1384, 37680,   789, 49767,  1462,    76,
-   30018, 42771,  2420, -4035, -4035, -4035,   868,  2591, -4035,  2917,
-   -4035,    -3, -4035,  2438,  2743,    -3, 47223,  2792,   209, -4035,
-     375, -4035,  2899, -4035, -4035, -4035, -4035,  2562,  2546,  2593,
-   -4035,   412,  1679, -4035,  1306, -4035,   888, -4035,  2566,  2792,
-      -3,   209, -4035,  2817,  2946,   817,  2912, -4035,  1088, -4035,
-   -4035, -4035,   654,  3025, -4035,  2453, -4035, -4035, -4035, 26809,
-   -4035, -4035, -4035,  2576, -4035,   326, -4035, -4035, -4035, -4035,
-    2460, -4035, -4035,  2742,  2569, -4035, -4035,    74,  2464,    25,
-   -4035,  2960, -4035,  1761, 58671, -4035, -4035, -4035,   731,   879,
-    1586,  1995, -4035,  1995,  1995,  1995,  1995,   810, 43407, -4035,
-   -4035, -4035,  2993,  3021,  1937,  2473, -4035, -4035, -4035, -4035,
-   -4035,  3138, -4035, -4035,  2762,  3029,  3029,  3029,  3147, -4035,
-   -4035, -4035, 26809, -4035, -4035, -4035,   125, -4035,  2670,  2536,
-   -4035, 58671,  1796, -4035, 26809, -4035,  2501,  2914,  2511, -4035,
-   -4035,  2770, 13102, -4035, -4035, 13102, 65031,  3012,  2230, -4035,
-   -4035,   285, -4035, -4035, 26809,   295, -4035,  3114,  2733, -4035,
-   -4035, -4035,  3138,  3029, 26809, -4035,  2522, -4035,  2519, -4035,
-   13102, 13102,   363,  3116,  3185,  3185,  3185,  2230,  2573, 13102,
-   13102, 13102, 13102, 13102, 13102, 13102, 13102, 13102, 13102, 13102,
-   13102,  1290,  2545, -4035, -4035, -4035,  1163, -4035,  2547, 13102,
-   13102, -4035, 13102, 13102, 28093, -4035,  3763, 13102, 13102,  1021,
-    3062, 13102, 13102, 13102, 13102,  3070, 13102, 13102, 13102, 28093,
-    3206,  2555, -4035,  2552,  1631, 13102, 13102,  1766, 13102, 13102,
-   13102, 13102, 13102, -4035, -4035, 13102, 13102, 13102, 13102, 18390,
-   13102, 13102, 13102, 13102, 13102, 13102,  2561, 13102,  3185,  3185,
-   13102, 13102,  1768, -4035, -4035, 13102,  2466,  2466, -4035, 13102,
-    9797, 13102, -4035, -4035,  2567, -4035, -4035, -4035, 28093,  3185,
-    3185, 13102, 13102, 13102,  3116,  3116,  3116,   221,  2571,   634,
-   13102, 30659,  2559, -4035, -4035, -4035, -4035, 13102, 13102, 13102,
-   18390, -4035,  1257, -4035, -4035, -4035, -4035, -4035, 14424, 18390,
-   18390,  2570, 18390, 18390, 18390, 18390, 18390,  2953, 18390, 18390,
-   19051, 19712, 18390, 18390, 18390, 18390,   247,  3116, 49767, 18390,
-   13102, -4035, -4035, 58671, -4035, -4035, -4035,  2574, -4035,  2854,
-    2025, -4035, 47859, -4035,    11,  3069, -4035, 46587, 26809, -4035,
-    2572, -4035,  2956, -4035,  2958,  2959,  2962, -4035, -4035, -4035,
-   -4035,  3200,  2964, -4035,  1306,  2971, -4035, -4035,  2606, -4035,
-   -4035, -4035, 20373, 49767, -4035,  2611, -4035,  2626, -4035, -4035,
-   -4035, -4035, -4035, -4035,  2717, -4035, -4035, -4035, -4035,  2617,
-   -4035, 46587,  2617, -4035, -4035,  2617, -4035, -4035,  2617, 42135,
-      90,  3670, -4035, -4035, 58671, -4035, 59307, -4035,  3040,  1077,
-   -4035, 24231,  1306, -4035,  3047, 15085, -4035, -4035, -4035,  2995,
-     212,  2621, -4035, -4035, -4035, -4035,  3081, 58671, -4035, -4035,
-   -4035, 13102,  2991,  2623, -4035, -4035, -4035,   253, 26809, -4035,
-    2230, -4035,   136,   136,  2888,  1193, 49767, -4035, -4035,   201,
-    2632, -4035,  2719,  2633, -4035,  2720, -4035, -4035, 26809,  2627,
-   -4035, 26809, -4035, -4035, -4035,  2900,  2728, -4035,  1306,  1298,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,  2646,  2662,  3110,  2650, 46587, 42135,   821,
-   -4035, 58671, -4035,  1854, -4035, -4035,   864, -4035, -4035,  1825,
-   44043, -4035,   421,  2681,  2708,  3059, -4035, -4035,  2655, -4035,
-   13102, -4035,  2653,  2656, -4035,   868, -4035, 47859, 58671, -4035,
-   -4035, -4035, -4035, -4035,  3246, 13102, -4035, 46587, -4035,    -7,
-   -4035,   835,   101,   868, -4035, -4035, -4035, -4035, -4035, 58671,
-   53583,  2661, 10458,  2784,  3078, -4035, -4035, -4035,  2682,  1995,
-   58671, 58671, 58671, 26809, 58671, 26809, -4035,  1008,  1008, -4035,
-   -4035, -4035, -4035,    -3, 58671, 58671,    -3, 42135, -4035,   209,
-     735, 58671,    -3, -4035,  3080,  2779, -4035, -4035, -4035,  3149,
-   -4035, -4035,  3142,  2684, -4035,  3171, -4035, -4035,  2809,   209,
-   -4035, -4035, 26809, -4035, -4035,   209, -4035,   209,   209, 13102,
-      -3,    -3,    -3, -4035,   -35, -4035, -4035, -4035,  2838,   638,
-   -4035, -4035, -4035,   999, -4035, -4035,   232,  2942, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,   104,
-   -4035, -4035, -4035,  3179, -4035, 47859, 42135,  3166,  1995,  1995,
-   -4035, -4035,  3202, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-    1995, -4035, -4035, -4035, -4035, -4035, -4035,  1796, 49767, 58671,
-   58671, 58671, 26809, -4035, -4035, -4035, -4035, -4035,    81, -4035,
-   -4035, -4035,   379,  3230, -4035, 49767,  3384,   -44,  1126,  3384,
-    2718,  1306,   214, -4035,   214, -4035, -4035, -4035,   261,  1995,
-   -4035, -4035,  2715, -4035,  2972, -4035, -4035, 49767, 54219, 26809,
-   -4035, -4035, -4035,  1407,  2721,  2722,  2230,  2230, 62487,  3324,
-    2757,  4600, -4035, -4035, 26809, -4035,   333, -4035, -4035, -4035,
-    2786, -4035, -4035, -4035, -4035,  2359, -4035, -4035,  1941,  2781,
-    2734, -4035,  2900, -4035,  1477, 58671,  3194, 35136, -4035,   245,
-     884, -4035,  3185,  2738, -4035,  2739,  2740,  2741, 13102,   248,
-    1855,  1003,  1261,  1470,  1134,   266,  1234,   271, -4035,  1536,
-     281,   343,   386,   219, -4035,  2744,  2748, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  2752, -4035, -4035, -4035,   498,
-     619,  1263,  1284,  2754,  2755, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  3213, -4035,   624,  1560, -4035,
-   -4035, -4035, -4035,  2758, -4035, -4035,  1296,   743,   777,   241,
-    2768,  1584,   795,  1647,  1659,  2763, 28093, 58671,  3185,  2769,
-    1304,  1337,  3185,  2772,   800,  1369,  1661,  1675,  1683,  1373,
-    1415,   877,  1696,  3589,  1430,   979,  1032,  1452,  1037,  1041,
-   -4035,  1465,  2773,  2776,  1072,   167,  3185,  2782,   275,  2778,
-    2780,  1480, 11119, 11780, 12441,   174,  1116, -4035,  2783, -4035,
-    2552,  2787,  2788,   305,   213,  1494, -4035, 13102, -4035, -4035,
-    2793, -4035,  2831,   160,   101, -4035,  2934, 58671,  2341,   235,
-   -4035, -4035, -4035, -4035, -4035, -4035,  1005, -4035,  2803, -4035,
-    2808,  2286,  2802, 13102,   205,  2802,  3314,  2408,  2408, 18390,
-    2479,  2709, 13763,   963, 13763,   963,  2802,  2802,  2802, -4035,
-   18390,  2819, 18390, 18390, -4035,  3116,  2230,  2821,  -207, 58671,
-   26809,    11,  2807, -4035, -4035, -4035, -4035, -4035,   868, -4035,
-    2818,   139, 26809, 49767,  2823, -4035,  3305, -4035, -4035, -4035,
-   -4035,  1306, -4035, -4035,  4346, -4035, 26809,  2915,  2918,  2919,
-   -4035, 33223, -4035, -4035, -4035, -4035, 33223,   826, -4035, 58671,
-   -4035,  2909, -4035, -4035, -4035,  3253, -4035,  3255,  1114, -4035,
-   24873, 24873, -4035, 24873, -4035, -4035, -4035, -4035, -4035,   188,
-   -4035, -4035, -4035, -4035,   388,   440,  3136,  2681, -4035, -4035,
-   -4035, -4035, -4035, -4035, 34500,  2230, -4035, 26809, -4035,  3247,
-     709, 26809, -4035, -4035,  3243,  2230, -4035, -4035, -4035, -4035,
-   -4035, -4035,  2840, -4035,  2833, -4035, -4035, -4035, -4035, -4035,
-    2887,  2957, -4035,  3492, -4035, 13102,  1306, -4035, 46587, 46587,
-   26809, 26809, 26809,   523, 13102, -4035,  2399,  2849, -4035, -4035,
-    2945, -4035,  3495, -4035,  3985, 20373, 47859,  3297,  3311, -4035,
-    2857, 24873, 24873, 24873, -4035, -4035, -4035, -4035,  2954,  2954,
-   -4035, 31300, -4035, 13102, -4035, -4035, -4035,  3341, -4035,  3051,
-     -48, -4035, -4035, -4035, -4035, -4035, 58671, -4035,  3527, -4035,
-   -4035,  2870, -4035, -4035, 26809, -4035, -4035,  3317, -4035,  3041,
-   -4035,  2230, -4035,  2871, 52947,  3340, 10458,  3342, -4035, 48495,
-   -4035,  2230,   868,  2884,  2885, -4035, -4035,  3268,   765, -4035,
-    2891,  2892, -4035,  2890,  2896,  2898, 52947, 13102, -4035,   835,
-   -4035, -4035, -4035, -4035, -4035, 18390,  2001, -4035,  2230, -4035,
-   -4035,  1306,  3363,  1306, 13102,  2907, 58671, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,    -3, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,  3148,  2792,  1679,  3078, -4035,    -3,   209, 26809,    -3,
-      -3,  2230, -4035, -4035, -4035, -4035, -4035, -4035,  2920, -4035,
-    2975, -4035, -4035,  3086, 65031,  2923, -4035,  3386,  2792, -4035,
-   -4035, -4035,    91,  1537,  2926,  1995, -4035, 58671, 58671,  1995,
-    1995, 58671, -4035, -4035,  1143,  3209,  3210, -4035, -4035,   868,
-     868,  3235, -4035,  1306,  3064,  3065,  3067,  3072,  3074,  3111,
-   -4035, -4035,  1306,  1306, -4035, -4035,   868, -4035,  1173, -4035,
-   -4035, -4035, -4035,  1857, -4035,   868,   868, -4035,  1073, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,  1179, -4035,  5099, -4035,
-   -4035, 26809,  3224, 26809,  3404, -4035,  3474, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2949, -4035, -4035,
-   13102,  3044, -4035, -4035,  2757, -4035,  2968,  2970,  2974,  2980,
-    2982,  2983,  2985,  2986,  2989,  3000,  3001,  3003,  3004,  3006,
-    3008,  3009,  3014,  3016,  3017,  3024,  3030,  3031,  3033,  2950,
-   -4035, -4035, -4035,  3013, -4035, -4035, -4035,   868,   868,   868,
-     868, -4035,  2785, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,  3328,  1798, 58671,  3028, -4035, 35136, -4035, -4035,   999,
-   -4035,  2955, 15746, -4035,  3022, -4035, 13102, -4035, -4035, -4035,
-    1868, 13102, 13102,  3502,  2716, -4035, 49131, -4035, -4035, -4035,
-   13102, -4035, 13102, -4035, 13102, 13102, 13102, 13102, 49131,  2716,
-   13102, -4035,  3023, -4035,  3416,  3429, -4035, -4035, -4035, -4035,
-   13102, 13102, -4035, 13102, 13102, -4035, 13102, 13102, 13102, 13102,
-   -4035, 13102, -4035, -4035, 18390, -4035,  3018,  3032, -4035, -4035,
-   -4035,  3034, -4035, 13102, -4035, -4035, -4035, -4035, -4035, -4035,
-   13102, -4035, 13102, -4035, 13102, 13102, -4035, 13102, 13102, -4035,
-   -4035, -4035, 16407, 13102, 13102,  3035, -4035, -4035, 13102, 13102,
-   13102, -4035, 13102,  2022, 13102,  2100, 13102,  2146, 13102, -4035,
-   13102, -4035, -4035, -4035, -4035, 13102,   398,  2887,  2945,  3043,
-   -4035,  1717,  2874, -4035,  1292,  2793,  3049,  3205,  1854, -4035,
-   -4035, 49767, 13102, -4035, -4035, -4035, -4035, -4035, -4035, 18390,
-     319,  3055, 18390, -4035,  3314,  3070,  3070,  2310, 13102,   205,
-    3314, 13102,  3056,  3027, -4035, 13102, 58671, -4035, -4035, -4035,
-   47859, -4035, 49767, 46587, -4035, -4035, -4035,   139, -4035,  2572,
-    3042, -4035, -4035, -4035,  2840,   357,  3057,  3046, -4035, -4035,
-   -4035, -4035, -4035, -4035,  1722, -4035, 42135,   317,  3702, 42135,
-   -4035,  3052, -4035,  3053,  3140,  3143,  3144, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2792, 65031,
-    2399, -4035, -4035,  3066, -4035, -4035,  2770,  2954,  3085,  3443,
-    3639, -4035, -4035, -4035, -4035, 65031, 65031, 13102, 58671, 18390,
-   -4035,  3679,  3076,  3077,  3090,  3079,  2230, -4035,  3155, -4035,
-   -4035, -4035,    39, -4035, -4035, -4035, -4035, -4035,    61,  2191,
-   -4035, -4035,  3082,  3082, 22301, -4035, -4035, -4035, 58671, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  3097, -4035,
-   -4035,  3360, 46587, 42135,  3544,  3545,  3546,   701, -4035, -4035,
-   -4035, 49767,  3089, -4035, -4035, -4035,  2230,  3091,   400, 44679,
-    3575, 44679, 44679, -4035,   831,  3493,  3494, -4035,  3368,  1961,
-    3368, -4035, -4035,   831,   999,  2900, -4035, 13102,  3706,  3539,
-    3419, -4035, 50403, -4035, 35772, -4035,  7155, -4035, 46587, -4035,
-   -4035, -4035, -4035, -4035,  3198,  3203,   -14, -4035, -4035,  3506,
-    3333, -4035, -4035, -4035,   868,  2230, -4035,  2661,  3113, 31941,
-   -4035,  1317, -4035, -4035,  2230,   366, -4035, -4035, -4035,  3398,
-   -4035, -4035,  3363, -4035,  2681,   209, -4035, -4035,   -35,  2463,
-   -4035, 28093, 63123,  2945,  3440, -4035, -4035, -4035,   116,  3770,
-   -4035, 58671,  3121,   660, -4035, -4035, 58671,  3583,  1007,  1007,
-    3408, 26809, 26809,  4240, 48495, 45315, -4035, -4035, -4035, -4035,
-    3672, -4035,  3673,  1046, -4035, -4035,  1506,  1126, -4035,  1306,
-    1306,  1306,  1306,  2945,  1306,  1306,  1759, -4035,  1506,  1506,
-     214, -4035,   181, -4035, -4035, -4035, -4035,  2579,   868,  3713,
-    3394,   868,   868,  3713,   868,  3395,  3396,   868,   868,  3222,
-    3658,   868,  3548,  3250,  3436,  3554,   868,  3417, -4035,  3260,
-    3676,   868,   868,   868,   868,   868,  3713,  3420,  3773,   868,
-     868, -4035,   868,  3423,  3425,   175,  3430,  3432,   868,   868,
-     868,   868,  1147, 58671,   868,   868,  3433,   868, -4035, -4035,
-    6367, -4035, -4035, -4035, -4035, -4035, -4035,   707, 25521, -4035,
-   -4035, -4035, -4035,   868, -4035,   525, -4035,  3376, -4035,   396,
-   51039, 63759,  3167,  3178, 54855,  2230, 65031, 13102, -4035,  3181,
-    3182,  3184,  2945,  1306,  1306,  1317,  1306,  2945,  1306,  1306,
-    1306,  1306,  1306,  1306,  1306,  2945,  2945,  1306,   156,  1518,
-    1306,  2945,  4600, -4035,  1306,  2887,  1506,  1506,  1941, -4035,
-    3621,   868, -4035,  2371, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  3177,   999,  2681,  1601,  2681,  3195,
-   -4035, 13763,  1509, -4035,  2230, 13102,  2230,  1949, -4035,  3189,
-    3189,  3189, -4035,  3192, -4035, -4035,  3189,  3602,  3189,  3603,
-    3207,  3208,  1780,  2209, -4035,  1785,  2219,  1511,  3211,  3212,
-    1723, -4035, 13102, 13102,  1559,   331,  1692,   -75,  1129,  1178,
-     336, -4035,  1725,  3791, -4035, -4035,  1746,  1754,  1767,  1769,
-    1203,  1788,  1794, 13763,  1811,   402,   382, -4035,  1835,  1205,
-    1217,  1890, 13102,  1900, 13102,  1905, 13102,  1909,  1911,  1913,
-    3214,  3214,   179, -4035,  3197, -4035, -4035, -4035,  3215, -4035,
-   -4035, -4035, -4035,  2681,  2427,  1292, -4035,  3217,   110, -4035,
-   -4035,  3196,  2230,  3219, -4035, -4035, 13102, -4035,   229, -4035,
-   -4035, 18390,   413,  3221, -4035,  2230, -4035, -4035,  3223,  1723,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  3227, -4035,
-    3427, -4035, -4035,  3846, 33223, -4035, 58671,  1547,   -54, -4035,
-   -4035, 49767,  3478, -4035,  3216, 36408, 42135, 42135, 42135,  3228,
-   -4035, 59943,  3486, 26809, -4035,  3627, -4035, -4035, -4035, -4035,
-   58671, 66303, 66303, 66303, 66303,  3233,  3236, -4035, -4035, -4035,
-    3314,  3588,  3471, -4035, -4035,  2887, 58671, 46587,  3530, -4035,
-   -4035,  3439,  1956, 28093, -4035,  3237, -4035,  3237,  -115,  3240,
-    1801, -4035, -4035, -4035,  3229,  2471,  1813, -4035, 20373,  3699,
-    2818, -4035, 42135, 42135, 42135, -4035,  2429, -4035, 31300, 13102,
-   -4035, -4035, -4035, -4035, -4035, 44679, -4035, -4035,  -182,   110,
-   -4035,  1991, -4035, -4035, -4035,  3640,  3368,  3368,   831,  3641,
-     855, -4035,  3542, -4035,  1956,  2230, 13102, -4035,  3516, -4035,
-   55491, -4035, -4035, -4035, -4035,  1231, -4035, -4035,  3248,  3257,
-     273,  3477, -4035, -4035, -4035, -4035, 10458, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2792, -4035,
-   -4035, -4035, -4035, -4035,    -3, -4035,  3273, -4035,  3254,  3261,
-   -4035,   868,  3293, -4035, -4035, 42135,  3460, -4035,   120,  3270,
-   58671, -4035,  3816, -4035, -4035, -4035, -4035, -4035, 26809, -4035,
-   -4035, 26809, 21017, -4035, -4035,  3536, -4035,  4030, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,  1857, -4035, -4035, -4035,  1179, -4035, -4035, 28735,  1995,
-   -4035,   169, -4035,  1995,  1407,  1407,  3703, 56127, 28735,   117,
-    1317,  2945,  1729,  2945, 56763,   117,  1306,  1306,  2429,   868,
-    2945, -4035, -4035,  3681,  1697,  3682,  1729,  1729, -4035, 49767,
-   58671, -4035,   868,  1441,  2945, 57399,  1317,  1317,  1729,   117,
-   28093,  2527,  2603, -4035,  1306,   117, -4035, -4035, -4035, -4035,
-   26809,   117,   117,  3366,  3020,  3199,  3239, -4035, -4035, -4035,
-    2945,  2603, 56763, -4035, -4035,  5477, -4035, -4035, -4035, 21659,
-   58671,   329,   180, -4035,  3278, 40227,  3292,  1761,  1078,  3375,
-     293, -4035,   162, -4035, -4035, -4035,  3735,  3294,   355, -4035,
-    3291, -4035, 56763, -4035,  3300, -4035,  3296, -4035, 60579,  2230,
-    2945,  2945,  2945, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, 58671,  1506,  1798, -4035, 35136,  2681,  3516, -4035, -4035,
-    3070, -4035,  2230, 13102,  1259, -4035, -4035, -4035, -4035,  1484,
-   -4035, -4035, -4035,  3303, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,  2800, -4035, -4035,  2716, -4035, -4035, -4035,  3312,  3070,
-    3070, -4035, -4035, 13102, -4035,  3921,  3484, 13102, 13102, -4035,
-   13102, -4035,   254,  3319,  3344, -4035, -4035, -4035, -4035, 13102,
-   -4035, -4035,  3070, -4035, 13102, -4035, -4035, 13102, -4035, 13102,
-   13102, -4035,  1921, -4035,  1938, -4035,  1963, -4035, -4035, -4035,
-    2887,  3320,  3708, -4035, -4035, -4035,  2887,  3513, -4035, -4035,
-    2887,  2945,  3317,  2655, -4035, -4035, -4035,  2874,   634, 58671,
-   -4035, -4035,  1841, -4035, -4035, 13102, -4035, 50403, -4035, -4035,
-    1317,  3802,  3700, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  3782,
-   -4035,  3431, -4035,   177, -4035, -4035, -4035,   -87,   -87,   -87,
-   17068,  2343,  3843, -4035, -4035, -4035,  3627,  3733, -4035,   786,
-    3346, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, 58671,
-    3348,  1773, -4035,  1846, -4035, -4035,  3351, -4035, -4035, -4035,
-    2427,  3352, -4035,   868, 17068,  3082,  3528, -4035, -4035,  -115,
-   28093, 35772, -4035, -4035, 58671, -4035, 42135,  2857,  2857,  2857,
-   45315, -4035, -4035,   400, -4035,  1854,  2324, -4035,   999, -4035,
-     831,  3752,  3754, -4035,   831, -4035, -4035, -4035,  2427,  1489,
-     400, 13102,  2792, -4035, -4035, 37044, -4035, -4035, -4035, -4035,
-   -4035, -4035, 31941, 52947, -4035,  2792, -4035,  1306,  1970, 28093,
-    2681, 17068, -4035, -4035, 58671, -4035, -4035, -4035, -4035,  3509,
-   -4035,  1756,  3647,  3391, -4035,  3370,  3371, -4035, 26809,  3372,
-    3373,  3374, -4035, -4035, -4035,   227, -4035,  5700, -4035, -4035,
-   -4035, -4035, -4035,   117,  3377,  3765,  3771,  1407, -4035,  1995,
-   28735, -4035,  1995,  1995,  1761, -4035, -4035, -4035,    95, 56763,
-   -4035, -4035, 28735, -4035, -4035, -4035,  3379, -4035, -4035,  2887,
-   -4035, -4035, 45315,  1306, -4035,  1729, 58671, -4035, 28735, 28735,
-   -4035,  3409,  1306, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, 28735, 56763,  3380, -4035,   400, -4035, -4035, -4035,
-   -4035, -4035,  2029, -4035, 56763, -4035, -4035, 56763, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  3385,  3005,  2133, -4035,  3383,
-   -4035, 58671, -4035, -4035, 26809, -4035, -4035, -4035,  6951, 58671,
-   -4035, -4035, -4035, -4035, 58671,  4024, -4035,  3631, 13102, 13102,
-    3674, 58671,  3675, -4035,  3964, -4035, -4035,  3809,  3852, 58671,
-    6951,  3857,  3858, -4035,  3399, -4035, 54855,  3491,  1848, -4035,
-   -4035,  1851, -4035, -4035,  1860, -4035, -4035, -4035, -4035, -4035,
-    2955, -4035,  3783,   793,  2230,  3405,  3406,  3407,  3410,   296,
-    1923,  3691, -4035, -4035, -4035,  3189, -4035,  3192, -4035, -4035,
-   -4035,  4003, -4035, -4035,  3189,  3818, -4035, -4035, -4035,  3413,
-   -4035,  3414,  3415,  1980, -4035,   232,  3418,  1982,  1219,  1932,
-    3734,  3808, -4035,  3650, -4035,  2003,  1534,  2030,  2035,  2044,
-    2046, -4035, -4035, -4035, -4035, -4035,  3424, -4035, -4035,   459,
-   -4035,  3426,  3539, -4035, -4035, -4035, -4035,  1951, -4035, -4035,
-    1973, -4035, -4035,  4060,  3704, -4035, -4035, -4035,  1306,   960,
-    3452,  3452,  3452,  2001,  2230,  1976, -4035, 65031, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  3845, 58671, -4035, -4035,  3437,
-    3492, 58671, -4035,  3471, -4035,  2655, 28093, 17068,  3444,  3445,
-   -4035,    25, -4035, -4035,  3441, -4035, -4035,  2857, -4035,  4032,
-   -4035, -4035, -4035,  2870,  3234,  3496,   831,   831,  3283,  3500,
-   13102,  3454, -4035,    73,  2655, -4035, -4035, 13102, -4035, -4035,
-    2230,  3693, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  3516,
-   -4035,  3456,  3458, -4035, -4035,  1306,  1295, -4035, -4035,   349,
-    3634, 49767,  3462, 58671, 58671,  3464, -4035, -4035, 21659, -4035,
-    4100, -4035, -4035, 13102,  1995, -4035, -4035, 28735,  3514,  1158,
-   28735, 28735,  3945,  3993,  3995, -4035, 28735,  2359, 58671, -4035,
-    3246, -4035, 28735,  3379, -4035,   216,  3569, -4035,   329, -4035,
-   28093, -4035, -4035, -4035, 58671, -4035, 26809, -4035, -4035,  3473,
-   -4035,  3189,  3189,  3189, -4035, -4035,  3189, -4035,  3192,  3718,
-    3475,  3192,  3192, -4035, -4035, -4035, -4035, -4035,   296,   365,
-   -4035, -4035,   296, -4035, -4035, -4035,   157,  1274,  3192, -4035,
-   -4035, -4035, -4035, -4035,  3476, -4035,  3189,  3189,  3189, -4035,
-   -4035,   296,  3189, -4035,  3189, -4035,  3192,   279,   187,  3189,
-    3189,  3189,  3303,  3472, -4035,  1992, -4035, -4035,  2230,  3070,
-    4049, -4035, -4035,  3636,  1306,  3990, 58671,   170, -4035, -4035,
-    3246,  4010,  2693, -4035, -4035, -4035, 65031, -4035,  2945, -4035,
-    2945, -4035,  2945, 45951, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,   242, -4035, -4035, 49131,  4106, -4035,  3775,  3485, -4035,
-   -4035, -4035, -4035, -4035,   296, -4035, -4035, -4035, -4035, 13102,
-   -4035, -4035, -4035, 13102, -4035, -4035,  3811,  3968, -4035, -4035,
-   -4035, -4035, -4035, -4035,  3497, -4035,  2945,  3516, -4035, -4035,
-    1317,  4009, -4035, -4035, -4035,  3593,  3594, -4035, -4035,  3595,
-   -4035, -4035,   145,  2038, -4035, -4035, -4035, -4035, 17068, 64395,
-   -4035,  3897,  3604, -4035, -4035, -4035,  3507,  3553, -4035, -4035,
-    2874, -4035, -4035, -4035, -4035,   904,  3888,   634, -4035,  3563,
-   -4035, -4035, -4035,  3565,  2230, 58671, -4035,   428,  2874,   400,
-   58671,  3925,  3783, -4035, 58671,  6951, -4035, -4035, -4035, -4035,
-    3519,  3521, -4035, 58671, -4035, -4035, -4035,  3801,  1078,  3798,
-   58671,  2009,   400,  3525,  2039, -4035,    25,  6367, -4035, -4035,
-     833,   -39,  2051, 28735,  3514,  1365,  1007, -4035,  1007, -4035,
-   -4035, -4035, -4035,  3201,   329, -4035, -4035, -4035, -4035, -4035,
-   26809, -4035,   117, -4035, -4035,  3379,    61,  3532, 58671,  3868,
-   -4035, -4035, -4035, -4035,  1309, -4035,   232,  1309,  1309, -4035,
-    2590, -4035,  3567,   296, -4035, -4035,  3572, -4035, -4035, -4035,
-    1309,   232,   296, -4035, -4035, -4035, -4035,  1309,  2771,  3660,
-   -4035,   296, -4035, -4035,  4106, -4035,   296,  4106,  1309,  1309,
-   58671, -4035, 58671, -4035,  1076, -4035, -4035, -4035, -4035, -4035,
-    2041, -4035, -4035, -4035, -4035, 39591, -4035, 13102, -4035, -4035,
-   -4035, -4035, -4035,   701, 61215, -4035, -4035, -4035,  4016,  3719,
-    3730, -4035, -4035, -4035,  3540, -4035,  3543,   400,  2084, -4035,
-   -4035, -4035,  3549,  2792, -4035,  4139, -4035, -4035, -4035, -4035,
-     284,  3822,  2945,  2945,  2945,  1518,   -65,  2038, -4035, -4035,
-    3605, 26809, 18390,  3662, 58671,   843,  3335, -4035,  4160,  4161,
-    4051,  4163,   904, -4035,  -105, -4035, -4035, 13102,  3557, 13102,
-    3558,  2067, -4035, -4035,  1407,  1407, -4035,   428, -4035, -4035,
-   -4035,  1825, -4035, -4035,  3751, -4035, -4035, -4035,  1545, -4035,
-   -4035,  3674,  3561,  2086,   173, 58671, -4035,  3849,  2048, -4035,
-    3536,  3528, -4035,  2887,  3471, -4035, -4035, -4035, -4035,  1007,
-   -4035,  3566, -4035,  3568,  3570,  2915,  2918,  2919,  1518,  1518,
-   -4035, -4035, -4035, -4035, -4035,  3971, -4035, -4035,  2088, -4035,
-     908,  3847, -4035, -4035, -4035, -4035,  1309, -4035,  2122, -4035,
-   -4035, -4035, -4035, -4035, -4035,  2130, -4035, -4035, -4035, 49767,
-    1306,  2535,  4213, -4035,  3626, -4035,  4098,  3967, -4035,  4212,
-   -4035,  3204, -4035,  3981,  3865,   868,  3607, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035,   862,  3619,  3723,
-   -4035, 65031, -4035, 58671, 58035, -4035, -4035, 33864, -4035, -4035,
-   -4035,  4057, -4035,  2230, -4035, -4035,  4082,  2427, -4035, -4035,
-   13102, -4035, -4035, -4035,  3693, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,  1726, -4035, -4035, 28093,  2900, -4035,  2887,
-   -4035,  2134, -4035, -4035, -4035,  3694,   868,   868,  4117,  4120,
-     868,   868,   868,   868,  3608,  3335, -4035,  4101,   232,   232,
-    4216,   232, -4035,  4219,  4222,  -105, -4035,  2230, 58671,  2230,
-   58671, -4035,  4078,  4078, -4035,  3622, -4035, -4035, -4035, -4035,
-   -4035,   293, -4035,  1857,   307,  1306,   868,  3882,   372,   173,
-   -4035, -4035,   868,   400,  3623,   372,  2048, -4035, -4035,   227,
-    3624,  2471, -4035,  2143,  3628,  3630, -4035, 58671,  3633, 58671,
-   58671, -4035, -4035, -4035,  3637, -4035, 58671, -4035, -4035, -4035,
-     302, -4035, -4035,   296,   232,   296, -4035, -4035,  3642, -4035,
-   -4035, -4035,  3917,  3677, -4035,  3643, -4035, -4035, -4035, 40863,
-    3913, -4035,  3638,  1276, -4035, 13102,  4134, -4035, -4035, -4035,
-    2156, -4035, -4035, 39591, -4035, -4035, -4035,  2655,   400,  1825,
-   -4035, -4035,  3645, -4035,   868, -4035,  3649, -4035, -4035, 58671,
-    3644, -4035,  1306,  1306,   868,   868,  3011,  3011,  2887, 49767,
-    3760, -4035, -4035,   868, -4035, -4035,   232, -4035,   232,   232,
-   -4035,  2193,  2202,  1461, -4035, -4035,  3651,  6951,  3891, 26809,
-    3964,  2213,  1007,  1007,   372,   307, -4035, -4035, -4035, -4035,
-    2945,  1092, -4035,  4025,  4299, -4035, 41499, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, 58671, 58671,  3659,  2238, 58671,
-    2252,  2269,  3471, -4035,   920,   920, -4035, -4035, -4035,  1878,
-   -4035,  3642, -4035, -4035, -4035, -4035, -4035, -4035, -4035,    25,
-    4249,  3933,  4253,  2230, 13102, -4035, -4035, 58035, -4035, -4035,
-   -4035, 28093, 17068,  2429, -4035,  3662, -4035,  3663, -4035, -4035,
-     -66, -4035, -4035,  1306,  1306, -4035, -4035, -4035, -4035, -4035,
-    2273, -4035, 49767, -4035, -4035, -4035, -4035, -4035,  4272, -4035,
-    4274,  3668,  3669, 13102,  3671,  3678, -4035, -4035, -4035, -4035,
-    4186, 65031,  4132,  4181, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035,    25,  2287,  2308,
-   58671,   307,  2313,   173,  2048,  2331, -4035,  4328, -4035,   194,
-    3958,  3966, -4035,  3686, -4035,  3687, -4035,  3962, -4035,  3963,
-    2230, -4035, -4035, -4035, -4035, -4035, -4035,  2348, -4035, 17729,
-   -4035, -4035, -4035, -4035, -4035, 49767, -4035,  3760, -4035, -4035,
-   -4035, 54855, 54855,  2230, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035,  3908,   307,  2365, -4035,   307, -4035, -4035, -4035,
-   -4035, -4035, -4035,  3746,  4217, -4035,   -73, -4035, -4035,  3877,
-   -4035,  3663, -4035,  3695, -4035,  3314,  3335, -4035, -4035,  3697,
-    2367, -4035, -4035,  3891, -4035, -4035, -4035, -4035,   307, -4035,
-     920,   920, -4035, -4035,   143,  4123,  4032, -4035, 17729,  3701,
-   -4035, -4035, -4035, 65031,  4200, -4035, -4035, -4035,  1306,  4096,
-   -4035,   143, -4035,  4311,  3888, -4035, -4035, -4035,  3885, -4035,
-   -4035, -4035,   232,  4127, -4035, -4035,  3994,  3709, 65031,    84,
-   22943,  3873, -4035, -4035, -4035, -4035, -4035, 49767,  2373, -4035,
-   -4035, 28093, -4035, -4035, -4035, 26165,  3711, -4035,   868, -4035,
-   28093, -4035, -4035, 17068, -4035, -4035
+    6410,  1955,  1828,  1709,   988,   184, 58749, -4295,   122,  1568,
+   -4295,  -184,   765, -4295, -4295, -4295, -4295, -4295,  3882, -4295,
+   58749,  1127,   949, -4295, 26861, -4295, -4295, -4295,   -32, -4295,
+     117,  1568, -4295,  1127,   419, -4295, 58749, -4295,   612,  1572,
+    1127, -4295, -4295, -4295, 51753, -4295,  -184, 58749, -4295,   571,
+   -4295, -4295, 51753,   303,   390,   561,   -13, -4295, -4295, 58749,
+   -4295,  1877, -4295,   473,  1260,  1136, -4295, -4295,  1008, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  3726, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, 27505,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,   780, 58749,   816, 58749,  1303, 58749,
+   49845, 58749, -4295,  1300, -4295, -4295,  1413,   941, -4295, -4295,
+    1568,  1055, -4295, -4295,  1623,  -184, -4295, 49845, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,  1005, -4295, -4295,  1091,  1191, -4295, -4295,
+   -4295,  1472, -4295,  1759,  1566,  1332, 58749,  1098, 13112,  1590,
+    1590,  1590,  1598,  1626,  1590,  1590,  1590, 58749, -4295,  1590,
+    1590,  1590,  1568, -4295, -4295, -4295,  1731, 38397, 58749,  1515,
+     209,   -69, 49845, -4295,  1080, 58749,  1191,    96, -4295,  1662,
+   -4295, -4295, -4295, 65109,  1568, -4295,  1946,  1802,   257, 58749,
+   -4295, -4295, -4295, 65109,   884,    28,  1400, -4295, -4295,  1529,
+   -4295, 39033,   193, -4295, -4295, -4295,   119,  1806, -4295, 29437,
+    5359,  1529,  1532,  1191,   668,  1536,  1191, -4295, -4295, 58749,
+    1191,  1568,  1760, -4295, 13112, -4295,   198,   198,   198, -4295,
+     198, -4295,   198,   473,  1389,  1606, -4295, -4295,  1437, 58749,
+    1871, -4295,  1871, -4295, -4295,  1871,  1023,  1627,  1874,  1882,
+    1944,  1602,  1212,   941,  1231, -4295, -4295, -4295,  1537,   854,
+   -4295,  1621, 42213, -4295, 58749, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,   992, -4295,  1673,   125,  1708,  2044, -4295,
+   49845, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+    1579, 26861,  1586, 58749, -4295,  2095, 13112,  1091, -4295,  1679,
+   -4295, -4295, 26861, -4295, -4295, 26861,   237,    27, 58749, -4295,
+   -4295,  2255, -4295, -4295, -4295, 52389,  1098,  1607,  1611,  1616,
+   18416, -4295,  1647,  1674,  1680, 13112,  1696,  1698,  1702,  1704,
+    1711,  1722,  1724,  1729,  1732,  1735,  1738,  1762,  1765,  1775,
+    1775,  1775,  1780,  1782,  1784,  1801,  1206,  1814, -4295,  1824,
+    1830,  1842, -4295, -4295,  1848,  1851,  1866,  1881, -4295, -4295,
+    1883,  1887,  1889, 13775,  1893,  1899,  1907, -4295, 23629,  1915,
+    1924,  1930,  1938,  1953,  1960,  1962,  1968,  1971, -4295, -4295,
+   13112,  1780, -4295, -4295,  1973, -4295,  1975,  1990,  2000,  2002,
+    2005,  2010,  2013,  2022,  2029,  2034,  2038,  2045,  2055,  2062,
+    2066,  2068,  2070,  1780, -4295,  1245,  2072,  2079,  1307,  2082,
+   -4295,  2092, -4295,   225,  2101,  1775,  1780,  1780,  2105,  2128,
+    2143,  2145,  2157,  2166, 18416, 18416, 18416, 13112, -4295, 58749,
+   -4295, 58749,  2224,  2586, -4295,  2700, 18416,   214, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  1706,  1847, -4295, -4295, -4295,
+   -4295, -4295, -4295,  2171,  1795,  2109, 58749, 58749, 58749,  2238,
+   58749, 58749, 58749, -4295, 49845,  1937, 58749, -4295, -4295,  1590,
+    1908,  4108, 32652,  2103,  2167,  2025,  1775, -4295, -4295,   -62,
+     -12,   678,  2135, -4295, -4295,  2233,   695,  2430, -4295,   710,
+     454, -4295,   126,   712,   748, -4295, -4295, -4295, -4295, -4295,
+   -4295,  2275,  2432,  2179, -4295, -4295,   159, -4295, -4295, 58749,
+   -4295,  2682, 13112, -4295, -4295, -4295,  2631,  2365, -4295, -4295,
+   -4295,   160,  2833,   246, 26861,  1709, 58749,  1024, 66381, 66381,
+   58749, -4295, 61929,  2235, -4295, -4295,  7682, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2240, -4295,
+   -4295,  2243, 13112,  1534, -4295,  1116, -4295, -4295,  2658, -4295,
+   -4295, 46665, 26861,  1737, 65745, -4295, -4295, -4295, 24275, -4295,
+   -4295,  2882, -4295,  2290, -4295, -4295,  1847,  4265, -4295,  2571,
+    2103,  2580, -4295,  2760, -4295,  2589,  2496,    27,  2381, -4295,
+    2930,  2713, -4295,  2799,  1753, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  2348,  1806, -4295, -4295, 53025,
+     873,  2515,  -121,  1156,  1297, 37756,    63, 49845,  1343,   147,
+   30080, 42849,  2344, -4295, -4295, -4295,  -127,  2508, -4295,  2853,
+   -4295,    44, -4295,  2369,  1504,    44, 47301,  2713,  1441, -4295,
+     407, -4295,  2837, -4295, -4295, -4295, -4295,  2506,  2489,  2550,
+   -4295,   411,  2739, -4295,  1191, -4295,   752, -4295,  2526,  2713,
+      44,  1441, -4295,  2780,  2906,   480,  2875, -4295,  -131, -4295,
+   -4295, -4295,   -77,  2982, -4295,  2419, -4295, -4295, -4295, 26861,
+   -4295, -4295, -4295,  2631, -4295,   258, -4295, -4295, -4295, -4295,
+    2423, -4295, -4295,  2710,  2540, -4295, -4295,    72,  2434,    17,
+   -4295,  2932, -4295,  1709, 58749, -4295, -4295, -4295,   993,  1688,
+    1413,  1871, -4295,  1871,  1871,  1871,  1871,  1055, 43485, -4295,
+   -4295, -4295,  2965,  2980,  1775,  2436, -4295, -4295, -4295, -4295,
+   -4295,  3094, -4295, -4295,  2720,  2988,  2988,  2988,  3102, -4295,
+   -4295, -4295, 26861, -4295, -4295, -4295,   125, -4295,  2622,  2490,
+   -4295, 58749,  1708, -4295, 26861, -4295,  2449,  2863,  2457, -4295,
+   -4295,  2718, 13112, -4295, -4295, 13112, 65109,  2958,  2224, -4295,
+   -4295,   489, -4295, -4295, 26861,   290, -4295,  3062,  2675, -4295,
+   -4295, -4295,  3094,  2988, 26861, -4295,  2462, -4295,  2459, -4295,
+   13112, 13112,   351,  3051,  3115,  3115,  3115,  2224,  2501, 13112,
+   13112, 13112, 13112, 13112, 13112, 13112, 13112, 13112, 13112, 13112,
+   13112,   361,  2470, -4295, -4295, -4295,  1312, -4295,  2471, 13112,
+   13112, -4295, 13112, 13112, 28149, -4295,  3984, 13112, 13112,  1021,
+    2986, 13112, 13112, 13112, 13112,  2669, 13112, 13112, 13112, 28149,
+    3130,  2483, -4295,  2478,   364, 13112, 13112,   384, 13112, 13112,
+   13112, 13112, 13112, -4295, -4295, 13112, 13112, 13112, 13112, 18416,
+   13112, 13112, 13112, 13112, 13112, 13112,  2486, 13112,  3115,  3115,
+   13112, 13112,  1605, -4295, -4295, 13112,  2009,  2009, -4295, 13112,
+    9797, 13112, -4295, -4295,  2494, -4295, -4295, -4295, 28149,  3115,
+    3115, 13112, 13112, 13112,  3051,  3051,  3051,   186,  2495,   666,
+   13112, 30723,  2498, -4295, -4295, -4295, -4295, 13112, 13112, 13112,
+   18416, -4295,  1147, -4295, -4295, -4295, -4295, -4295, 14438, 18416,
+   18416,  2502, 18416, 18416, 18416, 18416, 18416,  2880, 18416, 18416,
+   19079, 19742, 18416, 18416, 18416, 18416,  1270,  3051, 49845, 18416,
+   13112, -4295, -4295, 58749, -4295, -4295, -4295,  2507, -4295,  2785,
+    1937, -4295, 47937, -4295,   789,  3003, -4295, 46665, 26861, -4295,
+    2511, -4295,  2884, -4295,  2892,  2893,  2894, -4295, -4295, -4295,
+   -4295,  3133,  2897, -4295,  1191,  2899, -4295, -4295,  2530, -4295,
+   -4295, -4295, 20405, 49845, -4295,  2531, -4295,  2542, -4295, -4295,
+   -4295, -4295, -4295, -4295,  2638, -4295, -4295, -4295, -4295,  2536,
+   -4295, 46665,  2536, -4295, -4295,  2536, -4295, -4295,  2536, 42213,
+      65,  3390, -4295, -4295, 58749, -4295, 59385, -4295,  2964,  1384,
+   -4295, 24275,  1191, -4295,  2972, 15101, -4295, -4295, -4295,  2921,
+     327,  2545, -4295, -4295, -4295, -4295,  3010, 58749, -4295, -4295,
+   -4295, 13112,  2920,  2552, -4295, -4295, -4295,   215, 26861, -4295,
+    2224, -4295,   130,   130,  2817,  1519, 49845, -4295, -4295,   203,
+    2563, -4295,  2651,  2568, -4295,  2654, -4295, -4295, 26861,  2564,
+   -4295, 26861, -4295, -4295, -4295,  2835,  2661, -4295,  1191,    28,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,  2578,  2595,  3048,  2587, 46665, 42213,    77,
+   -4295, 58749, -4295,  1614, -4295, -4295,   917, -4295, -4295,  1690,
+   44121, -4295,   444,  2618,  2657,  3011, -4295, -4295,  2596, -4295,
+   13112, -4295,  2602,  2609, -4295,  -127, -4295, 47937, 58749, -4295,
+   -4295, -4295, -4295, -4295,  3201, 13112, -4295, 46665, -4295,   -20,
+   -4295,   866,    85,  -127, -4295, -4295, -4295, -4295, -4295, 58749,
+   53661,  2616, 10460,  2741,  3025, -4295, -4295, -4295,  2626,  1871,
+   58749, 58749, 58749, 26861, 58749, 26861, -4295,   857,   857, -4295,
+   -4295, -4295, -4295,    44, 58749, 58749,    44, 42213, -4295,  1441,
+      13, 58749,    44, -4295,  3026,  2728, -4295, -4295, -4295,  3097,
+   -4295, -4295,  3088,  2630, -4295,  3114, -4295, -4295,  2759,  1441,
+   -4295, -4295, 26861, -4295, -4295,  1441, -4295,  1441,  1441, 13112,
+      44,    44,    44, -4295,   -45, -4295, -4295, -4295,  2788,   668,
+   -4295, -4295, -4295,   755, -4295, -4295,   198,  2898, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,   113,
+   -4295, -4295, -4295,  3119, -4295, 47937, 42213,  3096,  1871,  1871,
+   -4295, -4295,  3129, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+    1871, -4295, -4295, -4295, -4295, -4295, -4295,  1708, 49845, 58749,
+   58749, 58749, 26861, -4295, -4295, -4295, -4295, -4295,   136, -4295,
+   -4295, -4295,  2130,  3162, -4295, 49845,  2645,   -82,    39,  2645,
+    2648,  1191,   856, -4295,   856, -4295, -4295, -4295,  1125,  1871,
+   -4295, -4295,  2647, -4295,  2907, -4295, -4295, 49845, 54297, 26861,
+   -4295, -4295, -4295,   199,  2655,  2653,  2224,  2224, 62565,  3261,
+    2690,  4529, -4295, -4295, 26861, -4295,   266, -4295, -4295, -4295,
+    2715, -4295, -4295, -4295, -4295,  2628, -4295, -4295,  1104,  2716,
+    2660, -4295,  2835, -4295,  1601, 58749,  3126, 35212, -4295,   293,
+     182, -4295,  3115,  2668, -4295,  2672,  2683,  2684, 13112,   115,
+     271,   795,  1509,  1494,  1369,   326,  1373,   355, -4295,  1567,
+     409,   414,   441,   239, -4295,  2686,  2693, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  2688, -4295, -4295, -4295,   450,
+     486,  1412,  1422,  2698,  2699, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  3128, -4295,   498,  1617, -4295,
+   -4295, -4295, -4295,  2701, -4295, -4295,  1431,   575,   613,   281,
+    2708,  1625,   648,  1644,  1659,  2705, 28149, 58749,  3115,  2707,
+    1443,  1465,  3115,  2711,   803,  1481,  1664,  1742,  1754,  1498,
+    1559,   976,  1769,  2743,  1675,  1030,  1065,  1692,  1111,  1178,
+   -4295,  1725,  2719,  2721,  1203,   275,  3115,  2725,   319,  2704,
+    2709,  1746, 11123, 11786, 12449,  1301,  1205, -4295,  2727, -4295,
+    2478,  2742,  2745,   331,   200,  1758, -4295, 13112, -4295, -4295,
+    2714, -4295,  2771,   174,    85, -4295,  2881, 58749,  2435,   177,
+   -4295, -4295, -4295, -4295, -4295, -4295,  1097, -4295,  2729, -4295,
+    2748,  2265,  2744, 13112,   213,  2744,  3421,  2046,  2046, 18416,
+    3241,  2836, 13775,   725, 13775,   725,  2744,  2744,  2744, -4295,
+   18416,  2749, 18416, 18416, -4295,  3051,  2224,  2753,  -205, 58749,
+   26861,   789,  2754, -4295, -4295, -4295, -4295, -4295,  -127, -4295,
+    2756,   143, 26861, 49845,  2757, -4295,  3272, -4295, -4295, -4295,
+   -4295,  1191, -4295, -4295,  4468, -4295, 26861,  2854,  2859,  2860,
+   -4295, 33295, -4295, -4295, -4295, -4295, 33295,    24, -4295, 58749,
+   -4295,  2850, -4295, -4295, -4295,  3196, -4295,  3203,  -208, -4295,
+   24919, 24919, -4295, 24919, -4295, -4295, -4295, -4295, -4295,   454,
+   -4295, -4295, -4295, -4295,   348,   864,  2301,  2618, -4295, -4295,
+   -4295, -4295, -4295, -4295, 34576,  2224, -4295, 26861, -4295,  3192,
+     705, 26861, -4295, -4295,  3187,  2224, -4295, -4295, -4295, -4295,
+   -4295, -4295,  2779, -4295,  2791, -4295, -4295, -4295, -4295, -4295,
+    3009,  2896, -4295,  3441, -4295, 13112,  1191, -4295, 46665, 46665,
+   26861, 26861, 26861,   925, 13112, -4295,  1850,  2795, -4295, -4295,
+    3210, -4295,  3442, -4295,  4265, 20405, 47937,  3243,  3256, -4295,
+    2800, 24919, 24919, 24919, -4295, -4295, -4295, -4295,  2895,  2895,
+   -4295, 31366, -4295, 13112, -4295, -4295, -4295,  3288, -4295,  2992,
+     -53, -4295, -4295, -4295, -4295, -4295, 58749, -4295,  3372, -4295,
+   -4295,  2808, -4295, -4295, 26861, -4295, -4295,  3255, -4295,  2975,
+   -4295,  2224, -4295,  2811, 53025,  3277, 10460,  3281, -4295, 48573,
+   -4295,  2224,  -127,  2821,  2822, -4295, -4295,  3207,   -40, -4295,
+    2823,  2824, -4295,  2816,  2828,  2829, 53025, 13112, -4295,   866,
+   -4295, -4295, -4295, -4295, -4295, 18416,  1824, -4295,  2224, -4295,
+   -4295,  1191,  3296,  1191, 13112,  2838, 58749, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,    44, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,  3072,  2713,  2739,  3025, -4295,    44,  1441, 26861,    44,
+      44,  2224, -4295, -4295, -4295, -4295, -4295, -4295,  2839, -4295,
+    2902, -4295, -4295,  3013, 65109,  2845, -4295,  3310,  2713, -4295,
+   -4295, -4295,   234,  -195,  2849,  1871, -4295, 58749, 58749,  1871,
+    1871, 58749, -4295, -4295,   904,  3135,  3140, -4295, -4295,  -127,
+    -127,  3165, -4295,  1191,  2993,  2994,  2996,  3001,  3005,  3047,
+   -4295, -4295,  1191,  1191, -4295, -4295,  -127, -4295,  1064, -4295,
+   -4295, -4295, -4295,  1221, -4295,  -127,  -127, -4295,   244, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,  1112, -4295,  5099, -4295,
+   -4295, 26861,  3156, 26861,  3338, -4295,  3406, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2891, -4295, -4295,
+   13112,  2971, -4295, -4295,  2690, -4295,  2904,  2910,  2915,  2916,
+    2923,  2924,  2925,  2927,  2928,  2935,  2940,  2942,  2943,  2949,
+    2951,  2952,  2953,  2955,  2959,  2963,  2966,  2968,  2973,  2879,
+   -4295, -4295, -4295,  2939, -4295, -4295, -4295,  -127,  -127,  -127,
+    -127, -4295,  2591, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,  3266,  2717, 58749,  2970, -4295, 35212, -4295, -4295,   755,
+   -4295,  2944, 15764, -4295,  2961, -4295, 13112, -4295, -4295, -4295,
+    1788, 13112, 13112,  3415,  3074, -4295, 49209, -4295, -4295, -4295,
+   13112, -4295, 13112, -4295, 13112, 13112, 13112, 13112, 49209,  3074,
+   13112, -4295,  2967, -4295,  3362,  3369, -4295, -4295, -4295, -4295,
+   13112, 13112, -4295, 13112, 13112, -4295, 13112, 13112, 13112, 13112,
+   -4295, 13112, -4295, -4295, 18416, -4295,  2974,  2987, -4295, -4295,
+   -4295,  2989, -4295, 13112, -4295, -4295, -4295, -4295, -4295, -4295,
+   13112, -4295, 13112, -4295, 13112, 13112, -4295, 13112, 13112, -4295,
+   -4295, -4295, 16427, 13112, 13112,  2990, -4295, -4295, 13112, 13112,
+   13112, -4295, 13112,   416, 13112,  1470, 13112,  2219, 13112, -4295,
+   13112, -4295, -4295, -4295, -4295, 13112,  1486,  3009,  3210,  2991,
+   -4295,  1816,  2799, -4295,  1279,  2714,  2998,  3139,  1614, -4295,
+   -4295, 49845, 13112, -4295, -4295, -4295, -4295, -4295, -4295, 18416,
+     336,  2999, 18416, -4295,  3421,  2669,  2669,  2285, 13112,   213,
+    3421, 13112,  3002,  2969, -4295, 13112, 58749, -4295, -4295, -4295,
+   47937, -4295, 49845, 46665, -4295, -4295, -4295,   143, -4295,  2511,
+    2981, -4295, -4295, -4295,  2779,   245,  2985,  3004, -4295, -4295,
+   -4295, -4295, -4295, -4295,  1826, -4295, 42213,   162,  3627, 42213,
+   -4295,  2997, -4295,  3007,  3077,  3078,  3090, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2713, 65109,
+    1850, -4295, -4295,  3008, -4295, -4295,  2718,  2895,  3040,  3395,
+    3591, -4295, -4295, -4295, -4295, 65109, 65109, 13112, 58749, 18416,
+   -4295,  3631,  3027,  3028,  3041,  3031,  2224, -4295,  3117, -4295,
+   -4295, -4295,    62, -4295, -4295, -4295, -4295, -4295,   827,  1860,
+   -4295, -4295,  3032,  3032, 22339, -4295, -4295, -4295, 58749, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  3049, -4295,
+   -4295,  3313, 46665, 42213,  3500,  3501,  3503,   724, -4295, -4295,
+   -4295, 49845,  3044, -4295, -4295, -4295,  2224,  3045,   354, 44757,
+    3530, 44757, 44757, -4295,   798,  3452,  3453, -4295,  3327,  2207,
+    3327, -4295, -4295,   798,   755,  2835, -4295, 13112,  3670,  3502,
+    3384, -4295, 50481, -4295, 35848, -4295,  7155, -4295, 46665, -4295,
+   -4295, -4295, -4295, -4295,  3167,  3169,  1333, -4295, -4295,  3477,
+    3304, -4295, -4295, -4295,  -127,  2224, -4295,  2616,  3081, 32009,
+   -4295,  1034, -4295, -4295,  2224,   315, -4295, -4295, -4295,  3373,
+   -4295, -4295,  3296, -4295,  2618,  1441, -4295, -4295,   -45,  2520,
+   -4295, 28149, 63201,  3210,  3408, -4295, -4295, -4295,   247,  3738,
+   -4295, 58749,  3087,   515, -4295, -4295, 58749,  3551,   218,   218,
+    3374, 26861, 26861,  5132, 48573, 45393, -4295, -4295, -4295, -4295,
+    3632, -4295,  3634,  1479, -4295, -4295,  2917,    39, -4295,  1191,
+    1191,  1191,  1191,  3210,  1191,  1191,  1843, -4295,  2917,  2917,
+     856, -4295,   235, -4295, -4295, -4295, -4295,  2692,  -127,  3674,
+    3358,  -127,  -127,  3674,  -127,  3359,  3360,  -127,  -127,  3186,
+    3621,  -127,  3504,  3211,  2053,  3508,  -127,  3375, -4295,  3216,
+    3635,  -127,  -127,  -127,  -127,  -127,  3674,  3378,  3725,  -127,
+    -127, -4295,  -127,  3379,  3381,   202,  3380,  3386,  -127,  -127,
+    -127,  -127,   217, 58749,  -127,  -127,  3387,  -127, -4295, -4295,
+    6367, -4295, -4295, -4295, -4295, -4295, -4295,   684, 25569, -4295,
+   -4295, -4295, -4295,  -127, -4295,   187, -4295,  3332, -4295,  1194,
+   51117, 63837,  3131,  3134, 54933,  2224, 65109, 13112, -4295,  3136,
+    3138,  3143,  3210,  1191,  1191,  1034,  1191,  3210,  1191,  1191,
+    1191,  1191,  1191,  1191,  1191,  3210,  3210,  1191,   930,  1352,
+    1191,  3210,  4529, -4295,  1191,  3009,  2917,  2917,  1104, -4295,
+    3588,  -127, -4295,  2584, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  3144,   755,  2618,  1651,  2618,  3151,
+   -4295, 13775,  1767, -4295,  2224, 13112,  2224,  1868, -4295,  3147,
+    3147,  3147, -4295,  3148, -4295, -4295,  3147,  3560,  3147,  3561,
+    3154,  3155,  1884,  1003, -4295,  1894,  2264,  1771,  3159,  3160,
+    1706, -4295, 13112, 13112,  1819,   365,  1831,   630,  1220,  1222,
+     372, -4295,  1835,  3212, -4295, -4295,  1858,  1862,  1890,  1901,
+    1234,  1903,  1896, 13775,  1909,  1296,   382, -4295,  1911,  1249,
+    1261,  1913, 13112,  1925, 13112,  1964, 13112,  1980,  1982,  2003,
+    3164,  3164,   180, -4295,  3163, -4295, -4295, -4295,  3166, -4295,
+   -4295, -4295, -4295,  2618,  2348,  1279, -4295,  3171,  1175, -4295,
+   -4295,  3168,  2224,  3176, -4295, -4295, 13112, -4295,   214, -4295,
+   -4295, 18416,   398,  3177, -4295,  2224, -4295, -4295,  3179,  1706,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  3189, -4295,
+    3394, -4295, -4295,  3695, 33295, -4295, 58749,   642,   661, -4295,
+   -4295, 49845,  3459, -4295,  3193, 36484, 42213, 42213, 42213,  3190,
+   -4295, 60021,  3475, 26861, -4295,  3616, -4295, -4295, -4295, -4295,
+   58749, 66381, 66381, 66381, 66381,  3194,  3195, -4295, -4295, -4295,
+    3421,  3576,  3456, -4295, -4295,  3009, 58749, 46665,  3510, -4295,
+   -4295,  3407,  1806, 28149, -4295,  3209, -4295,  3209,  1131,  3214,
+    1920, -4295, -4295, -4295,  3204,  2381,  1935, -4295, 20405,  3671,
+    2756, -4295, 42213, 42213, 42213, -4295,  2404, -4295, 31366, 13112,
+   -4295, -4295, -4295, -4295, -4295, 44757, -4295, -4295,  -179,  1175,
+   -4295,  1991, -4295, -4295, -4295,  3614,  3327,  3327,   798,  3618,
+    2731, -4295,  3496, -4295,  1806,  2224, 13112, -4295,  3490, -4295,
+   55569, -4295, -4295, -4295, -4295,  1048, -4295, -4295,  3220,  3221,
+     219,  3450, -4295, -4295, -4295, -4295, 10460, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2713, -4295,
+   -4295, -4295, -4295, -4295,    44, -4295,  3238, -4295,  3223,  3225,
+   -4295,  -127,  3257, -4295, -4295, 42213,  3422, -4295,   878,  3242,
+   58749, -4295,  3782, -4295, -4295, -4295, -4295, -4295, 26861, -4295,
+   -4295, 26861, 21051, -4295, -4295,  3505, -4295,  4217, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,  1221, -4295, -4295, -4295,  1112, -4295, -4295, 28793,  1871,
+   -4295,   264, -4295,  1871,   199,   199,  3667, 56205, 28793,  1127,
+    1034,  3210,  1598,  3210, 56841,  1127,  1191,  1191,  2404,  -127,
+    3210, -4295, -4295,  3639,  1590,  3640,  1598,  1598, -4295, 49845,
+   58749, -4295,  -127,  1483,  3210, 57477,  1034,  1034,  1598,  1127,
+   28149,  2461,  2539, -4295,  1191,  1127, -4295, -4295, -4295, -4295,
+   26861,  1127,  1127,  2528,  3170,  3184,  3237, -4295, -4295, -4295,
+    3210,  2539, 56841, -4295, -4295,  8083, -4295, -4295, -4295, 21695,
+   58749,   362,   212, -4295,  3250, 40305,  3251,  1709,  1093,  3337,
+    1580, -4295,   151, -4295, -4295, -4295,  3703,  3262,  1803, -4295,
+    3263, -4295, 56841, -4295,  3267, -4295,  3265, -4295, 60657,  2224,
+    3210,  3210,  3210, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, 58749,  2917,  2717, -4295, 35212,  2618,  3490, -4295, -4295,
+    2669, -4295,  2224, 13112,  1259, -4295, -4295, -4295, -4295,  1407,
+   -4295, -4295, -4295,  3275, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,  3607, -4295, -4295,  3074, -4295, -4295, -4295,  3278,  2669,
+    2669, -4295, -4295, 13112, -4295,  3887,  3451, 13112, 13112, -4295,
+   13112, -4295,   260,  3280,  3311, -4295, -4295, -4295, -4295, 13112,
+   -4295, -4295,  2669, -4295, 13112, -4295, -4295, 13112, -4295, 13112,
+   13112, -4295,  2030, -4295,  2036, -4295,  2051, -4295, -4295, -4295,
+    3009,  3283,  3676, -4295, -4295, -4295,  3009,  3478, -4295, -4295,
+    3009,  3210,  3255,  2596, -4295, -4295, -4295,  2799,   666, 58749,
+   -4295, -4295,  1942, -4295, -4295, 13112, -4295, 50481, -4295, -4295,
+    1034,  3763,  3662, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  3740,
+   -4295,  3389, -4295,   188, -4295, -4295, -4295,  -119,  -119,  -119,
+   17090,  2480,  3802, -4295, -4295, -4295,  3616,  3687, -4295,    92,
+    3298, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, 58749,
+    3300,  1548, -4295,  1984, -4295, -4295,  3302, -4295, -4295, -4295,
+    2348,  3307, -4295,  -127, 17090,  3032,  3479, -4295, -4295,  1131,
+   28149, 35848, -4295, -4295, 58749, -4295, 42213,  2800,  2800,  2800,
+   45393, -4295, -4295,   354, -4295,  1614,  2781, -4295,   755, -4295,
+     798,  3702,  3711, -4295,   798, -4295, -4295, -4295,  2348,  -204,
+     354, 13112,  2713, -4295, -4295, 37120, -4295, -4295, -4295, -4295,
+   -4295, -4295, 32009, 53025, -4295,  2713, -4295,  1191,  2409, 28149,
+    2618, 17090, -4295, -4295, 58749, -4295, -4295, -4295, -4295,  3463,
+   -4295,   436,  3597,  3342, -4295,  3319,  3324, -4295, 26861,  3328,
+    3331,  3323, -4295, -4295, -4295,   287, -4295,  4030, -4295, -4295,
+   -4295, -4295, -4295,  1127,  3333,  3723,  3732,   199, -4295,  1871,
+   28793, -4295,  1871,  1871,  1709, -4295, -4295, -4295,   161, 56841,
+   -4295, -4295, 28793, -4295, -4295, -4295,  3343, -4295, -4295,  3009,
+   -4295, -4295, 45393,  1191, -4295,  1598, 58749, -4295, 28793, 28793,
+   -4295,  3367,  1191, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, 28793, 56841,  3344, -4295,   354, -4295, -4295, -4295,
+   -4295, -4295,  1946, -4295, 56841, -4295, -4295, 56841, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  3347,  2241,  1945, -4295,  3349,
+   -4295, 58749, -4295, -4295, 26861, -4295, -4295, -4295,  6951, 58749,
+   -4295, -4295, -4295, -4295, 58749,  3991, -4295,  3598, 13112, 13112,
+    3637, 58749,  3638, -4295,  3929, -4295, -4295,  3781,  3826, 58749,
+    6951,  3831,  3832, -4295,  3376, -4295, 54933,  3464,  1996, -4295,
+   -4295,  2018, -4295, -4295,  2052, -4295, -4295, -4295, -4295, -4295,
+    2944, -4295,  3755,  1365,  2224,  3382,  3383,  3391,  3392,   197,
+    2073,  3664, -4295, -4295, -4295,  3147, -4295,  3148, -4295, -4295,
+   -4295,  3976, -4295, -4295,  3147,  3788, -4295, -4295, -4295,  3397,
+   -4295,  3399,  3401,  2083, -4295,   198,  3402,  2099,  1263,  2085,
+    3706,  3778, -4295,  3622, -4295,  2146,  1426,  2148,  2150,  2178,
+    2189, -4295, -4295, -4295, -4295, -4295,  3403, -4295, -4295,   223,
+   -4295,  3404,  3502, -4295, -4295, -4295, -4295,  2116, -4295, -4295,
+    2118, -4295, -4295,  4037,  3680, -4295, -4295, -4295,  1191,   960,
+    3435,  3435,  3435,  1824,  2224,  2120, -4295, 65109, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  3816, 58749, -4295, -4295,  3409,
+    3441, 58749, -4295,  3456, -4295,  2596, 28149, 17090,  3410,  3418,
+   -4295,    17, -4295, -4295,  3413, -4295, -4295,  2800, -4295,  3994,
+   -4295, -4295, -4295,  2808,  3439,  3472,   798,   798,  3556,  3473,
+   13112,  3424, -4295,    70,  2596, -4295, -4295, 13112, -4295, -4295,
+    2224,  3665, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  3490,
+   -4295,  3425,  3426, -4295, -4295,  1191,  1109, -4295, -4295,   110,
+    3609, 49845,  3429, 58749, 58749,  3432, -4295, -4295, 21695, -4295,
+    4074, -4295, -4295, 13112,  1871, -4295, -4295, 28793,  3487,  -178,
+   28793, 28793,  3918,  3967,  3968, -4295, 28793,  2628, 58749, -4295,
+    3201, -4295, 28793,  3343, -4295,   495,  3542, -4295,   362, -4295,
+   28149, -4295, -4295, -4295, 58749, -4295, 26861, -4295, -4295,  3443,
+   -4295,  3147,  3147,  3147, -4295, -4295,  3147, -4295,  3148,  3690,
+    3447,  3148,  3148, -4295, -4295, -4295, -4295, -4295,   197,   670,
+   -4295, -4295,   197, -4295, -4295, -4295,   175,  1524,  3148, -4295,
+   -4295, -4295, -4295, -4295,  3458, -4295,  3147,  3147,  3147, -4295,
+   -4295,   197,  3147, -4295,  3147, -4295,  3148,   330,   178,  3147,
+    3147,  3147,  3275,  3445, -4295,  2138, -4295, -4295,  2224,  2669,
+    4031, -4295, -4295,  3615,  1191,  3969, 58749,   170, -4295, -4295,
+    3201,  3990,  1713, -4295, -4295, -4295, 65109, -4295,  3210, -4295,
+    3210, -4295,  3210, 46029, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,   191, -4295, -4295, 49209,  4087, -4295,  3757,  3465, -4295,
+   -4295, -4295, -4295, -4295,   197, -4295, -4295, -4295, -4295, 13112,
+   -4295, -4295, -4295, 13112, -4295, -4295,  3790,  3951, -4295, -4295,
+   -4295, -4295, -4295, -4295,  3476, -4295,  3210,  3490, -4295, -4295,
+    1034,  3989, -4295, -4295, -4295,  3570,  3572, -4295, -4295,  3574,
+   -4295, -4295,   163,  3012, -4295, -4295, -4295, -4295, 17090, 64473,
+   -4295,  3876,  3582, -4295, -4295, -4295,  3483,  3533, -4295, -4295,
+    2799, -4295, -4295, -4295, -4295,  1276,  3869,   666, -4295,  3541,
+   -4295, -4295, -4295,  3543,  2224, 58749, -4295,  1038,  2799,   354,
+   58749,  3900,  3755, -4295, 58749,  6951, -4295, -4295, -4295, -4295,
+    3493,  3494, -4295, 58749, -4295, -4295, -4295,  3786,  1093,  3775,
+   58749,  2162,   354,  3507,  2197, -4295,    17,  6367, -4295, -4295,
+     982,   -85,  2205, 28793,  3487,  1188,   218, -4295,   218, -4295,
+   -4295, -4295, -4295,  3599,   362, -4295, -4295, -4295, -4295, -4295,
+   26861, -4295,  1127, -4295, -4295,  3343,   827,  3509, 58749,  3855,
+   -4295, -4295, -4295, -4295,  -100, -4295,   198,  -100,  -100, -4295,
+    2515, -4295,  3554,   197, -4295, -4295,  3555, -4295, -4295, -4295,
+    -100,   198,   197, -4295, -4295, -4295, -4295,  -100,  3354,  3648,
+   -4295,   197, -4295, -4295,  4087, -4295,   197,  4087,  -100,  -100,
+   58749, -4295, 58749, -4295,  1041, -4295, -4295, -4295, -4295, -4295,
+    2200, -4295, -4295, -4295, -4295, 39669, -4295, 13112, -4295, -4295,
+   -4295, -4295, -4295,   724, 61293, -4295, -4295, -4295,  4001,  3705,
+    3716, -4295, -4295, -4295,  3525, -4295,  3528,   354,  2212, -4295,
+   -4295, -4295,  3526,  2713, -4295,  4127, -4295, -4295, -4295, -4295,
+     183,  3809,  3210,  3210,  3210,  1352,   -52,  3012, -4295, -4295,
+    3592, 26861, 18416,  3647, 58749,  1663,  3052, -4295,  4148,  4150,
+    4040,  4152,  1276, -4295,  -118, -4295, -4295, 13112,  3544, 13112,
+    3545,  2202, -4295, -4295,   199,   199, -4295,  1038, -4295, -4295,
+   -4295,  1690, -4295, -4295,  3739, -4295, -4295, -4295,  1747, -4295,
+   -4295,  3637,  3547,  2206,   259, 58749, -4295,  3836,  1594, -4295,
+    3505,  3479, -4295,  3009,  3456, -4295, -4295, -4295, -4295,   218,
+   -4295,  3550, -4295,  3558,  3562,  2854,  2859,  2860,  1352,  1352,
+   -4295, -4295, -4295, -4295, -4295,  3959, -4295, -4295,  2210, -4295,
+     185,  3838, -4295, -4295, -4295, -4295,  -100, -4295,  2232, -4295,
+   -4295, -4295, -4295, -4295, -4295,  2246, -4295, -4295, -4295, 49845,
+    1191,  3462,  4205, -4295,  3619, -4295,  4091,  3960, -4295,  4207,
+   -4295,  3188, -4295,  3961,  3858,  -127,  3583, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295,   473,  3600,  3698,
+   -4295, 65109, -4295, 58749, 58113, -4295, -4295, 33938, -4295, -4295,
+   -4295,  4032, -4295,  2224, -4295, -4295,  4056,  2348, -4295, -4295,
+   13112, -4295, -4295, -4295,  3665, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,   995, -4295, -4295, 28149,  2835, -4295,  3009,
+   -4295,  2252, -4295, -4295, -4295,  3668,  -127,  -127,  4094,  4095,
+    -127,  -127,  -127,  -127,  3581,  3052, -4295,  4076,   198,   198,
+    4193,   198, -4295,  4194,  4196,  -118, -4295,  2224, 58749,  2224,
+   58749, -4295,  4052,  4052, -4295,  3595, -4295, -4295, -4295, -4295,
+   -4295,  1580, -4295,  1221,  1027,  1191,  -127,  3857,   297,   259,
+   -4295, -4295,  -127,   354,  3601,   297,  1594, -4295, -4295,   287,
+    3603,  2381, -4295,  2266,  3606,  3608, -4295, 58749,  3610, 58749,
+   58749, -4295, -4295, -4295,  3611, -4295, 58749, -4295, -4295, -4295,
+     288, -4295, -4295,   197,   198,   197, -4295, -4295,  3613, -4295,
+   -4295, -4295,  3891,  3644, -4295,  3617, -4295, -4295, -4295, 40941,
+    3888, -4295,  3623,   375, -4295, 13112,  4097, -4295, -4295, -4295,
+    2268, -4295, -4295, 39669, -4295, -4295, -4295,  2596,   354,  1690,
+   -4295, -4295,  3605, -4295,  -127, -4295,  3624, -4295, -4295, 58749,
+    3628, -4295,  1191,  1191,  -127,  -127,  3246,  3246,  3009, 49845,
+    3720, -4295, -4295,  -127, -4295, -4295,   198, -4295,   198,   198,
+   -4295,  2270,  2302,  1518, -4295, -4295,  3629,  6951,  4047, 26861,
+    3929,  2308,   218,   218,   297,  1027, -4295, -4295, -4295, -4295,
+    3210,  1723, -4295,  3986,  4263, -4295, 41577, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, 58749, 58749,  3643,  2311, 58749,
+    2313,  2322,  3456, -4295,   934,   934, -4295, -4295, -4295,  2087,
+   -4295,  3613, -4295, -4295, -4295, -4295, -4295, -4295, -4295,    17,
+    4215,  3907,  4228,  2224, 13112, -4295, -4295, 58113, -4295, -4295,
+   -4295, 28149, 17090,  2404, -4295,  3647, -4295,  3645, -4295, -4295,
+     -41, -4295, -4295,  1191,  1191, -4295, -4295, -4295, -4295, -4295,
+    2325, -4295, 49845, -4295, -4295, -4295, -4295, -4295,  4247, -4295,
+    4249,  3646,  3650, 13112,  3651,  3642, -4295, -4295, -4295, -4295,
+    4166, 65109,  4112,  4161, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295,    17,  2329,  2333,
+   58749,  1027,  2338,   259,  1594,  2356, -4295,  4310, -4295,   874,
+    3939,  3940, -4295,  3659, -4295,  3666, -4295,  3941, -4295,  3943,
+    2224, -4295, -4295, -4295, -4295, -4295, -4295,  2363, -4295, 17753,
+   -4295, -4295, -4295, -4295, -4295, 49845, -4295,  3720, -4295, -4295,
+   -4295, 54933, 54933,  2224, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295,  3890,  1027,  2370, -4295,  1027, -4295, -4295, -4295,
+   -4295, -4295, -4295,  3728,  4192, -4295,   -73, -4295, -4295,  3861,
+   -4295,  3645, -4295,  3682, -4295,  3421,  3052, -4295, -4295,  3677,
+    2380, -4295, -4295,  4047, -4295, -4295, -4295, -4295,  1027, -4295,
+     934,   934, -4295, -4295,   169,  4111,  3994, -4295, 17753,  3685,
+   -4295, -4295, -4295, 65109,  4189, -4295, -4295, -4295,  1191,  4084,
+   -4295,   169, -4295,  4304,  3869, -4295, -4295, -4295,  3878, -4295,
+   -4295, -4295,   198,  4119, -4295, -4295,  3987,  3707, 65109,    79,
+   22983,  3863, -4295, -4295, -4295, -4295, -4295, 49845,  2387, -4295,
+   -4295, 28149, -4295, -4295, -4295, 26215,  3701, -4295,  -127, -4295,
+   28149, -4295, -4295, 17090, -4295, -4295
 };
 
   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -4558,110 +4563,110 @@ static const yytype_uint16 yydefact[] =
   /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int16 yypgoto[] =
 {
-   -4035, -4035, -4035, -4035,  1718,  3435, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  1864, -4035, -4035, -4035, -4035, -4035,
-    1515, -4035,   334, -4035,   340, -4035,   339, -2541,  -477,  3325,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-    -133,  1174,  3275, -4035,   228, -4035,  -124, -4035, -4035, -4035,
-   -3505,  -242,  -409, -4035,     0,    20,  3259,  -402, -3589, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -2867, -4035,
-   -4035, -4035,    57, -4035, -4035,  -578, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  -187,   367,  2072, -4035, -4035, -4035,
-    4348, -4035,  3787, -4035, -1924,  2337, -4035, -4035, -4035, -4035,
-   -4035,  2426, -1834, -4035, -4035, -4035,  1389, -4035, -4035, -4035,
-    -922,    29, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,   570, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2116, -4035,
-   -4035,  3714, -4035, -4035, -4035,  1371, -4035, -4035, -4035, -4035,
-   -4035, -4035, -1306, -4035,  1849,  1853, -4035,  1847, -4035,  -144,
-     528, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  3241, -4035,
-   -4035, -4035, -2326, -4035, -4035, -2600,  2724, -4035, -1947, -4035,
-   -4035, -2083, -4035, -4035, -1927,  -704, -4035, -4035,  1457,  -343,
-   -4035, -1562, -2138, -2136, -4035, -4035, -4035, -2194, -2176,  -769,
-    2474, -1266, -2521, -4035, -4035, -4035, -4035,  -113, -4035, -4035,
-      69,  1605,  2157, -4035, -2718, -4035, -4035,   757, -4035, -4035,
-    1380,   582,  1377, -4035,   926,  2984, -1330, -4035, -4035, -4035,
-   -4035, -4035, -4035,  -163,   146,  -257, -4035, -4034,   594, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -2858, -4035, -4035,
-   -4035,  -399, -4035, -4035,  -337, -4035, -4035,  -375, -4035,   -33,
-   -2542, -4035, -4035, -4035, -4035,  2243, -1536, -4035,  -586, -4035,
-     286,  1646, -2607, -2130, -4035, -1039, -1024, -3159, -4035, -4035,
-   -4035, -4035,  1169, -4035,   541,  1644, -2608, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035,  1172, -4035, -4035, -3371, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,  -400, -4035,  -210,   758,
-   -4035, -3174,  1084,   489, -4035, -4035, -4035, -4035, -1827, -3177,
-   -1391, -4035,    83, -2760, -2736,   461, -4035, -4035,    60, -3837,
-   -4035,  -602, -2297, -2575,  -218, -4035, -4035,    77, -2833,  1753,
-   -4035,   429, -1053, -2841,  1521, -4035, -4035,  1042, -4035, -2211,
-    1044, -4035, -4035, -4035,  1055, -4035,  -313, -4035, -4035, -4035,
-   -4035, -3014, -4035, -1659, -2948, -4035, -4035,  4406,  4407, -2164,
-    -260,  -259, -4035, -4035, -4035,   322, -4035, -4035, -2141,  -138,
-     -28,   -20, -2639, -3698,   155, -3352, -4035,   280, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,  1687, -1286, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -3322, -3068, -4035, -4035,  1220,
-   -2993, -2221, -2217, -2569,  3428, -4035, -4035, -4035, -4035,  3361,
-   -2410, -2813, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  2889,
-    1206, -4035, -4035,  1812, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035,   313,  1925, -4035, -4035, -4035, -4035, -4035,
-    2245, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  -173,
-   -4035, -4035, -4035, -4035, -4035,   579,  2789, -4035, -4035, -4035,
-   -4035,    -9, -4035, -4035, -4035, -4035,  2469, -4035, -4035, -4035,
-   -4035,  2811, -4035, -4035, -4035, -4035, -4035, -4035,  1490, -4035,
-    1966, -4035, -1634, -4035, -4035,  1029,  -147,  1910,  -628, -4035,
-    2063, -4035,   111, -4035,  3442, -4035, -4035, -3273,  3537, -4035,
-   -4035, -2633, -4035,  3533, -1498, -2875,  2431,   294,  -141, -2063,
-    1079,  -128,  -347,  1344,  5109, -4035, -1225, -1219, -4035, -4035,
-      -2, -4035, -4035, -4035, -4035, -4035, -4035,  2170,  2179,  -638,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035,  1550, -4035, -4035, -4035, -4035, -1318, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  -993, -4035, -2235, -4035, -4035, -4035,
-    -512, -4035,  3309, -4035, -4035, -4035, -2463, -1515,  1912,  1006,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035,  1914, -4035, -1719,
-   -4035, -2935, -4035, -4035, -4035, -4035,  1572, -4035, -4035, -4035,
-   -4035, -4035, -4035, -1844, -4035, -2072,    52, -4035,   230, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,  -233,   825,  -230, -3119,
-   -1214,  1764, -4035, -4035, -1375,  3356, -1949, -4035,   747, -4035,
-    2080,  1128, -4035, -4035, -4035, -4035,   623, -2971,  2935, -4035,
-   -4035, -3381, -1015, -4035,  2936, -4035, -1467,  1481,   444, -4035,
-   -1527, -1197, -2258, -3208, -2657, -4035,  1307,   135, -4035, -4035,
-   -4035,  -204, -4035, -4035, -4035,  1504, -4035,   454,   455, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,  -580,
-    -955, -4035, -4035,  2254, -1899,  -489,  4514,     1, -4035, -4035,
-       2, -4035, -4035, -4035, -4035,  3180,  3129,  2052, -4035, -4035,
-   -2536, -4035, -4035,  2011, -4035,   750,  -999,  1218,  1082, -4035,
-   -4035,  1086, -3479, -4035, -4035,     4, -4035, -4035, -4035,  1034,
-   -4035,   -83,  3989,     5, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035,  2872, -1151,  3900, -4035, -4035, -4035, -4035, -4035,
-   -4035,  2435, -4035, -4035, -4035, -4035, -4035, -4035,  3054,  4011,
-    -607, -1439, -4035,  -849,  2436,  1927,  -846, -4035, -4035, -4035,
-    3508,  4014, -4035, -4035,  4517, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  2664,   674, -4035, -4035,   547, -4035,
-   -4035, -4035, -4035,  3152, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035,  1139,  -205, -4035,
-     327,  -222, -4035,   152, -4035, -4035, -4035, -4035, -4035,  -252,
-   -4035, -4035,  -254, -4035, -1105,  3835, -1471,   255, -1362, -2770,
-   -4035,  1121,  3132, -2970,  -705, -1228, -1256, -2899,   -15, -4035,
-   -4035,  3758,    30,  -473, -1814,    -6,  -853,  -107,  -627,  -634,
-    -844, -4035,  -515, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035,  1978, -4035, -4035, -4035,  1085, -4035,
-    4052, -4035,  2766, -1493,  4053,  -584,  2524,  1996,  1999, -4035,
-   -4035, -4035, -4035, -1962, -4035, -4035,   190, -4035,  2644, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035, -4035, -4035, -4035, -4035,  3026,  -483,  -481,  3170,
-    4071,  3712, -4035,  3262, -4035, -4035, -4035, -4035, -4035,   384,
-   -4035,   927,  2065, -1551, -2411, -4035, -4035,  2150,   823, -4035,
-    1664,  -487,  -789, -4035, -4035,   378, -4035, -4035, -4035,  1385,
-    1540,  4081,  3707, -4035, -4035, -4035, -4035, -4035, -3001,  -982,
-   -4035, -3700, -2595, -4035, -4035, -4035, -2336, -3281, -4035, -4035,
-   -1104, -4035, -4035, -4035, -4035, -2183, -4035, -4035, -4035,    -1,
-    4038,  4042,  4045, -4035,  -866, -4035, -4035, -4035, -4035, -4035,
-   -4035, -4035,  3584, -4035, -4035, -4035, -4035, -4035,  3048,  3587,
-   -4035, -4035, -4035, -4035, -4035,  3590, -4035, -4035, -4035, -4035,
-   -4035,  1660, -4035, -4035, -4035, -4035, -4035, -4035, -4035, -4035,
-   -4035
+   -4295, -4295, -4295, -4295,  1714,  3428, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  1856, -4295, -4295, -4295, -4295, -4295,
+    1505, -4295,   329, -4295,   334, -4295,   333, -2539,  -477,  3320,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+    -138,  1166,  3270, -4295,   222, -4295,  -130, -4295, -4295, -4295,
+   -3497,  -246,  -415, -4295,     0,    20,  3253,  -409, -4294, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -2137, -4295,
+   -4295, -4295,    50, -4295, -4295,  -578, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  -193,   359,  1320, -4295, -4295, -4295,
+    4340, -4295,  3783, -4295, -1937,  2331, -4295, -4295, -4295, -4295,
+   -4295,  2420, -1834, -4295, -4295, -4295,  1385, -4295, -4295, -4295,
+    -922,    29, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,   560, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2106, -4295,
+   -4295,  3704, -4295, -4295, -4295,  1361, -4295, -4295, -4295, -4295,
+   -4295, -4295, -1308, -4295,  1838,  1837, -4295,  1839, -4295,     9,
+    -577, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  3224, -4295,
+   -4295, -4295, -2255, -4295, -4295, -2647,  2722, -4295, -2015, -4295,
+   -4295, -2087, -4295, -4295, -2009,  1043, -4295, -4295,  1423,   337,
+   -4295, -1562, -2136, -2118, -4295, -4295, -4295, -2202, -2179,  -769,
+    2466, -1266, -2521, -4295, -4295, -4295, -4295,  -116, -4295, -4295,
+      58,  1600,  2147, -4295, -2718, -4295, -4295,   746, -4295, -4295,
+    1368,   570,  1366, -4295,   914,  2976, -1330, -4295, -4295, -4295,
+   -4295, -4295, -4295,  -174,   131,  -264, -4295, -4053,   579, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -3024, -4295, -4295,
+   -4295,  -413, -4295, -4295,  -351, -4295, -4295,  -389, -4295,   -47,
+   -2542, -4295, -4295, -4295, -4295,  2228, -1536, -4295,  -586, -4295,
+     274,  1632, -2635, -2130, -4295, -1039, -1024,  -269, -4295, -4295,
+   -4295, -4295,  1157, -4295,   527,  1630, -2608, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295,  1155, -4295, -4295, -2612, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,  -411, -4295,  -221,   747,
+   -4295, -3126,  1072,   477, -4295, -4295, -4295, -4295, -1630, -3177,
+   -1060, -4295,    73, -2760, -2734,   449, -4295, -4295,    51, -3929,
+   -4295,  -602, -2297, -2575,  -229, -4295, -4295,    67, -2370,  1745,
+   -4295,   420, -1132, -2941,  1511, -4295, -4295,  1036, -4295, -2984,
+    1035, -4295, -4295, -4295,  1042, -4295,  -326, -4295, -4295, -4295,
+   -4295, -3482, -4295, -1659, -2955, -4295, -4295,  4395,  4397, -2654,
+    -271,  -270, -4295, -4295, -4295,   312, -4295, -4295, -1940,  -148,
+     -37,   -29, -2639, -3721,   146, -3413, -4295,   272, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,  1678,  -937, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -3322, -3068, -4295, -4295,  1211,
+   -3055, -2221, -2217, -2601,  3414, -4295, -4295, -4295, -4295,  3352,
+   -2417, -3620, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  2888,
+     861, -4295, -4295,  1805, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295,   304,  1921, -4295, -4295, -4295, -4295, -4295,
+    2226, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  -186,
+   -4295, -4295, -4295, -4295, -4295,   573,  2773, -4295, -4295, -4295,
+   -4295,    -9, -4295, -4295, -4295, -4295,  2463, -4295, -4295, -4295,
+   -4295,  2802, -4295, -4295, -4295, -4295, -4295, -4295,  1482, -4295,
+    1956, -4295, -1634, -4295, -4295,  1018,  -147,  1900,  -628, -4295,
+    2054, -4295,    90, -4295,  3420, -4295, -4295, -3279,  3529, -4295,
+   -4295, -2643, -4295,  3512, -1498, -2875,  2413,   342,  -141, -2063,
+    1067,  -146,  1629,   745,  5109, -4295, -1225, -1219, -4295, -4295,
+      -2, -4295, -4295, -4295, -4295, -4295, -4295,  2153,  2158,  -638,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295,  1533, -4295, -4295, -4295, -4295, -1318, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  -964, -4295, -2235, -4295, -4295, -4295,
+    -512, -4295,  3290, -4295, -4295, -4295, -2459, -1515,  1892,   991,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295,  1902, -4295, -1719,
+   -4295, -2931, -4295, -4295, -4295, -4295,  1563, -4295, -4295, -4295,
+   -4295, -4295, -4295, -1880, -4295, -2013,    40, -4295,   220, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,  -247,   810,  -244, -3863,
+   -1214,  1648, -4295, -4295, -1375,  3340, -1949, -4295,   737, -4295,
+    2063,  1113, -4295, -4295, -4295, -4295,   603, -2971,  2918, -4295,
+   -4295, -3389, -1015, -4295,  2919, -4295, -1467,  1459,   417, -4295,
+   -1527, -1197, -2350, -3208, -2657, -4295,  1280,   106, -4295, -4295,
+   -4295,  -233, -4295, -4295, -4295,  1484, -4295,   426,   428, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,  -583,
+    -952, -4295, -4295,  2227, -1916,  -489,  4490,     1, -4295, -4295,
+       2, -4295, -4295, -4295, -4295,  3157,  3104,  2026, -4295, -4295,
+   -2810, -4295, -4295,  1986, -4295,   730,  -999,  1218,  1063, -4295,
+   -4295,  1056, -3479, -4295, -4295,     4, -4295, -4295, -4295,  1010,
+   -4295,   -99,  3973,     5, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295,  2846, -1151,  3880, -4295, -4295, -4295, -4295, -4295,
+   -4295,  2414, -4295, -4295, -4295, -4295, -4295, -4295,  3033,  3992,
+    -607, -1438, -4295,  -828,  2416,  1912,  -846, -4295, -4295, -4295,
+    3489,  3997, -4295, -4295,  4508, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  2656,   662, -4295, -4295,   529, -4295,
+   -4295, -4295, -4295,  3145, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295,  1123,  -218, -4295,
+     318,  -228, -4295,   140, -4295, -4295, -4295, -4295, -4295,  -257,
+   -4295, -4295,  -261, -4295, -1105,  3818, -1471,   240, -1362, -2770,
+   -4295,  1114,  3122, -2992,  -705, -1228, -1256, -3038,   -15, -4295,
+   -4295,  3758,    30,  -486, -1641,    -6,  -853,  -107,  -627,  -634,
+    -844, -4295,  -515, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295,  1966, -4295, -4295, -4295,  1074, -4295,
+    4038, -4295,  2758, -1493,  4039,  -584,  2512,  1985,  1987, -4295,
+   -4295, -4295, -4295, -1970, -4295, -4295,   190, -4295,  2636, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295, -4295, -4295, -4295, -4295,  3014,  -483,  -481,  3161,
+    4060,  3683, -4295,  3254, -4295, -4295, -4295, -4295, -4295,   376,
+   -4295,   129,  2050, -1551, -2546, -4295, -4295,  2139,   743, -4295,
+    1653,  -428,  -765, -4295, -4295,   374, -4295, -4295, -4295,  1375,
+    1557,  4071,  3688, -4295, -4295, -4295, -4295, -4295, -3001,  -982,
+   -4295, -3696, -1443, -4295, -4295, -4295, -2336, -3270, -4295, -4295,
+   -1104, -4295, -4295, -4295, -4295, -2199, -4295, -4295, -4295,    -1,
+    4034,  4036,  4042, -4295,  -868, -4295, -4295, -4295, -4295, -4295,
+   -4295, -4295,  3568, -4295, -4295, -4295, -4295, -4295,  3036,  3575,
+   -4295, -4295, -4295, -4295, -4295,  3580, -4295, -4295, -4295, -4295,
+   -4295,  1750, -4295, -4295, -4295, -4295, -4295, -4295, -4295, -4295,
+   -4295
 };
 
   /* YYDEFGOTO[NTERM-NUM].  */
@@ -4787,502 +4792,502 @@ static const yytype_int16 yytable[] =
     1878,   857,   858,  1242,  1972,   862,   863,   864,   949,  2911,
      866,   867,   868,  3263,  3532,  1438,  1439,  2284,   949,  3200,
     3177,  2918,  1193,  1680,   900,  1901,   901,  3711,  1947,  3342,
-    3650,  3200,  3200,  1909,   657,  2214,  1354,  3006,  1681,  3443,
+    3006,  3200,  3200,  1909,   657,  2214,  1354,  3543,  1681,  3443,
     1911,  1912,  3900,   658,  1915,  1916,  1917,  1918,  2203,  1920,
-    1921,  1923,  1925,  1926,  1927,  1928,  1929,  1462,   900,  3543,
-     984,  1794,  1171,  2039,  1622,  1175,  2250,  2022,  2755,   661,
-    2756,   533,  2980,   533,   668,   674,  1071,  2516,  2810,  1078,
-    2173,  2609,  2228,  3372,  2919,   679,  3560,  3562,  2879,  3220,
-    3189,   668,   683,   684,  2657,   685,   686,   663,  3157,   665,
-    2186,  4124,  3870,  4289,  3367,  3368,  2880,  3814,  2189,  2190,
-    3374,  3101,  3376,  3553,  3813,  3725,  2334,  1303,  1304,  3889,
-    3110,  1412,  3651,  4252,  1303,  1304,  1294,  1295,  1296,  1566,
-    3228,  1303,  1304,  2504,  3232,  3267,  3762,  3826,  1337,  1704,
-    3433,  1755,  1756,  1757,  2876,  3247,  2877,  3776,  2255,  3200,
-    3200,  2034,  1602,  1677,  1601,  4021,  4164,  3258,  1775,   612,
-    4216,   582,  1406,  1677,  4233,   706,  4858,  3212,  3213,   591,
-    1303,  1304,  1412,  2456,  2045,  3614,  1303,  1304,  1303,  1304,
-    3058,  2255,  1654,  1663,  2583,  -937,  3614,  3933,  1677,  2869,
-    3585,  1839,  1303,  1304,  1843,  -580,  4515,  1403,  1303,  1304,
-    4780,  2646,  1303,  1304,  4050,  2620,   578,  3339,  3928, -1577,
-    2504,  1086,   615,  3354,  1555,  1862,  1863,  3623,  1338,  1867,
-    -581,  2976,  1930,  1303,  1304,  3951,  1701,  2028,  1303,  1304,
-    1086,  3948,  1303,  1304,  1990,   956,  1881,  1882,  1303,  1304,
-    3790,  4050,  1338, -2752,  1030,  1011,  4462,   544,  4336, -2679,
-   -1577,  2751,  3395,  2133, -2111,  1176,  4051,  3434,  4050,  3612,
-    4533,  2738,  1303,  1304,  3943, -1617,  4811,  2631,  1527,  3628,
-    4052, -1712,  4842,  4051, -2514,  1631,  1303,  1304,  3701,  1427,
-     681,  1030,  1011,  1303,  1304,  3348,  3349,  4052,  1303,  1304,
-    3481,  4095,  1435,  1303,  1304,   919,  1727,  3568,  1030,  1011,
-    1303,  1304,  1143,  4353,  4883,  1182,  3615,  3018,  2433,  2123,
-    3829,  2590,  3586,  1341,   134,  2448,  1751,  2482,  4122,  1944,
-    1359,   989,  1508,  3446,  2758,  2134,  3752,  4050, -2752,   579,
-    4515,  -484,   575,  2242,  2269,  1221,   619,  2124,  1274,  1303,
-    1304,   148,  4051,  1303,  1304,   292,  2361,   294,   545,  3301,
-    1571,  2196, -2752,   949,   949,  3545,  4052,   949,  3130,  1303,
-    1304,  3090,  2252,  3147,  2246,  4493,  3216,  1030,  4210,  3520,
-    1303,  1304,  1693,  1694,  1254,  2960,  4516,  3722,  4664,  3131,
-     538,  1030,  1011,   539,   952,  3731,   537,  1575,   538,   949,
-    2495,   539,  2229,  3723,  1087,  1088,  1273,  2246,  2496,  4494,
-     898,  2961,  4343,  1572,  3843,   910,  4349,  3732,  1722,  1286,
-    1287,  3302,  2340,  1087,  1088,  3132,  3546,  1625,  1728,  1739,
-    3433,  3558,  1729,   542,  1581,  4154,   149,  1222,  2457,  2584,
-    1275,   990,  2197,  1730,   898,   136,   576, -2752,  2592,  2593,
-     620,  1931,  2256,  1480,  3547,  1144,   703, -1617, -2514,  1991,
-    1752,  3482,  1436,  1949,  2270,  1303,  1304,   990,  1350,  1793,
-    3702,  2205,  1528,  3340,  1932,  1668,  2116,  1669,  1670,  1671,
-    1672,  2323,  3527,  2605,  1242,  2256,  3149,  1632,  3091,   292,
-     674,   294,  3526,  4096,  2137,  1428,  1305,  2029,  2243,  1306,
-    4843,   674, -2597,  1305,  3587,  3009,  1306,  1981,  2125,  4884,
-    1305,   668,   905,  1306,  4812,  4184,   668,   701,  3109,   917,
-    4516,   957,  2529,  1153,  2093,  4174,   546,  1595,  4179,  4180,
-    3608,  1941,  1944,   960,  1340,  4463,  3616,  3326,  1718,  3934,
-     961,  4776,  2135,  1339,  1726,   668,  4155,  3434,   909,  1305,
-    3414,  2505,  1306,  1022, -2598,  1305,   918,  1305,  1306,  3791,
-    1306,  2632,  3297,  1080,  2755,  3875,  2756,  1339,  4354,  3879,
-    3704,  2655,  1503,  1177,  4322,  1731,  1556,  1305,  4755,  4299,
-    1306,  1305,  4195,  1102,  1306,  1945,  1303,  1304,  3200,  1680,
-    3599,  1303,  1304,   701, -1617,  3855,   701,  3435,   920,  1992,
-    1081,   949,  1305,  2068,  1681,  1306,   668,  1305,  1132,  2783,
-    1306,  1305,  3341,  3588,  1306,  4323, -2597,  1305,  2585,  3926,
-    1306,  3537,  3538,  3539,   668,  1947,  1161,  1974,  2505,  2879,
-    2810, -1577,  3844,  3884,  1914,   658,  2250,  1164,  1933,  1762,
-    1763,  1305,  1404,  2122,  1306,  3200,   658,  2880,  1724,   658,
-    2484,  1935,  1132,  1973,  2754,  1305,  2583,  2030,  1306,  1188,
-     613,  2487,  1305,  1723,  2490,  1306,  1818,  1305, -2598,   907,
-    1306,  3612,  1305,  1732,  1831,  1306,  1833,  2168,  1407,  1305,
-    2171,   705,  1306,  3936,  2174,  2876,  2177,  2877,  1846,  1847,
-    1848,  4859,  1647,  3036,  -937,  3153,  1852,  1972,  2694,  3944,
-    3945,  3268,   869,  3749,  -580,  1057,  2188,  1353,  4329,  2354,
-    1303,  1304,  1243,   616,  2192,  2193,  2194,  3617,  1305,  2322,
-    2334,  1306,  1305,  4217,   950,  1306, -2679,  2046,  1951,  -581,
-    2875,  4346,  1985,   986,   614,  3350,  3827,   580,  1305,  3100,
-    4727,  1306,  3444,  2035,  1303,  1304,  1443,  1089,  1724,  1305,
-    1307,  2222,  1306,  3214,  4517,  4212,  1413,  1307, -2679,  2481,
-    3202,  1082,  1303,  1304,  1307,  3865,  1282,  1303,  1304,  3726,
-    3269,  4357,  2470,  1300, -1617,  1302,  2434,  4253,  2378,  3436,
-    4099,  3748,  2449,  1336,  2888,  3762,  4512,  4053,  1945,  4658,
-    3215,  4660,  4661,  2570,  3364,  2407,  4316,  4307, -1617,  2411,
-    1345,   533,  1347,  1307,  1349,  1132,   533,  1413,   668,  1307,
-     533,  1307,  3569,  1352,  2069,  4328,  1388,  1357,  2032,   900,
-    4186,  1126,  2458,  2435,  4053,  1307,  2362,  1346,  2379,  1886,
-    1887,  1307,  1351,  2031,  1305,  1307,  1356,  1306,  2053,  3610,
-    -484,  4053,  1605,  4632,  1303,  1304,  4451,  1962,  4230,  1886,
-    2398,  1303,  1304,  1417,  2352,  4665,  1307,  2094,  1536,  1430,
-    1540,  1307,  1576,  1543,  1548,  1307,  4633,  4139,   658,  2251,
-    1434,  1307,  3035,   154,  1440,  2370,  3112,  3435,  4142,  1569,
-    2372,  2968,  3457,  2437,  2438,  1648,  3364,  3357,  3019,  3359,
-    2375,  4130,  4131,  2172,  1724,  1307,    14,  1465,  3020,  1582,
-    1126,  2584,  4156,  1475,  1724,   668,   658,  4748,  4749,  1307,
-    4053,  4752,   658,  2454,  2455,  3868,  1307,  1652,  1652,  2339,
-     682,  1307,  3630,  2156,  4756,  3017,  1307,  2985,  2986,  4766,
-    4211,  4003,  2252,  1307,  3069,  1458,  3510,  1537,  3010,  3392,
-    3393,  3150,  1724,  3862,  3399,  3400,  1303,  1304,  3660,  3661,
-    3921,  2062,  2376,  1022,  2558,  1305,  3298,  3372,  1306,   668,
-    1305,   668,  1555,  1306,   668,   668,  4321, -2597,  2078,  1985,
-    1303,  1304,  1307,  3843,  3442,  2071,  1307,  4095,  3612,  4059,
-     668,  3612,  3612,  1616,  3551,  3552,  4324,  3897,  4062,  4728,
-    3416,  3417,  1307,  4188,   900,  2377,  2117,  4801, -2673,  1303,
-    1304, -2597,  4804,  1307,  1303,  1304,  3173,    27,  1303,  1304,
-    3415,  1381,  2217,  2218,  2820,  4308,  2340,  3940,  2821, -2598,
-    1072,  3454,  3455,   658,  2221,  4309,  2882,  2755,  2095,  2756,
-    2230,   908,  2096,  1660,   701, -2656,   701,  3874,  3220,  1303,
-    1304,  3878,  1423,  2127,  1303,  1304, -2660,  4474,  1644,  4277,
-    2255,  1643,  3718, -2598,  1119,  1645,  1646,  4187,  2791,  1667,
-    4547,  1320,  1676,  2271,  1596,  3246,  4283,  4475,   683,   684,
-    1889,   685,   686,  2663,   966,  3867,  3168,  1696,  3247,  1305,
-    2585,  2405,  1306,  1303,  1304,  4191,   658, -2659,  1307,   147,
-    1819,  2559,  4647,  1820,  2667,   533,  1303,  1304,   658,  3779,
-    1649,  1303,  1304,  1468,  3535,  2810,  2794,  2384,  2091,  2879,
-    2091,  2091,   900,  1305,  3096,  3097,  1306,  2690,   658,  1742,
-    2551,  1700,  2228,  1680,  3571,  2250,  3163,  2880,  1744,  3192,
-    2516,  1305,  1724,   159,  1306,  2933,  1305,    48,  1681,  1306,
-    2754,  2474, -2657,  2706,  1896,  1303,  1304,  4256,  2520, -2658,
-    2890,  4200,  4201,   949,  2578,  2579,  2255,  4689,  3372,  3871,
-    2639,  3372,  3372,  4773,  4273,  2876,  3207,  2877,  1243,  4096,
-    1303,  1304,  1303,  1304,   148,  3807,  3174,  4202,  3372,  3809,
-    4203,  1934,  3555,  1243,  1303,  1304,  1303,  1304,  1606, -1913,
-    2072,  3844,  4226,  3054,  4728,   898,  3372,  4231,  4234,  4236,
-    4237,  1303,  1304,  3719,  2984,  2079,  3154,  1148,  3041,  1307,
-    4222,  4223,  4224,  1305,  1307,    42,  1306,  2128,  4227,  1073,
-    1305,  2989,  2990,  1306,  3612,  4238,  1975,  4335,  2385, -2141,
-    1303,  1304,  1880,  2391,  1531,   967,  4339,  4757, -2663,  4310,
-    1617,  1890,  1778,  3277,  2489,   668,    48,  2163,  1649,  3193,
-     156,  1303,  1304,  1751,  2521,   995,  2334,  1323,  4548,   149,
-    1906,  2875,  1650,  1303,  1304,  3323,  2246,  2094,  1704,  2590,
-    3328,  1303,  1304,  4097,   292,   693,   294,  2688,  3336,  3337,
-   -2673,  4680,   668,  3632,  3344,  1120,   565,  1938,  1879, -1913,
-    2693,   585,  4681,  2696,  2697,  2560,   668,  3648,  3649,  2044,
-    3050,   668,   658, -2800,  1303,  1304,  1779,  2164,    63,  3662,
-    1974,  4675,  1121,  1531,  1556,  1305,  3285, -2656,  1306,  2246,
-    3356,  4372,  2507,  1607,  2983,  2475,  1243,   668, -2660,  4621,
-    1992,  4622,  4758,  1307,  2993,  1780,  1303,  1304,  3755,  1305,
-    1303,  1304,  1306,  4419,  2256,   668,  4421,  1608,  4705,  4706,
-    3496,  2668,  2396,   668,   701,  1148,  1475,  3751,  2003,   589,
-    2006,  4549,  2042,    58,  4759,   658,  2246,  1307,  1305, -2659,
-     898,  1306,  2246,  1305,  4904,  1597,  1306,  1305,  1424, -2141,
-    1306,  2024,  1303,  1304,  1532,  1307,  2397,  1774,  4744,   996,
-    1307,  1944,   658,  1902,  2399,  1879,  3142,  1303,  1304, -2141,
-     668,  4045,  2012,   156,  2401,  1781,  1475,  2043,  1305,  2413,
-    1650,  1306,   658,  1305,  3556,   658,  1306,    63,  4311,  1303,
-    1304,  2252,  2582,  3161, -2657,  3487,  3488,  3489,  3278,  2251,
-    4588, -2658,  1303,  1304,  2512,  2094,  3175,   608,  2095,  4098,
-    4351,   668,   668,  1470,  1944,  2074, -1145,  1303,  1304, -1145,
-    2256, -2800,  1305,   617,  2092,  1306,  4099,  1193,   701,  2219,
-    3143,  1303,  1304,  1532,  2113,  1305,   997,  1307,  1306,   633,
-    1305,   668,  2118,  1306,  1307,  4461,  1303,  1304,  1303,  1304,
-    4653,   668,  4649,  3030,  1782,  4189,  2420,  4360,   898,  4362,
-    4147,  1944,  2353,  2138,  1022,  2165,   913,   156,  2160,  4148,
-    2162,  3756,  2674,  4788,   533,   533,   533,   658,   533,   658,
-    4682,  2223,  4426,  2339,  1305,  3621,  3621,  1306,  2169,   533,
-   -2663,   668,  4587,  2881,  1178,   533,  1303,  1304,  2232,   712,
-    2157,  2158,  2159,   900,  2161,  2610,   602,  2187,  2476,  1305,
+    1921,  1923,  1925,  1926,  1927,  1928,  1929,  1462,   900,  1171,
+     984,  1794,  1175,  2039,  3560,  2022,  2250,  1622,  2609,   661,
+    2755,   533,  2980,   533,   668,   674,  1071,  2516,  2810,  1078,
+    2879,  2173,  2228,  3372,  2919,   679,  2657,  3562,  2756,  3220,
+    3189,   668,   683,   684,  3870,   685,   686,   663,  3228,   665,
+    3157,  2186,  3232,  2880,  3725,  4124,  3367,  3368,  3813,  2189,
+    2190,  3889,  3374,  3247,  3376,  3101,  2334,  3553,  3814,  1412,
+    3612,  4289,  3651,  4252,  3110,  3258,  1294,  1295,  1296,  1566,
+    3628,  1303,  1304,  4164,  1303,  1304,  3762,  2504,  1337,  1303,
+    1304,  3433,  1704,  1303,  1304,  2034,  2876,  3928,  3826,  3200,
+    3200,   706,  3018,  4050,  1601,  4233,  4336,  1303,  1304,  4050,
+    2456,   582,  3267,  4021,  2877,  2646,  3354,  3212,  3213,   591,
+    1755,  1756,  1757,  1602,  4051,   578,  2045,  1086,  4216,  2738,
+    1654,  1663,  1406,  2751,  3433,  2869,  4154,  1775,  4052,  2028,
+    4095,  1423,  4858,  1030,  1011,  3776,  1303,  1304,  3527,  1030,
+    1011,  1537,  2255,  3058,  1086,  2976, -1577,  3173,  1677,  1990,
+    3623,  2255,  4321,  2361,  3297,  1303,  1304,  3951,  3614,   907,
+    1839,  2071,  2246,  1843,  1701,  4780,  1338,  1338,  1303,  1304,
+    1555,  2364,  1303,  1304,   956, -2752,  1176,  2133,  1303,  1304,
+    -937,  4533,  1616,  3568,  1862,  1863,  3790, -1577,  1867,  2758,
+    1303,  1304, -2111,  3933,   919, -2673,   612,  4353,  3434,  4462,
+   -1712,  1555,  2631, -1617,  3943,  1881,  1882, -2679,  4191,  3843,
+    3614,  3147,  4842,  1631,  4728,  1427,  1303,  1304,  3829,  2667,
+     681,   970,  4515,  1303,  1304,  3348,  3349,  1412,  1303,  1304,
+    1527,  1727,  4050,  1303,  1304,  2242,  2123,  4155,   579,  4883,
+    1341,  3434,  1143,  3277,  1751, -2656,  1677,  4051,  1531,  2134,
+     989,  3701,  1303,  1304,  1751,  3090,   575,  1751,  4122,  1677,
+    1359,  4052,  1303,  1304,  2124,  2482,  3752,  4547,  1470,  1303,
+    1304,  1508,  1030,  1011,  1178,   619,  2520,  1751,  -580,  1303,
+    1304,  2196,  4382,   615, -2752, -2514,  1611,  1944,  4178,  1625,
+   -1913,  -581,  4493,   949,   949,  1303,  1304,   949,  3545,  3520,
+    1087,  1088,  2252,  2528,  4664,   159,  1303,  1304,  3885,  3886,
+    4680,  1303,  1304,  1303,  1304,   537,  2709,  3174,  2620,  4343,
+    2285,  4681,  4096,  3009,   952,  3907,  4494,  1087,  1088,   949,
+     542,  -484,  3807,  2529,  2495,   971,  3809,  3887,  1303,  1304,
+     898,  3615,  2496,  2286,  2323,   910,  2500,  1303,  1304,  3908,
+    4349,  3558,  2340,  1728,  1179,  2457,  2433,  1729,  2246,  1575,
+     576,  3546,  2197,  1581,  1991,  3149,  1612,  2246,  1730,  3709,
+    1480,   292,  3091,   294,   898,  3326,  2072,  3216,  1752,   620,
+     990,  4383,  2521,  1303,  1304,  1144,   990,  1624,  1774,  2029,
+    2243,  1838, -2597,  1949,  4174,  1303,  1304,  4179,  4180,  1793,
+    1532,  2205,  4516,  1403,  3843,  1668,  2116,  1669,  1670,  1671,
+    1672,  1842,   972,  2605,  1242,  1632,  3537,  3538,  3539,  4728,
+     674,  1428,  2529,  4384,  2137,  2125,  1528,  3844,  3278,  2504,
+    4843,   674,  3608,  3702,  4884,  1605,  2256,  1981,  1531,  1617,
+    1305,   668,   905,  1306,  4372,  2256,   668,   701,  1305,   917,
+     957,  1306,  1305,  1153,  4354,  1306,  2135,  1595,   156, -2514,
+    1057,  1941,  3612,   960,  2783,  4548,  1305,  1424,  1718,  1306,
+     961,  1726,  1303,  1304,  3936,   668,  2668,  2093,   909, -2673,
+    4463,  1339,  1339,  1022,  1177,  2505,   918,   920,  2632,  4755,
+    3944,  3945,  1944,  1080,  1503,  3791,  2755,  2952,  4776,  3875,
+    1731,  2655, -1617,  3879,  1992,  1305, -2597,  3109,  1306,  4299,
+    1303,  1304,  4195,  1102,  2756,  4621,  1992,  4622,  3200,  1680,
+    3599,   908,  1556,   701,  1305,  3855,   701,  1306,  3435, -2656,
+    1081,   949,  3704,  2068,  1681,  3934,   668,  1305,  1132,  4682,
+    1306,  1305,  3926,  1945,  1306,  1303,  1304,  1305,  3298,  2030,
+    1306,  2879,  1722,  1556,   668,  1947,  1161,  1974, -1577,  1305,
+    2810,  3616,  1306,  3884,  1914,   658,  2250,  1164,  4549,  1762,
+    1763,  3435,  4050,  2122,  2880,  3200,   658,  3175,  4727,   658,
+    2484,  1935,  1132,  1973,  2754,  1305,  3749,  4051,  1306,  1188,
+    1532,  2487,  1305,  4156,  2490,  1306,  1818,  1305,  1732,  3862,
+    1306,  4052,  1305,  1724,  1831,  1306,  1833,  2168,  3202,  4099,
+    2171,   705,  1030,  4210,  2174,  3214,  2177,  2876,  1846,  1847,
+    1848,  1305,  3844,  2362,  1306,  3153,  1852,  1972,  1407,  2694,
+    4329,  1305,   869,  3100,  1306,  2877,   580,  1353,  1305, -1617,
+    4357,  1306,  1243,  1089,  2192,  2193,  2194,  4859,  1305,   986,
+    2334,  1306,  2322,  4346,   950,  1951,  3444,  2188,  3268,  2046,
+    2875,  3350,  1985,  3019,  1305,  1057,  4053,  1306,  2354,  2035,
+    1282,  4217,  4053,  3020, -2679,  1305,  1443,  3827,  1306,  2222,
+    1305,  -937,  1305,  1306,  1724,  1306,  1413,   613,  3569,  2481,
+    3726,  1082,  1303,  1304,  1307,  3865,  4658,  1307,  4660,  4661,
+    1303,  1304,  1307,  1300, -1617,  1302,  1307,  1305, -2679,  4253,
+    1306,  3748,  3436,  1336,  2888,  3762,  1305,  3364,  2470,  1306,
+    1307,  4307,  2353,  2570,  4512,  2031,  1886,  1887,  2378,  3269,
+    1345,   533,  1347,  4212,  1349,  1132,   533,  4316,   668,  4328,
+     533,  2458,  3617,  1352,  2069,  2032,  1388,  1357,  1945,   900,
+    4186,  1126,  1305,  1320,  2407,  1306,  3010,  1346,  2411,  1307,
+    3630,   614,  1351,  2255,  1305,  2053,  1356,  1306,  4451,  3612,
+    4517,  4665,  3612,  3612,   616,  4139,  3215,  1962,  1307,  -580,
+    2379,  1606,  2435,  1417,  4188,  2750,  3660,  3661,  1536,  1430,
+    1540,  1307,  -581,  1543,  1548,  1307,  3036,  1723,   658,  2251,
+    1434,  1307,  3035,   154,  1440,  4053,  3112,  1724,  4142,  1569,
+    2094,  2968,  3457,  1307,  4748,  4749,  2434,  3357,  4752,  3359,
+    3150,  1886,  2398,  2172,  1576,  4130,  4131,  1465,  1582,  4230,
+    1126,  1724,  -484,  1475,  2352,   668,   658,  2505,  1404,  1307,
+    3610,  1305,   658, -1617,  1306,  3868,  1307,  1652,  1652,  2339,
+     682,  1307,  3921,  2156,  1413,  3017,  1307, -2597,  1596,  2437,
+    2438,  3168,  2252,  4766,  3069,  1458,  3510,  2370,  4756,  3364,
+    3867,  2454,  2455,  1303,  1304,  1307,  2985,  2986,  1135,  1305,
+    2558,  2062,  1306,  1022,  1647,  1307,  4811,  3372,  3585,   668,
+    2583,   668,  1307, -2597,   668,   668,  2372,  3395,   966,  1985,
+    1303,  1304,  1307,  3381,  3442,  3392,  3393,  4095, -2598,  4804,
+     668,  4059,  3399,  3400,  1305,   134,  1607,  1306,  1307,  3897,
+    4062,  3339,  3416,  3417,   900,  1182,  2117,  1303,  1304,  1307,
+    3948,  4801,  1136,   544,  1307, -2660,  1307,   565,  3454,  3455,
+    1608,  1381,  2217,  2218,  2820,  3481,  2340,  3940,  2821,  1323,
+    2375,  2078, -2659,   658,  2221,  2376,  2882,  4277,   585,  2755,
+    2230,  1307,  1303,  1304,   701,  2791,   701, -2657,  3220, -2658,
+    1307,  3874,   589,  3551,  3552,  3878,  3247,  2756,  1644,  2246,
+    1072,  1643,  2377,  2095,   608,  1645,  1646,  2096,  2583,  1667,
+    4515,  2384,  1676,  2271,  4273,  3246,  4283,  3718,   683,   684,
+     617,   685,   686,  2663,  2127, -2663,  1307,  1696,  1303,  1304,
+    3586,  2405,   633,  2794,  4647,  3612,   658,  2559,  1307,  2255,
+    1819,  3535, -2598,  1820,  1137,   533,  2163,  2385,   658,  3779,
+    1724,  2879,  1889,  1468,   545,  2810,   136,  1944,  2091,  2391,
+    2091,  2091,   900,  3142,  3096,  3097,  3571,  2690,   658,  1742,
+    2551,  1700,  2228,  1680,  2880,  2250,  3163,  2256,  1744,   967,
+    2516,  1305,   693,  4761,  1306,  2933,  1119,  2327,  1681,  1305,
+    2754,    14,  1306,  2706,  1896,  1303,  1304,  1648,  1350,  4689,
+    2890,  4200,  4201,   949,  2578,  2579,  2164,  3301,  3372,  3871,
+      48,  3372,  3372,  4773,   913,  1307,  3207,  2876,  1243,  4096,
+    1303,  1304,  1303,  1304,  1944,  1435,  3482,  3143,  3372,  4202,
+   -1913,  1934,  4203,  1243,  4322,  2877,  2396,  1303,  1304,  1303,
+    1304,  2094,  4226,  3054,  4812,   898,  3372,  4231,  4234,  4236,
+    4237,  1303,  1304,  1307,  2984,  2584,  3041,  3154,  2269,   292,
+     636,   294,  4222,  4223,  4224,  4053,  1303,  1304,  3719,  3302,
+    4227,  2989,  2990,  3479,  2397,  4323,  1975,  4238,  1303,  1304,
+    1303,  1304,  1880,  2474,  2094,  4211,  4003,  4590,  1307,  1597,
+    4516,  1340,   995,  4419,  2489,   668,  4421,  3340,  2128,  1073,
+     637,  4757,    27,  2529,   914,  1930,  2334,  2246,  2079,  2401,
+    1906,  2875,  3587,  1303,  1304,  3323,  3632,   156,  1303,  1304,
+    3328,  1704,   546,  4097,  4184,  1890,  3144,  2688,  3336,  3337,
+    3648,  3649,   668,  1902,  3344,   712,  2739,  1938,  1879, -2660,
+    2693,  2560,  3662,  2696,  2697,  3285,   668,  2246, -1940,  2044,
+    3050,   668,   658,  2584,  4147,  2246, -2659,  1138,  4856,  4857,
+    1974,  4675,  1305,  4148,   597,  1306,  4591, -1941, -2141,  2507,
+    3356, -2657,   597, -2658,  2983,   915,  1243,   668,  2270,  1332,
+    1333,  1334,  1335,    63,  2993,  1436,  1303,  1304,  3755,  1305,
+    1303,  1304,  1306,   713,  2165,   668,  4758,  1057,  4705,  4706,
+    3496,  1303,  1304,   668,   701,  3145,  1475,  3751,  2003, -2663,
+    2006,   148,  1649,  1945,  2095,   658,  1305,  1120,  2096,  1306,
+     898,  3588,   639,  1139,  4904,  1140,   996,   659,  4759,  1303,
+    1304,  2024,  1944,  2256,  2585,  1307,  3341,  4308,  4744,  1303,
+    1304,  1778,   658,  1307,  1121,  1879,  2740,  4309,  1303,  1304,
+     668,  1305,  2012, -2752,  1306,  2365,  1475,  2095,  4588, -1940,
+    1303,  1304,   658,   662,  2413,   658,  2328,  2475,  2590,  2582,
+    4649,  2252,  1944,  3161, -1220,  3487,  3488,  3489, -1941,  2251,
+    1945,   748,  1303,  1304,  2512,  1214,  1215,  1303,  1304,  4098,
+    2718,   668,   668, -2598,  3414,  2074,   149,  1305,  1303,  1304,
+    1306,  4149,  2448,   997,  2092,  1779,  4099,  1193,   701,  2219,
+      42,   152,   153,  2719,  2113,  1303,  1304,  1903,   664,  1148,
+   -2141,   668,  2118,  2960,  1931,  4461,   714,  4426,  4189, -2598,
+    4653,   668,  2585,  3030,  1780,  3446,  3755,  4360,   898,  4362,
+   -2141,    48,  2329,  2138,  1022,   753,   136,  1932,  2160,  2961,
+    2162,  3756,  2674,   156,   533,   533,   533,   658,   533,   658,
+    1285,  2223, -2752,  2339,  1305,  3621,  3621,  1306,  2169,   533,
+    4187,   668,  4587,  2881,  1650,   533,  1303,  1304,  2232,  4737,
+    2157,  2158,  2159,   900,  2161,  2610,  1724,  2187,   680,  1305,
     1821,  1305,  1306,  1822,  1306,  2170,   658,  4100,  4541,  4542,
-    2277,  2176,  2340,  1305,  2477,  1305,  1306,  2882,  1306,  3144,
-    2175,   970,  1624,  3755,  1057,  1332,  1333,  1334,  1335,  1307,
-    1305,   152,   153,  1306,  2091,  1611,  2702,  1903,  4352,  2711,
-    3757,  3899,  3653,  2715,  2716,  1778,   914,   713,  2424,   668,
-     668,  4737,   636,  1307,  1751,  2010,   157,   748,  2285,  1305,
-   -2293,  4761,  1306,  2754,  1179,  4543,  2095,  2227,   639,  3005,
-    2096,  2365,   668,  2224,  2225,  2226,   658,  1057,  3347,  1680,
-    1305,  2286,  1307,  1306,  1965,  3136,  4718,  1307,   637,   668,
-     659,  1307,  1305,  1451,  1681,  1306,  1452,  4149,  3145,   949,
-    1305,  2425,  1583,  1306,  2282,   689,  2427,  1945,   662,  1779,
-    2428,   668,  2280,   658,  3631,  1612,  3633,   915,  3654,  1303,
-    1304,   753,  1307,  3644,  1057,   664,  1973,  1307,   658,   136,
-    4536,  2254,  4719,  1305,  1584,   971,  1306,  3657,  3194,  2718,
-    1278,  2432,  2750,  4427,  3668,  3670,  3358,  3557,   292,  1188,
-     294,  2351,  1303,  1304,  4178,  2528,  3942,  3687,  3689,  3691,
-    1945,  1783,  2719,  3692,  3670,  1305,  1307,  4272,  1306,  1305,
-    1972,   156,  1306,  1303,  1304,  3907,  3453, -1220,  1949,  1307,
-     714,  1303,  1304,  2529,  1307,  2450,  3756,  1585,  1838,  1751,
-    1443,  1751,  1586,   680,  1303,  1304,  1303,  1304,  3397,  3908,
-    4147,  2875,  2369,  3740,  3743,  3746,  2491,  1945,  3195,  4148,
-   -2293,  1305,   972,   688,  1306,  1303,  1304,  1879,  3655,  4530,
-     767,  4382,   998,   999,  3127,  1001,  1305,  1003,  1307,  1306,
-   -2293,  1784,  1279,  3709,  3295,  2255,  4856,  4857,  1303,  1304,
-    1243,  2406,  2737,  1453,  1004,  3523,   693,  3398,  1305,  4778,
-    1904,  1306,  4782,  1307,  2988,  1307,  2508,  3758,  4720,  2153,
-    2154,  1305,  1303,  1304,  1306,  3760,  1905,  1307,  3515,  1307,
-    1456,  3035,  3409,  2915,  3419,   694,  1305,  2075,  2920,  1306,
-    2366,   156,  1303,  1304,  1307,  2364,  3420,  3196,  4073, -2318,
-    1305,  2327,  2927,  1306,   706,  1303,  1304,  1135,  2495,   783,
-    4218,  2473,  2371,  4219,  2569,  1305,  3565,  1305,  1306,  1985,
-    1306,  1514,  1985,  1307, -1713,  3146,   708,  1303,  1304,  3310,
-    4383,   709,  3200,  1842,  3811,  1866,  2942,  1303,  1304,  2367,
-    1340,  2386,  1303,  1304,  1307,  2498,  1303,  1304,  1303,  1304,
-    1303,  1304,   855,  2497,   658,  1587,  1307,  4149,  1303,  1304,
-    4060,  1136,  2387, -1940,  1307,  1305,   658,   668,  1306,  3200,
-    3200,  4359,  4384,  -208,  2395,  1303,  1304, -2438,  3621,   898,
-     658,   872,  2409,  4847,   859,  1388,  1303,  1304,  2251,   995,
-    1388,  3031,  2739,  2523,  2625,  2532,  2532,  1307,  2532,  3081,
-    1303,  1304,  2871,  2999,  2533,  2533,  1126,  2533,   964,  3200,
-    1515,   701,  3849,  4735,  4736,  2410,  3694,  1303,  1304,  1303,
-    1304,  2076,  2556,   711,  1879,   861,  1430,  1778,   668,  1307,
-    1588,   658,  2662,  1307,   865,   658,   906,   900,  4590,  3002,
-    1303,  1304,   922,  1514,  2327,   538,  3734,  2414,   539, -2318,
-    3709,  2418,  3666,  1137,   949,  1465,  2581,  3850,  3246,  1303,
-    1304,  2246,   668,   668,   658,   658,   658,  1303,  1304, -2318,
-     949,   949,  1303,  1304, -1940,  1307,  2532,  2532,  2532,  1243,
-     668,  1303,  1304,  1303,  1304,  2533,  2533,  2533,  1303,  1304,
-    1307,  1779,  3758,  2419,  1589,   668,  2577,  1021,  1305,   953,
-    3894,  1306,  2740,   955,  1214,  1215, -1827,  2882,  2423,  2645,
-    2634,  1466,  1307,  1505,  3197,  1026,  2635,  4591,   658,  2339,
-    1780,  1303,  1304,   996,  2881,  1307,   812, -2438,  1022,  1443,
-    2426,  1305,  1515,   668,  1306,   975,   597,  1303,  1304,  2256,
-    1307,  3885,  3886,  2429,   597,   152,   153, -2438,  2368,  1340,
-    1022,  4515,  1305,  3574,  1307,  1306, -1827,   977,  2441,  1070,
-    1305,  4204,  2346,  1306,  4207,  4208,  3753,   967,  3887,  1307,
-    2686,  1307,  2460,  1305,   538,  1305,  1306,   539,  1306,  1285,
-    2328,  4220,  3581,  1303,  1304,  1099,  1944,  3361,  2709,  3385,
-    1781,  3872,  2687,  2695,  1305,  3781,  3782,  1306,  3479,  4229,
-     997,  2680,   658,  2683,  2246,  2399,  1077,   949,  3503,  3503,
-    3503,  3503,  4079,  1590,  2373,  2374,  2500,  1305,  3796,  1307,
-    1306,  1100, -1941,  4520,   590,  2636,  2529,  4527,  1303,  1304,
-   -1827,  2713,   533,  3517,  3217,   533,  1101,  3391,  2392,  1340,
-    1397,  1305,  2637,  2952,  1306,  1982,  1303,  1304,  1983,  3381,
-    1103,  1984,  1591,  3804,  3106,  2636,  1303,  1304,  2714,  3384,
-    1111,  1305,  2400,  1340,  1306,  1113,  1138,  1303,  1304,  1782,
-    2741,  4291,  2637,  1114,  1305,  1115,  2824,  1306,  3318,  1536,
-   -1827,  2742, -1940,  2727,  2638,   658,  2889,   658,  2743,  2301,
-    2302,  1536,  2734,  2735,  1879,   625,  1305,  1615,  1116,  1306,
-     292,   909,   294,  1620,  1621,  2315,  1305,  1094,  1095,  1306,
-    1096,  1305,  1097, -1940,  1306,  1305,  1142,  1305,  1306,  1305,
-    1306,  2954,  1306,  2328,  2479,  2402,  1340,  1305,  3576,  1944,
-    1306,  4516,  1139, -1941,  1140,  1123,   949,  2403,  1836,  2415,
-    1340,   949,  1148,  1879,  1305,  1151,   626,  1306,  2991,  1156,
-    3243,  1162,  1307,  2416,  1340,  1305,  1166,  2884,  1306,  1057,
-    2887,  2417,  1340,  3935,  1412,  1183,  2639,  2956,  1170,  1305,
-    3394,  3161,  1306,  3061,  2421,  1340,  4292,  4293,  1303,  1304,
-     668,  4294,  4295,  4296,  2981,  1307,  1305,  2744,  1305,  1306,
-    1190,  1306,   668,  1974,  2285,  2970,  1340,  3949,  4520,  2329,
-    3015,  3016,  1340,  3401,  1191,  4527,  1307,  1192,  3953,  1305,
-    1194,  3955,  1306,   898,  1307,  3004,  1443,  2286,  2255,  1985,
-    1985,  1985,  1195,   627,  3405,  4596,  1196,  1307,  1305,  1307,
-   -1940,  1306,  3406,  1344,  2317,  2318,  1305,  3210,  3211,  1306,
-    1727,  1305,  1945,  4742,  1306,  3407,  4741,  3408,  1307, -1617,
-    1305,  3107,  1305,  1306,  1320,  1306,  2895,  1305,  3380,  2374,
-    1306,  1199,  3939,  3383,  1340,  1089,  3410,  1343,  2069,  2069,
-    2069,  1307,  3411,  1340,  2327,  1126,  1126,  1126,  1320,  3529,
-    3530,  2640,  1200,  2745, -1940,   668,  1783,  1201,  1684,  3413,
-    1305,  3533,  3534,  1306,  3452,  1307,   998,   999,  1000,  1001,
-    1002,  1003,  1057,  1202,  3540,  1203,  1305,  1204, -1617,  1306,
-    3000,  1030,  1011,  3418,   668,  1307,   668,   668,  1004,  3816,
-    1340,  3837,  3838,  2641,  3852,  3853,  4037,  4038,  1307,  4039,
-    4040,  3740,  1348,  3743,  3087,  3746,   949,  3363,  4041,  4042,
-     668, -1941, -1617,   668,  3857,  1400,   949,   949,   949,   949,
-    1307,  3583,  1305,  2641,  2330,  1306,  4762, -1913,  1126, -1617,
-    1307,  1205,  1728,  1206, -1617,  1307,  1729,  3891,  3421,  1307,
-    3245,  1307, -1941,  1307,  1207,  2871,  1320,  1730,  3423,  4282,
-    3895,  1307,  3048,  3425,  1208,  1945,  1057,  3427, -1617,  3428,
-    1389,  3429,  2091,  1209,   721, -1617,  4269,  1305,  1307,  3801,
-    1306,  4048,  4057,  1210,  2881, -1617,  1211,  4805,  3074,  1307,
-    4074,  1340,  3077,  1799,  1212,  1305,  3802, -1617,  1306,  3358,
-    1879,  1216, -1617,  1307,  1218,  1305,   668,   668,  1306,  4088,
-    1340, -1617,  4520,  4527,  2246,   668,  1305,  2662,  1536,  1306,
-    1307,  3803,  1307,  2092,  1219,  2092,  2092,  1320,  3523,  1392,
-    1323,  4089,  4090,  3613,  4107,  4108,  3642,  3620,  4068,  4837,
-    4072,  1220,  4839,  1307,  1223,  -679,  3123,   134,  3125,  1360,
-    4241,  4242,   668,  3549,  1323,   628,  2599,  4365,  1224,  3667,
-    3217,  4078,  1307,  1225,   748,  4502,  4503,  4344,  4345, -1941,
-    1307,  1391,  3218,  1022,  4855,  1307,  1226,   629,  1227, -1617,
-    4070,  1228,  3122,  1229,  1307,    78,  1307,  1398,  4080,  1731,
-    1230,  1307,  2256,  4081,  1879,  1880,  1803,  4348,  4345,  4432,
-    4433, -1617,  4082,  1401,  4083,  3166,  3179,  3180,  1409,  4356,
-     533, -1617,  1393,   630,  1231,   658,   658,  1394,   668,   668,
-    2600,   752,  3666, -1941,  1307,  4501,  3534,  1232,   753,  1410,
-    4831,  1233,  2599,  2328,  1236,  3669,  3171,  1319,  1237,  1944,
-    1307,  1411,  4452, -1617,  4514,  4345,  4545,  4546,  4595,  2601,
-     135,  1238,  1323,  2899,  1244,  3646,  1245,   758,   759,  1246,
-    3156,  1395,  2301,  2302,  1247,  4458,  4459,  4460,   136,  3203,
-    3204,  3205,  3206,   631,  3208,  3209,  -679,  1396,  2315,  2900,
-    4553,  4554,   641,  1325,  1326,  1248,  1307,  1732,  4555,  4554,
-    1418,  -687,  4598,  4599, -1617,  1249,  2600,  3279,  1250,  4398,
-    1804,  4654,  3853,   949,  1807,  4245,  1251,  1325,  1326, -2795,
-    1252,  1808,  3294,  1420,  4686,  4687,  4390,  4391, -1617,  2602,
-    2285,  4371,  2599,  1323,  3308,  2601,  1255,   767,  3317,  4394,
-    1256,  1307,  1257,  4506,  1258,  2901,  4397,  1259,  2902,   137,
-    1260,  4905,  1261,  2286,  4399,  1262,  2903,  4422,  4423,  1307,
-    1320,  4716,  3534,  1263,  4400,  1264,  2491,  1320,  1559,  1307,
-    4717,  3534,  1265,  3764,  1266,  2904, -1617,  1267,  2327,  1268,
-    1307,  4734,  3211,  3324,  3325,  1269,  3327,  1270,  3329,  3330,
-    3331,  3332,  3333,  3334,  3335,  2590,  2600,  3338,  3789,  1271,
-    3343,   778,  1809,  2591,  3346,  2602,  4751,  4345,  2603,  3506,
-    3507,  4558,  2069,  4401,  1272,   782,   783,  2317,  2318,  1126,
-    4753,  4345,  1057,  1276,  3483,  2601,  1277,  1560,  2535,  3765,
-    2536, -1617,  3766,   138,  1280,  4209,  4214,  4754,  4345,  4215,
-    3767,  4786,  4787, -1617,  1328,  1329,  1330,  1331,  1332,  1333,
-    1334,  1335,  1281,  3817,  1422,  4802,  4345,  1561,  4225,  3768,
-    1811, -1913,  1284, -1617,  4232, -1617,  1321,  1288,  1328,  1329,
-    1330,  1331,  1332,  1333,  1334,  1335,  4803,  4345,  2905,  1413,
-    1021,  4806,  4345,  1289,  2603,  1290,  1325,  1326,  4402,  1322,
-    3219,  2625, -1617, -1617,  1291,  2602, -1617, -1617,  1026,  4809,
-    3853,  1292,  1310,  1293,  3769,  1945,  -679,  1342,  2614,  2615,
-    2616,  3831,  3832,   292,  1426,   294,  4820,  4821,  1388,  1444,
-    2523,  4275,  2592,  2593,  1449,   668,  1778,  1447,  3495,  1417,
-     668,   668,   668,  4838,  4345,  4852,  3736,   658,  2246,  1311,
-    3353,  4894,  4895,  3927,  3501,  -856,  3930,  3931,  1459,  4371,
-    1869,  1870,  4105,  4106,  1477,  1479,  1323,  1495,  1497,  1498,
-    3048,   668,  3770,  1323,   139,  1499,  2594,  1880,  1330,  1331,
-    1332,  1333,  1334,  1335,  2603,  1500,   152,   153,  1503,  1507,
-    1508,  -679,  1243,  2906,  2599,  1512,   668,   668,   668,  1517,
-    1779,  1312,   668,  3050,  1526,  1549,  3217,  1303,  1304,  2092,
-    1554,  4690,  1812,  1313,   643,  1558,  1553,  1577,  3218,  1578,
-     804,  4389,  1579,  1599,  4366,  1580,  1603,  4367,  1814,  1780,
-    1609,  1604,  1619,  4739,  3564,  2604,  4389,  1618,   810,  1626,
-    1627,  1629,  1634,   812,  1641,  1677,   813,   140,  1329,  1330,
-    1331,  1332,  1333,  1334,  1335,   152,   153,  1685,  2600,  1683,
-    1778,  4403,  3004,  1324,  1687,  1690,  1691,  2328,  4404,  2599,
-    3563,  1695,  3686,  1944,  3771,  1698,  4532,  3772,  1699,   668,
-    4392, -2795,  1562,  3594,   533,  1707,  3597,  2601,  1708,  4396,
-    1709,  1710,   658,  1736,  1719,   658,  3294,  -679,  4418,  1781,
-    1737,  1745,  1314,  4420,  1747,  4368,  4369,  1443,  4405,  1338,
-    3591,  2604,   141,  1795,  1796,  1797,  1798,  1799,  1751,  1325,
-    1326,  1758,  -679,  1777,  1779,  1788,  1325,  1326,   641,  1824,
-    1879,   596,  3294,  2600,  1836,  1327,  1835,  1837,  2907,  1860,
-    3629,  3627,  3294,  2329,  1897,  1877,  3639,  1913,  3638,  1888,
-    1919,  1940,  4398,  3194,  3773,  1948,  1953,  2602,  4594,  1939,
-     721,   640,  2601,   668,  3638,  1956,  2285,  1957,  1958,  3659,
-    3663,  1959,  1960,  1961,  1880,  3675,  3674, -2795,  1782,  4109,
-    1963,  4406,  3676,  3677,   658,  1964,  3640,  3641,  4454,  2286,
-    1976,  1977,  4597,  1978,  1979,  2009,  3638,  4399,  2013,  2018,
-    2021,  2604,  2023,  3294,  3700,  2026,  2027,  4400,  2908,  3713,
-    2040,  2048,  2050, -2489,  3673,  2049,  2051,  1800,  1801,  1802,
-    1803,  2057,  1563,  3195,  2060,  2064,  3638,  2065,  2066,  2067,
-    2106,  2108,  2602,  2109,  2110,  2114,  2603,  2909,  1528,  2119,
-    2142,  2150,   949,  4365,  1564,  3712,  1057,  2537,  2599,   641,
-     748,  3688,  2151,  2179,  2155,  2178,  4401,  2180,  4173,  2635,
-    2181,  2538,  1443,  2183,  2184,  3747,  2185,  2201,  2206,  3750,
-    1328,  1329,  1330,  1331,  1332,  1333,  1334,  1335,  2211,  1330,
-    1331,  1332,  1333,  1334,  1335,  1565,   549,  -886,  2599,  4407,
-    2215,  3690,  3774,  2231,  2273,  2253,  2220,  2274,  2330,  2289,
-    2292,  2290,  3196,  4614,  4615,  2293,  4617,   752,  2635,  2341,
-    2325,  2603,  2600,  2343,   753,  2349,  2355,  2357,  2358,  2359,
-    2382,  3775,  2381,  2539,  1804,  2540,  1805,  1806,  1807,  1945,
-    2383,  4707,  2388,  2389,  2390,  1808,  4569,  2393,  4476,  2399,
-    2404,  2601,  -679,   758,   759,   550,  4477,  2408,  2468,  2472,
-    2412,  2430,  2600,  1536,  2431,  1879,   292,  2439,   294,  2440,
-    2436,  2451,  2510,  3815,  2868,  2452,  2453,  2724,  2725,  4667,
-    2465,  3123,  3678,  4478,  3679,   551,  1305,  1335,  4264,  1306,
-   -1296,  2601,  1320,  4594,  2736,  2478,  2500,  2233,  -856,  1315,
-    1316,  1317,  4763,  2748,  2749,  1783,  2488,  2503,  2636, -1442,
-    1221,  2234,  2509,  1274,  1278,  2526, -2134,  3122,  2527,  2557,
-    2568,  2602,   552,   767,  2563,  2637,  1809,  2541,  3680,  1724,
-    4666, -1913,  4668,  3048,  2574,  2571,  2598,  2638,  2606,  4577,
-    2611,  4713,  2612,  4714,  4715,  4584,  2613,  3217,  2629,  2618,
-     643,   949,  3681,  4646,  3074,  3864,  2630,  2636,  3866,  2644,
-     668,  2602,  2648,  2604,   668,  1536,  2654,  2650,  2656,   553,
-    2658,  2664,  2665,  2666,  2637,  2864,  2865,  2866,  2867,  1505,
-    2669,  2670,  2542,  1810,  1811,  2671,  2638,   778,  3682,  3000,
-    4825,  2672,  1412,  2673,  2681,  2685,  1022,  1022,   152,   153,
-    2603,   782,   783,  1880,  4403,  2689,  4479,  2699,  3904,  2698,
-    2701,  4404,  2703,  3915,  2704,  2529,  2721,  2722,  2726,  2639,
-    2728,  2729,   658,  2730,   949,  4692,  2733,   642,  2731,  3197,
-    2732,  2825,  2829,  -679,  3922,  2830,  2834,  3896,  2604,  2862,
-    2603,  4128,  2836,  2839,  3929,  2840,  2870,  2863,  -143,  2841,
-    2889,  4405,  3932,  3638,  1879,  2842,  3294,  2843,  2844,  4825,
-    2845,  2846,  2635,  3243,  2847,  1879,   668,  2885,  2639,  1879,
-    3638,   643,  3294,  3294,  1879,  2848,  2849, -1617,  2850,  2851,
-    2235,  2852,  4890,  2853,  2854,  4480,  3294,  3638,  1323,  2855,
-    4132,  2856,  2857,  4898,  2898,   -69,  2922,  4890,  3638,  2858,
-     554,  3638,  4898,  3941,  4481,  2859,  2860,  2285,  2861,  2923,
-    2893,  2921,  3947,  2496,   874, -1751,  2997,  3008,   558,  3959,
-    2934,  2979,  2935,  2947,  4406,  3958,  1812,  4482,   658,  4487,
-    2286,  2969,  3013,  4013,  2640,  3014, -1617,  2978,  4014,  3022,
-    1307,  1813,  1814,  2987,  2996,   533,  3026,  3024,  3025,  3027,
-    3028,  3037,   555,  4029,   644,  3033,  2236,  3038,  3039,  3051,
-    3317,  3057,   645,  3052,  2035,  3055,  3056,  1320, -1617,  3064,
-   -1617,  4022,  3078,   556,  3079,  3082,  3083,  3084,  3088,   949,
-    3089,  2237,  3095,  2640,  3102,  3103,  3116, -1617,  3104,  3117,
-    3119,  3683, -1617,  3128,  2127,  2128,   804,  4875,  3129,  3151,
-    4366,  2636,  3138,  4367,   875,  3164,  2641,  3165,  3167, -1617,
-    3172,  2543,  2544,  2545,   810,  3178, -1617,  2604,  2637,   812,
-    3190,  3191,   813, -1617,  3217,  3229,  3234,  3235,  3238,  4572,
-    2638,  3239,  4407, -1617,  4159,  3684,   877,  3242,   557,  4798,
-    3241,  1325,  1326,   558,  2238, -1617,  3248,  3251,  3250,  3252,
-   -1617,  3259,   878,  3260,  3265,  2641,  3299,  2604,  3266, -1617,
-    3311,  3271,   559,  3272,  3282,  3312,  3351,  3244,  3320,  3321,
-    4113,  3322,  3355,  2422,  1994,  4118,  3364,  2350,  1995,  3369,
-    1880,  4368,  4369,  3245,  3375,  3377,  3440,   560,  4094,  3462,
-    1996,  3449,  3484,  3492,  3497,  3378,  3379,  1451,  3485,  3386,
-    3387,  3430,  3512,   561,  3441,  3445,  1057,  3451,  4487,  3456,
-    3518,  3459,  2639,   882,  3460,  3490,  1795,  1796,  1797,  1798,
-    1799,  3508,  4483,  3519,  3531,  3509,  3525, -1617,  3528,  4901,
-    3536,  3550,  3554,   990,  3463,   668,  3566,  4163,  4163,  3570,
-    2239,   883,  3294,  3578,  3464,  3567,   949,   884,  3577, -1617,
-    3579,  4175,   949,  3582,  3294,  3294,  3168,  3590,  3465, -1617,
-    3294,  4867,  3638,  1323,  3593,  4146,  3294,  2791,  3624,  1320,
-    3466,  3467,  3468,  3709,  1880,  3645,  3647,  1536,  3638,  3714,
-     658,  3721,  3728,  3729,  3733,  3736,  4882,   885,  3735,  3469,
-    3761, -1617,  1328,  1329,  1330,  1331,  1332,  1333,  1334,  1335,
-    3780,  3784,  3785,  4302,  2233,  3793,  3227,  3792,  3805,  3230,
-    3231,  3435,  3233,  2457,  3822,  3236,  3237,  3823,  2234,  3240,
-    1800,  1801,  1802,  1803,  3249,  3824,  3825,  2640,  3840,  3253,
-    3254,  3255,  3256,  3257,  3842,  3846,  3848,  3261,  3262,  3854,
-    3264,  3856, -1617,  3876,  2590,  3877,  3273,  3274,  3275,  3276,
-    4251,  3905,  3280,  3281,  3910,  3283,  3911,  3913,  3914,  3924,
-    3916,  3917, -2727,  3918,  3923,  3925, -1617,  2092,  3938,  3950,
-    3946,  3957,  3956,  1481,  4016,  3402,  4017,  4024,   668,  4027,
-    4028,  4020,  4023,  1482,  4247,  4032,  4033,  4034,  2761,  4036,
-    2762,  4043,  4058,  4046,  4047,  4048,  4061,  1483,  4049,  2641,
-    4063,  4065,  4066,  4067,  4076,  4075,  4071,  4077,  4091,  1484,
-    1485,  1486,  4085,  4103, -1617,  4086,  1325,  1326,  4093,  3352,
-    1997,  3540,  -826,  -826,  4114,  2764,  4112,  1804,  1487,  1805,
-    1806,  1807,  4123,  -826,  4108, -1529,  3565,  4125,  1808, -1534,
-     888,  4135,  4140,  2767,  4143,  4158,  4444,  4144,  1998,  4160,
-    4169,  2768,  4165,  4176,  4181,  4182,  1999,  4183,  4190,  3077,
-    4198,  4205,  4206,  4221,  4330,  1323,  3297,  4240,  3904, -1617,
-    4246,  4248,  4257,  4233,  4057,  1362,  4274,  3904,  2770,  4280,
-   -1617, -1617,  4279,  4285,  4163,  4281,   891,  2235,  4286,  4287,
-    4288,  4300,  1677,  4301,  4304,  2771,  4305,  3294,  4314,   892,
-    2000, -1617,  4318, -1617,  4320,  4373,   989,  4337,  4340,  3470,
-    4338,  4342,  4347,  4374,   658,  4380,  4230,  1413,  4416,  1809,
-    4377,  4393,  4379,  4445,  4446,  4447,  2776,  3471,  4449,  4510,
-   -1617, -1617,  4450,  4455, -1617, -1617,  4457,  4453,  4466,  4469,
-    4488,  4489,  4490,  4491,  4498,  4500,   949,  4507,  4513,  4487,
-    4524,  2001,  4544,  4537,  4550,  4539,  4414,  4540,  4561,  4562,
-    4563,  4564,  4565,  2236,  4424,  4568,  4425,  1328,  1329,  1330,
-    1331,  1332,  1333,  1334,  1335,  4567,  1810,  1811,  1363,  4442,
-    4573,   895,  4570,  4441,  4575,   152,   153,  4585,  2237,  4586,
-    4604,  4601,   292,  4605,   294,  4610,  4616,  4613,  2761,  4618,
-    2762,  2780,  4619,   896,  1364,   897,  4623,  1365,  2781,  4626,
-    4641,  4648,  4652,  4671,  4678,  4655,  4467,  4656,  1325,  1326,
-    4659,  4672,  2662,  2782,  4662,   658,  4679,  4684,  4473,  4669,
-    4673,  4697,  -826,  -826,  4691,  2764,   853,  4694,  4709, -1700,
-    3472,  2758,  2783,  -826,  1366,  4767,  4750,  4768,  1488,  4769,
-    4776,  2238,  4789,  2767,  4790,  4791,  4792,  4797,  3473,  4794,
-    4799,  2768,  4800,  4810,  1367,  4813,  1489,  4795,   949,  4163,
-     292,   947,   294,  4814,  4815,  4816,  4817,  4818,  3704,  4840,
-    2784,   947,  4845,  4841,  4848,  4851,  4863,  4868,  2770,  4866,
-    4870,  4872,  4874,   949,  4876,  4879,  4880,  4891,  1067,  2785,
-    4900,  1445,  1677,  3007,  3126,  2771,  4267,  3345,  4265,  4266,
-    4631,  1598,   853,  1362,  1661,  3609,  4341,  4630,  4733,  1812,
-    3474,  4835,  1689,   668,  4833,  4509,  4688,  1368,  1069,  4259,
-     611,  2608,  2519,  3477,  1813,  1814,  2776,  3475,  4110,  4414,
-    2838,  1169,  3502,  3043,  3042,  2499,  4651,  2239,  2267,  4529,
-    3044,  1369,  3286,  1738,  2789,  2808,  2790,  4578,  4582,  3952,
-    4557,  3511,  4116,  3516,  2792,  3847,  4696,  2038,  4775,  1328,
-    1329,  1330,  1331,  1332,  1333,  1334,  1335,  4119,  4468,  4865,
-    4828,  4850,  4612,  4350,   853,  2708,  3284,  3643,  3699,  4168,
-    1880,  4871,  3291,  4765,  3706,  3777,  4005,  1490,  4213,  4552,
-    3652,  4566,   292,  4239,   294,  4774,  4556,  3188,   853,  3808,
-    4271,  2780,  3432,   853,  3810,  4723,  1363,  3806,  2781,  4836,
-     649,   650,  3077,  4807,  3077,  4808,  4358,  4738,  4650,  4645,
-    4523,  4395,  4708,  2782,  3288,  3698,  2798,  1697,  2202,  4376,
-    3155,  1623,  1364,  3060,  4771,  1365,  4185,  3181,  2828,  2580,
-    2281,   853,  3034,  3494,  2326,  3841,  1370,  3085,  2977,  1491,
-    1513,  4163,   952,  4163,  4163,  1371,  3818,  4571,   853,  1521,
-    4663,  2651,  1640,  4764,  2914,  4639,  1492,  3458,  1834,  2912,
-    1372,  3447,  1366,  3108,  3873,  4625,  3111,  4504,  4829,  4087,
-    2784,  4035,  4830,  4677,  2799,  2800,  2801,  1776,  1373,  2994,
-    3812,  2802,  1367,  4193,  2208,  2209,  3544,  4442,   292,  2785,
-     294,  4441,   853,   853,   853,   853,  4333,  2803,  3693,  4589,
-    2804,  4832,  3542,  4473,   853,  4331,  4332,  2883,   651,  4676,
-    2055,  2011,  3032,   668,  3067,  3004,  4121,  3860,  4772,  2805,
-    3859,  1083,  1374,  3898,  4732,  1375,  1189,  2348,  2691,  3152,
-    2692,  1063,  2167,   658,  1066,  1673,   656,  2807,  2513,  1380,
-    4197,  2063,  4701,  4702,  2789,  1368,  2790,  4284,  3845,  4492,
-    4746,  4864,  4873,  4899,  2792,  1376,  4902,  4620,  1283,  4163,
-    4163,  3863,  2112,  4163,  4723,  3137,  4560,  3893,  4834,  1369,
-    2471,  1024,  1025,  2676,   538,  2562,  3135,   539,  3134,  2073,
-     853,  2213,   985,  2002,  4456,  4465,  4745,  3080,  4827,  3023,
-    3478,  4582,  3717,   987,  1108,  1880,   947,   947,  1109,  3607,
-     947,  1110,  1496,  1664,  1502,  2216,  1665,     0,     0,  1666,
-       0,     0,     0,     0,     0,     0,   668,     0,     0,     0,
-     853,     0,     0,     0,     0,     0,  2798,     0,     0,     0,
+    2277,  2176,  2340,   602,  1781,  1057,  1305,  2882,  1305,  1306,
+    2175,  1306,  3192,  4632,  2741, -2800,  1307,  2590,  1751,  1559,
+    1305,  1397,  3146,  1306,  2091,  2742,  2702,  2075,  4352,  2711,
+    3757,  3899,  2743,  2715,  2716,  1305,  4633,  2420,  1306,   668,
+     668,  4351,  1571,  1307,   767,  1057,  4324,  1305,   688,  1305,
+    1306, -2293,  1306,  2754,   157,  4543,  3547,  2227,    58,  3005,
+    4256,  4310,   668,  2224,  2225,  2226,   658, -1940,  3347,  1680,
+    1307,  2954,   693,  4778,  3653,  3136,  4782,  4515,  1560,   668,
+    2476,   156,  1305,  1782,  1681,  1306, -1941,  1305,  1945,   949,
+    1306,  2424,  1303,  1304,  2282,  1572,  2477,  2330, -1940,  3756,
+    4427,   668,  2280,   658,  3631,  1307,  3633,  2495,  1561,  1303,
+    1304,  1933,   689,  3644,    63,  3565,  1973, -1941,   658,   694,
+    4536,  2254,  1965,   783,  3722,  2737,  2425,  3657,  1945,  3942,
+    1904,  2744,  3193,  4718,  3668,  3670,  3358,  3557,  2042,  1188,
+    3723,  2351,  1303,  1304,  2592,  2593,  1905,  3687,  3689,  3691,
+    3654,  1307,  1866,  3692,  3670,  1305,   156,  4272,  1306,  1305,
+    1972,  2076,  1306,  1303,  1304,  3130,  3453,  3849,  1949,  -208,
+    1305,  1221,  2427,  1306,  4359,  1303,  1304,   706,  3760,  4719,
+    1443,   708,  1456,  2043,  1303,  1304,  3131,   709,  1303,  1304,
+    3526,  2875, -2318,  3740,  3743,  3746,  2491,  4847,  1305,   998,
+     999,  1306,  1001, -2293,  1003,  1303,  1304,  1879,  1305,  4530,
+    1274,  1306,  3850,  1451,  3127, -1940,  1452,  1305,  1307,   995,
+    1306,  1004,  3132, -2293,  3295,   855,   292,  2745,   294,  1305,
+    1243,  2406,  1306,   859, -1941,  3523,  1303,  1304, -2438,  2428,
+    4311,   861,  2599,  1307,  2988,  1307,  2508,  3758,  1303,  1304,
+    3655,  1305,  1303,  1304,  1306,  3709,  1305,  4516,  3515,  1306,
+    1307,  3035,  1307,  2915,  2432,  1222,  2450,  1305,  2920,  1684,
+    1306, -1940,  1278,   872,  1307,  1303,  1304,  1303,  1304,  1303,
+    1304,  3397,  2927,  3398,  1305,  1303,  1304,  1306,  1514,  1307,
+   -1941,  2473,  1660,  3731,  2569,  3409,   906,  2153,  2154,  1985,
+    1783,  1307,  1985,  1307,  1275,  4720,  2600,  1303,  1304,  3310,
+    3419,   625,  3200,   922,  3811,  3732,  2942,  4474,  1303,  1304,
+    1303,  1304,  3420,  1562,  4073,  2498,  1303,  1304,  1303,  1304,
+    1303,  1304,  1615,  2497,   658,  2601,  1307,  4475,  1620,  1621,
+     812,  1307,  1303,  1304, -2318,  1305,   658,   668,  1306,  3200,
+    3200,  1514,  2010,   996, -1713,   292,  3415,   294,  3621,   898,
+     658,  2449,   626,  1453, -2318,  1388,  1279,   134,  2251,   711,
+    1388,  3031,  1784,  2523,  2625,  2532,  2532,  1515,  2532,  3081,
+     865,  1303,  1304,  2999,  2533,  2533,  1126,  2533,   964,  3200,
+   -2438,   701,  4147,  4735,  4736,  3758,   953,  1303,  1304,  1303,
+    1304,  4148,  2556,   955,  1879,  2602,  1430,  4335,   668,  1307,
+   -2438,   658,  2662,  1307,   975,   658,  4339,   900,  2399,  3002,
+    1303,  1304,  3061,   977,  1307,  4045,  3217,   147,   538,  2369,
+     997,   539,  3666,  2371,   949,  1465,  2581,  1070,  3246,   627,
+    1515,  1077,   668,   668,   658,   658,   658,  1303,  1304,  1099,
+     949,   949,  1307,  1303,  1304,   967,  2532,  2532,  2532,  1243,
+     668,  1305,  1307,  1563,  1306,  2533,  2533,  2533,  1303,  1304,
+     135,  1307,  2386,   152,   153,   668,  2577,  1021,  1305,  2399,
+    3894,  1306,  2387,  1307,  2603,  1564,  4079,  2882,   136,  2645,
+    2634,  2395,  1100,  1505,   703,  1026,  2635,  4805,   658,  2339,
+    1303,  1304,  1101,  2409,  2881,  1307,  1103,  1649,  1022,  1443,
+    1307,  1305,   148,   668,  1306,  1113,  1303,  1304,  2366,  1111,
+    2535,  1307,  2536,  1114,   538,  2410,  1565,   539,   538, -2795,
+    1022,   539,  1305,  3574,  3217,  1306,  1799,  4060,  1307,  4149,
+    4218,  2414,  3243,  4219,  1305,  1982,  3753,  1306,  1983,  4837,
+    2686,  1984,  4839,  1305,  2368,  1340,  1306,  1305,  2418,   137,
+    1306,  1116,  3581,  1303,  1304,  1303,  1304,  1303,  1304,  2367,
+    1340,  3872,  2687,  2695,  1305,  3781,  3782,  1306,   590,  1693,
+    1694,  2680,   658,  2683,  4855,  1115,  2285,   949,  3503,  3503,
+    3503,  3503,  1030,  1011,  1320,  1303,  1304,   149,  3796,  1307,
+    2614,  2615,  2616,  2229,   909,  1305,  1303,  1304,  1306,  2286,
+   -1827,  2713,   533,  3517,  1148,   533,  1778,  1305,  1151,  2419,
+    1306,  1305,  1303,  1304,  1306,  1123,  1739,  2373,  2374,  1303,
+    1304,   596,  1142,  3804,  1148,  2636,  1303,  1304,  2714,  1803,
+    1156,  1303,  1304,   138,  1305,  1162,  1305,  1306,  1305,  1306,
+    3243,  1306,  2637,  1166,  1305,  1170,  2824,  1306,  3318,  1536,
+   -1827,  1183, -1827,  2727,  2638,   658,  1190,   658,  2346,  1650,
+    1191,  1536,  2734,  2735,  1879,  1192,  1305,  2392,  1340,  1306,
+    1779,  1303,  1304,  2479,  3384,  2400,  1340,  1305,  1344,  1305,
+    1306,   628,  1306,   538,  2285,  1305,   539,  1305,  1306,  1305,
+    1306,  2604,  1306,  2991,  2402,  1340,  1194,  -679,  3576,  1780,
+   -2800,  1305, -1827,   629,  1306,  1307,   949,  2286,  2889,  2403,
+    1836,   949,  3217,  1879,  2415,  1340,   998,   999,  1000,  1001,
+    1002,  1003,  1307,  1195,  3218,  2423,  2590,  2884,  4204,  1196,
+    2887,  4207,  4208,  1804,  2591,  3694,  2639,  1807,  1004,   630,
+    1305,  3161,  2426,  1306,  1808,  1199,  2895,  1200,  4220,  1466,
+     668,  1201,  3245,  1202,  2981,  1307,  1305,  1340,  1305,  1306,
+    1203,  1306,   668,  1974,   139,  3734,  4229,  1094,  1095,  1781,
+    1096,  1204,  1097,  1205, -1145,  2429,  1307, -1145,  1206,  1305,
+    1323,  1207,  1306,   898,  1208,  3004,  1443,  1209,  1307,  1985,
+    1985,  1985,  2416,  1340,  4520,  4596,  2441,  1307,  4527,   631,
+    1254,  1307,  1089,  1320,  2417,  1340,  1305,  1348,  2460,  1306,
+    2956,  1210,  1305,  4742,  1211,  1306,  4741,  3361,  1307,  2421,
+    1340,  3385,  1273,  1320,  1212,  1809,  3363,  1305,  -679,  1216,
+    1306,  1218,  3939,  1219,   641,  1286,  1287,   140,  2069,  2069,
+    2069,  2636,  1303,  1304,  3244,  1126,  1126,  1126,  1782,  1307,
+    1220,  2640,  1343,  2592,  2593,   668,  1030,  1011,  2637,  1305,
+    3245,  1307,  1306,  1223,  3452,  1307,  2970,  1340,  1057,  3391,
+    3106, -2795,  2285,  1224,  3540,  1305,  3015,  3016,  1306,  1225,
+    3000,  3394,  2537,  1811,   668,  3401,   668,   668,  1307,  1392,
+    1307,  1226,  1307,  3210,  3211,  2286,  2538,  1227,  1307,  2594,
+    1228,  3740,   141,  3743,  3087,  3746,   949,  1360,  3405,  1398,
+     668,  1389,  3406,   668,  3857,  1229,   949,   949,   949,   949,
+    1307,  3583,  1305,  2641,  1305,  1306,  1305,  1306,  1126,  1306,
+    1230,  1307,  1231,  1307,  3380,  2374,  1232,  3891,  1233,  1307,
+    3407,  1307,  1236,  1307,  3383,  1340,  3411,  1340,  1237,  4282,
+    3895,  3408,  3048,  3410,  1305,  1307,  1238,  1306,  2539,  3413,
+    2540,  3418,  2091,  3421,  1244,  1305,  4269, -2795,  1306,  4520,
+    3529,  3530,  1393,  1245,  2881,  3423,  4527,  1394,  3074,  1246,
+    2599,  1305,  3077,  3667,  1306,  3533,  3534,  1247,  1305,  3358,
+    1879,  1306,  3816,  1340,  1307,  1305,   668,   668,  1306,  1323,
+    1305,  2255,  1248,  1306,  3678,   668,  3679,  2662,  1536,  1249,
+    1307,  1250,  1307,  2092,  3425,  2092,  2092,  1251,  3523,  1323,
+    1252,  1395,  1255,  3613,  1256,  1812,  3642,  3620,  3837,  3838,
+    3427,  1391,  3428,  1307,  3852,  3853,  3123,  1396,  3125,  1257,
+    1305,  1814,   668,  1306,  2600,  3549,  4037,  4038,  -679,  1258,
+    3680,  1259,  2541,  3429,  1260,  4502,  4503,  2327,  2599,  1261,
+    1307,  3669,  1262,  1022,  2327,  1783,  1307,  3107,  4039,  4040,
+    4070,  1263,  3122,  2601,  3681,    78,  1303,  1304,  1264,  1727,
+    3801,  1307,  3935,  1265,  1879,  1880,  3802,  1266,  1330,  1331,
+    1332,  1333,  1334,  1335,  1267,  3166,  3179,  3180,  2301,  2302,
+     533,  3803,  4041,  4042,  1268,   658,   658,  2542,   668,   668,
+    3682,  1269,  3666,  1307,  2315,  1270,  3949,  1271,  2233,  1272,
+    4831,  1276,  2600,  4048,  4057,  1319,  3171,  3953,  1277,  1307,
+    3955,  1280,  2234,  4068,  2255,  4074,  1340,  4762,  4595,  2641,
+   -1913,  1281,  1583,  2602,  1310,  3646,   643, -1913,  -679,  4072,
+    1284,  2601,  1325,  1326,  1288,  4458,  4459,  4460,  2871,  3203,
+    3204,  3205,  3206,  3217,  3208,  3209,  4088,  1340,  4089,  4090,
+    4107,  4108,  1325,  1326,  1584,  3218,  1307,  1289,  1307,  1400,
+    1307,  1311,  1795,  1796,  1797,  1798,  1799,  3279,  4241,  4242,
+    2327,  1412,  1290,   949,  1291,  4245,  4078,  1401,  4080,  1410,
+    4081,  1728,  3294,  4520,  4527,  1729,  1292,  3156,  1307,  2301,
+    2302,  4371,  4344,  4345,  3308,  1293,  1730,  2246,  3317,  1307,
+    1342,  2602,  2603,  4506,  2246,  2315,  2635,  1585,  4082,  -679,
+    1411,  4905,  1586,  1312,  1418,  1307,  4209,  4214,  1320,  4083,
+    4215,  1409,  1307,  2317,  2318,  1313,  2491,  4348,  4345,  1307,
+    4432,  4433,  4501,  3534,  1307,  4356,  4514,  4345,  1420,  4225,
+    4545,  4546,  4452,  3324,  3325,  4232,  3327,  1422,  3329,  3330,
+    3331,  3332,  3333,  3334,  3335,  1426, -1617,  3338,  3789,  -679,
+    3343,  1320,  4553,  4554,  3346,   641,  1800,  1801,  1802,  1803,
+    1444,  2871,  2069,  1449,  1307,  2256,  4555,  4554,  1447,  1126,
+    2603,  2235,  4598,  4599,  3483,  1328,  1329,  1330,  1331,  1332,
+    1333,  1334,  1335,  3683,  1869,  1870,  4654,  3853,  4686,  4687,
+    4716,  3534,  4275,  2285,  1477,  1328,  1329,  1330,  1331,  1332,
+    1333,  1334,  1335,  3817,  1314, -1617,  2328,  1459,  2543,  2544,
+    2545,  1479,  1944,  2328,  1321,  1495,  2286,  1497,  1731,  1944,
+    2246,  1498,  4717,  3534,  2317,  2318,  1499,  3684,  4734,  3211,
+    1021,  4751,  4345,  4753,  4345,  2636,  1500,  1322,  1503, -1617,
+    1507,  2625,  4754,  4345,  1320,  4786,  4787,  2236,  1026,  4802,
+    4345,  1508,  2637,  4803,  4345,  1587, -1617,  2422,  4806,  4345,
+    1512, -1617,  1517,  1804,  2638,  1805,  1806,  1807,  1388,  1526,
+    2523,  1549,  2237,  1553,  1808,   668,  4809,  3853,  3495,  1417,
+     668,   668,   668,  4820,  4821, -1617,  1554,   658,  1558,  2329,
+    4838,  4345, -1617,  3927,  3501,  1577,  3930,  3931,  2256,  4371,
+    4852,  3736, -1617,  1578,  1323,  1579,  1778,  4894,  4895,  2604,
+    3048,   668,  3506,  3507, -1617,  1305,  1732,  1880,  1306, -1617,
+    3831,  3832,  1580,  1599,   152,   153,  4105,  4106, -1617,  1603,
+    1588,  1604,  1243,  1609,  1618,  2238,   668,   668,   668,  2328,
+    1619,  4392,   668,  3050,  1626,  1944,  2639,  1323,  1627,  2092,
+    4396,  4690,  1629,  3219,  1634,  1809,  1641,  1677,  1683,  4418,
+    1687,  4389,  1685,  1690,  4420,  1691,  1695,  1698,  3555,  -679,
+    1779,  2899,  1699,  4739,  3564,  1707,  4389,  1708,  1709,  1710,
+    1719,  1736,  1737,  1745,  1338,  1057,  1747,  2604,  1751,  1758,
+    1777,  1788,  1057,  1824,  1589,  4476, -1617,  2900,  1778,  3194,
+    1835,  1324,  3650,  4477,  1836,  1837,  1860,  4390,  4391,   292,
+    3563,   294,  1810,  1811,  1877,  1888,  4532,  1919, -1617,   668,
+    4394,  1913,  1940,  3594,   533,  1897,  3597,  4397, -1617,  1948,
+    4478,  2239,   658,  1956,  1939,   658,  3294,  1953,  4422,  4423,
+    1323,  1957,  1958,  1959,  2330,  1960,  1961,  1443,  1963,  1977,
+    3591,  1964,  1976,  2901,  1978,  1979,  2902,  1325,  1326,  2009,
+   -1617,  2640,  1779,  2013,  2903,  2018,  2021,   643,  1945,  3195,
+    1879,  2023,  3294,  1327,  2026,  1945,  4398,  2027, -1913,  2040,
+    3629,  3627,  3294,  2904,  2048,  4291,  3639,  2049,  3638,  2050,
+    2051,  1780, -2489,  1315,  1316,  1317,  2057,  2060,  4594,  2064,
+    1325,  1326,  2065,   668,  3638,  3353,  2066,  2106,  2067,  3659,
+    3663, -1617,  2868,  1590,  1880,  3675,  3674,  2110,  1057,  4109,
+    2108,  4399,  3676,  3677,   658,  2109,  3640,  3641,  4454,  1528,
+    2114,  4400,  4597,  2641,  2119, -1617,  3638,  2142,  2150,  2151,
+    2155,  2178,  2179,  3294,  3700,  2180,  2181,  2184,  3196,  3713,
+    -679,  2183,  1591,  4479,  3673,  1812,  2185,  2201,  2211,  2599,
+    2215,  1781,  3686,  2220,  2206,  2231,  3638,  2253,  2273,  1307,
+    1813,  1814,  2274,  2599,  2290,  2289,  3688,  2292,  2293,  2325,
+    4401,  2343,   949, -1617,  2341,  3712,  2905,  2349,  2355,  2390,
+    4292,  4293,  2357,  1325,  1326,  4294,  4295,  4296,  4173,  2599,
+    3556,  1945,  1443,  2358,  2359,  3747,  2381,  2382,  2383,  3750,
+    1328,  1329,  1330,  1331,  1332,  1333,  1334,  1335,  2388,  2389,
+    1320,  2399,  2393,  2600,  2404,  2439,  2599,  2408,  2468,  3690,
+    2440,  2412,  4480,  2465,  -687,  1778,  2472,  2600, -1617,  2430,
+    1782,  2431,  4398,  4614,  4615,  2436,  4617,  2451, -1296,  1320,
+   -1617,  4481,  2601,  1328,  1329,  1330,  1331,  1332,  1333,  1334,
+    1335,  1335,  2452,  2600,   874,  2453,  2601,  2478,  2488,  2510,
+   -1617,  4707, -1617, -1442,  4482,  2500,  4569,  2503,  2509,  1221,
+     292,  4666,   294,  4668,  1274,  1278,  2526,  4399,  1413, -2134,
+    2600,  2906,  2601,  1536,  2557,  1879,  2527,  4400,  2563,  1779,
+    1724, -1617, -1617,  3815,  2571, -1617, -1617,  2724,  2725,  4667,
+    2568,  3123,  -856,  2574,  2598,  2606,  2611,  2612,  4264,  2601,
+    2618,  2613,  2602,  4594,  2736,  2629,  3402,  2630,  3194,  2644,
+    2648,  2650,  4763,  2748,  2749,  2656,  2602,  2635,  2654,  2658,
+    2664,  2665,  2666,  2671,  2669,  2670,  4401,  3122,  1330,  1331,
+    1332,  1333,  1334,  1335,   875,  2672,  2673,  2681,  2685,  2689,
+    2698,   721,  2602,  3048,  2699,  3197,  2703,  2701,  2704,  4577,
+    2529,  4713,  2721,  4714,  4715,  4584,  1412,  2722,  2726,  2728,
+    2729,   949,  2730,  4646,  3074,  3864,   877,  2731,  3866,  2602,
+     668,  2732,  2733,  2825,   668,  1536,  2829,  2830,  3195,  2836,
+    2862,  2603,   878,  2863,  2635,  2864,  2865,  2866,  2867,  1505,
+    2834,  2839,   152,   153,  2870,  2603,  1323,  2840,  4403,  3000,
+    4825,  4402,  2841,  2842,  1994,  4404,  1022,  1022,  1995,  1320,
+    2843,  2844,  2845,  1880,  2846,  2847,  2907,  2898,  3904,  2885,
+    1996,  2603,  2848,  3915,  4365,  1323,   292,  2849,   294,  2850,
+    2851,   748,   658,  1057,   949,  4692,  2852,  1783,  2853,  2854,
+    2855, -1617,  2856,   882,  3922,  4405,  2857,  3896,  2603,  4483,
+    2858,  2889,  2922,  2859,  3929,  2860,  2636,  3196,  -856,  2923,
+    2861,  2893,  3932,  3638,  1879,  2979,  3294,  2921,  3008,  4825,
+    2997,   883,  3013,  2637,  3022,  1879,   668,   884,   721,  1879,
+    3638,  2496,  3294,  3294,  1879,  2638,  2908,  2934,   752,  2935,
+    2947,  2969,  4890,  3026,  3027,   753,  3294,  3638,  2978,  2987,
+   -1617,  2635,  2996,  4898,  3024,  3014,  3028,  4890,  3638,  3033,
+    3764,  3638,  4898,  3941,  3025,  2909,  3037,   885,  4406,  3038,
+    3039,  3051,  3947,  2636,   758,   759,  3052,  2035,  3055,  3959,
+    3056,  3064, -1617,  3057, -1617,  3958,  3078,  3079,   658,  4487,
+    2637,  3082,  3083,  4013,  3084,  3088,  3089,  3095,  4014,  1325,
+    1326, -1617,  2638,  3102,  3103,   533, -1617,  3104,   152,   153,
+    3116,  4365,  3117,  4029,  4403,  3119,  3765,  2639,   748,  3766,
+    3317,  4404,  3128, -1617,  3129,  2127,  2128,  3767,  1325,  1326,
+   -1617,  4022,  3138,  3164,  3151,  3165,  3167, -1617,  3172,   949,
+    3190,  3178,  3191,  3463,   767,  3217,  3768, -1617,  2604,  3229,
+    3234,  3235,  3238,  3464,  3239,  1323,  3241,  4875,  3242, -1617,
+    3248,  4405,  2604,  3251, -1617,  3260,  3250,  3465,  3252,  3259,
+    3265,  3271,  3299, -1617,  3266,   752,  4407,  3272,  3282,  3466,
+    3467,  3468,   753,  3312,  2639,  3320,  3311,  3321,  2604,  4572,
+    2636,  3769,  3322,  3351,  4159,  2350,  3364,  3369,  3469,  4798,
+    1997,  3355,  3375,  3377,  3378,  3379,  4128,  2637,   778,  3386,
+    3387,   758,   759,  3430,  3440,  2604,  3462,  3441,  4558,  2638,
+     888,  3445,   782,   783,  3197,  3449,  3451,  3456,  1998,  3459,
+    4113,   640,  2640,  3484,  4406,  4118,  1999,  3485,  3460,  3490,
+    1880, -1617,  3492,  3497,  3508,  1451,  3509,  3512,  4094,  3770,
+    3518,  3519,  1328,  1329,  1330,  1331,  1332,  1333,  1334,  1335,
+    3525,  3531,  3536, -1617,  3528,  3550,   891,   990,  4487,  3554,
+    3566,  3567,  3570, -1617,  3578,  3577,  3579,  3582,  3168,   892,
+    2000,   767,  1329,  1330,  1331,  1332,  1333,  1334,  1335,  4901,
+    3593,  3590,  3624,  3645,  3647,   668,  2791,  4163,  4163,  2640,
+    3714,  2639,  3294,  3721,  2641, -1617,   949,  3709,  1325,  1326,
+    3728,  4175,   949,  3729,  3294,  3294,  3736,  3735,  3733,   641,
+    3294,  4867,  3638,  4132,  3761,  4146,  3294,  3784,  3780,  3785,
+    3792,  2001,  3793,  3805,  1880,  3822,  3435,  1536,  3638,  3823,
+     658,  2457,  4407,  3824,  3825,   778,  4882,  3840,  3842,  3846,
+    3848,  3771,  3854,  3876,  3772,  2590, -1617,  -886,  3856,   782,
+     783,   895,  3877,  4302,  3910,  3905,  3227,  3911,  3913,  3230,
+    3231,  2641,  3233,  3914,  3918,  3236,  3237,  3924,  3916,  3240,
+   -1617,  3917,  3923,   896,  3249,   897,  3925,   549,  3946,  3253,
+    3254,  3255,  3256,  3257,  3938,  3950,  3956,  3261,  3262,  3957,
+    3264,  4016,  4024,  4017,  4020,  4023,  3273,  3274,  3275,  3276,
+    4251,  4027,  3280,  3281,  4028,  3283,  2640,   804,  3470,  4032,
+    4033,  4366,  4036,  4043,  4367,  4058,  4034,  2092, -1617,  4061,
+    4063,  3773,  4046,  4047,  4076,   810,  3471,  4075,   668,  4077,
+     812,  4048,  4049,   813,  4247,  4091,   550,  4065,  2761,  4066,
+    2762,  4067,  4071,  4085,  4093,  4086,  4103,  4112,  4114,  4125,
+    4123,  1328,  1329,  1330,  1331,  1332,  1333,  1334,  1335,  4108,
+    3565, -1529, -1534,  4135,  4140,  4143,   551,  4144,  4160,  3352,
+    4158,  3540,  4165, -1617,  4169,  2764,  4176,  4181,  2641,  4182,
+    4183,  4190,  4198,  4205, -1617, -1617,  4206,  1795,  1796,  1797,
+    1798,  1799,  4240,  2767,  4368,  4369,  4444,  4221,  3297,  4246,
+    4248,  2768,  4257,   552,  4233, -1617,  4057, -1617,  4274,  3077,
+    2233,  4279,  4280,  4285,  4330,  4286,  4281,  4287,  3904,  4288,
+    4300,  4301,  4304,  1413,  2234,  1362,  4305,  3904,  2770,  4314,
+    4318,   989,  4320,  4337,  4163,  4338, -1617, -1617,  4342,  3472,
+   -1617, -1617,  1677,  4340,   804,  2771,  4347,  3294,  4366,  4377,
+     553,  4367,  4380,  4230,  4393,  4373,  4416,  3473,  4445,  3774,
+    4446,  4447,   810,  4374,   658,  4449,  4453,   812, -2727,  4450,
+     813,  4455,  4379,  4457,  4469,  4466,  2776,   642,  4488,  4510,
+    4489,  4490,  4491,  4498,  4500,  4507,  4513,  4524,  3775,  4537,
+    4544,  1800,  1801,  1802,  1803,  4550,   949,  4539,  -143,  4487,
+    4561,  4540,  4562,  4563,  4564,  4567,  4414,  4565,  4568,  4575,
+    4570,  4573,  4585,  4586,  4424,  4601,  4425,  4604,  4605,  3474,
+    4610,   643,  4613,  4616,  4618,  2761,  4619,  2762,  1363,  4442,
+    4623,  4368,  4369,  4441,  4626,  4641,  3475,  4671,  4672,  4678,
+    4684,  4648,   292,  4652,   294,  4655,  4691,  4656,  4709,  4659,
+    4662,  2780,  4669,  2783,  1364,  2758,  4673,  1365,  2781,  -826,
+    -826,  4767,  2764,  4679,  4694, -1751,  4467,  4697,   558, -1700,
+    -826,  4768,  2662,  2782,  4769,   658,   -69,  4789,  4473,  4790,
+    2767,   554,  4750,  4795,  4776,  4791,   853,  4797,  2768,  4792,
+    4799,  4794,  4800,  2235,  1366,  4810,  4813,  4814,  1804,  4815,
+    1805,  1806,  1807,  1481,   644,  4817,  4816,  4818,  4841,  1808,
+    3704,  4840,   645,  1482,  1367,  2770,  4845,  4851,   949,  4163,
+     292,   947,   294,  4848,  4863,  4866,  4868,  1483,  4870,  1677,
+    2784,   947,  2771,   555,  4872,  4874,  4876,  4891,  4879,  1484,
+    1485,  1486,  4900,   949,  1445,  3007,  4880,  3345,  1067,  2785,
+    3126,  4267,  4265,  4266,   556,  4631,  1598,  3609,  1487,  1661,
+    4341,  4630,   853,  2776,  4733,  4835,  1689,  4833,  4509,  2236,
+    4688,  4259,   611,   668,  1069,  2608,  2519,  1368,  4110,  3477,
+    2838,  1169,  3502,  3042,  3044,  3043,  1738,  2499,  4529,  4414,
+    1809,   152,   153,  4651,  2237,  2808,  2267,  3286,  3952,  3511,
+    4116,  1369,  3516,  3847,  2789,  4696,  2790,  4578,  4582,  2038,
+    4557,  4775,  4119,  4468,  2792,  4865,  4828,  4850,  4612,   557,
+    2708,  4350,  3284,  4788,   558,  4168,  3699,  3706,  3291,   292,
+    4871,   294,  4765,  3777,   853,  4005,  4213,  3643,  2780,  4552,
+    1880,  4239,  4566,   559,  4774,  2781,  4556,  1810,  1811,  3188,
+    3652,  4271,  3432,  3808,  3806,  3810,  4836,  2238,   853,   649,
+    2782,   650,  4807,   853,  4808,  4723,  4358,  4738,   560,  4650,
+    4645,  4523,  3077,  4395,  3077,  3288,  3698,  1623,  1697,  2828,
+    4376,  4771,  4708,  3155,   561,  1362,  2798,  2202,  2326,  3060,
+    4185,  2281,  3034,  2580,  3841,  3494,  4571,  3085,  1521,  2977,
+    1640,   853,  1513,  2651,  3818,  4764,  1370,  2914,  2912,  1834,
+    3458,  4163,   952,  4163,  4163,  1371,  3111,  2784,   853,  3873,
+    4663,  3108,  3447,  4625,  4829,  4639,  4035,  4504,  4830,  4087,
+    1372,  1776,  2994,  4193,  3544,  3812,  2785,  2208,  2209,  4333,
+    4589,  3693,  4832,  4677,  2799,  2800,  2801,  4331,  1373,  4332,
+    2883,  2802,  3542,  2239,   651,  2055,  3032,  4442,  2011,  3067,
+    3859,  4441,   853,   853,   853,   853,  4121,  2803,  3860,  3898,
+    2804,  2348,  4772,  4473,   853,  1083,  1189,  2691,  1488,  4676,
+    2692,  2167,  1063,   668,  3152,  3004,  1673,  1066,  1363,  2805,
+    1812,  2789,  1374,  2790,  4732,  1375,  1489,   656,  4197,  4284,
+    2513,  2792,  3845,   658,  2063,  1813,  1814,  2807,  4864,  1380,
+    4492,  1283,  4701,  4702,  1364,  4620,  4873,  1365,  4899,  4902,
+    4746,  4560,  2112,  3137,  3863,  1376,  3893,  1024,  1025,  4163,
+    4163,  2676,  2471,  4163,  4723,  3135,  3134,  2562,  4834,  2213,
+    2073,   985,  3080,  1496,   538,  2002,  4456,   539,  3023,  3478,
+     853,  4465,  3717,   987,  1366,  1502,  4745,  1664,  4827,  2296,
+    1108,  4582,  1109,  2216,  1665,  1880,   947,   947,  1110,  1666,
+     947,     0,     0,  2798,  1367,     0,     0,     0,     0,     0,
+     292,     0,   294,     0,     0,     0,   668,     0,     0,     0,
+     853,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   947,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,  4783,  4784,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  4163,     0,     0,     0,     0,     0,
-    2296,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    4903,     0,     0,     0,  1370,     0,     0,     0,     0,     0,
-       0,     0,     0,  1371,  2799,  2800,  2801,     0,     0,   668,
-    4893,  2802,     0,     0,     0,  3317,  3317,     0,  1372,     0,
-       0,     0,     0,     0,     0,     0,     0,  2803,     0,     0,
-    2804,     0,     0,     0,     0,     0,  1373,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,  2805,
+       0,     0,     0,     0,  4163,     0,     0,  1490,     0,     0,
+       0,  2799,  2800,  2801,     0,     0,     0,  1368,  2802,     0,
+    4903,     0,     0,     0,     0,  2297,     0,  2298,     0,     0,
+       0,     0,     0,     0,  2803,     0,     0,  2804,     0,   668,
+    4893,  1369,     0,     0,     0,  3317,  3317,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,  2805,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  1491,
+       0,     0,     0,     0,  2807,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,  2299,  1492,  2300,  2301,  2302,
+    2303,  2304,     0,  2305,  2306,  2307,  2308,  2309,  2310,  2311,
+    2312,  2313,     0,  2314,  2315,  2316,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,  2297,  2807,  2298,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    1374,     0,     0,  1375,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,  1880,     0,     0,     0,  3607,     0,
+       0,   668,     0,     0,     0,  1880,  1370,     0,  4869,  1880,
+       0,     0,     0,     0,  1880,  1371,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  1880,     0,     0,     0,     0,     0,
-       0,   668,     0,  1376,     0,  1880,     0,     0,  4869,  1880,
-       0,     0,     0,     0,  1880,     0,  2299,  3182,  2300,  2301,
-    2302,  2303,  2304,     0,  2305,  2306,  2307,  2308,  2309,  2310,
-    2311,  2312,  2313,     0,  2314,  2315,  2316,     0,     0,     0,
-     853,     0,     0,   853,   947,     0,     0,     0,     0,     0,
+    1372,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     853,     0,     0,   853,   947,     0,     0,     0,  1373,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,   853,   853,
        0,     0,     0,     0,     0,     0,     0,   853,   853,   853,
      853,   853,   853,   853,   853,   853,   853,   853,   853,     0,
-       0,     0,     0,     0,     0,     0,     0,   853,   853,     0,
+       0,     0,  1374,  2317,  2318,  1375,     0,   853,   853,     0,
      853,   853,     0,     0,     0,   853,   853,     0,     0,   853,
      853,   853,   853,     0,   853,   853,   853,     0,     0,     0,
-       0,     0,     0,   853,   853,     0,   853,   853,   853,   853,
+       0,     0,     0,   853,   853,  1376,   853,   853,   853,   853,
      853,     0,     0,   853,   853,   853,   853,   853,   853,   853,
      853,   853,   853,   853,     0,   853,     0,     0,   853,   853,
        0,     0,     0,   853,     0,     0,     0,   853,   853,   853,
-       0,     0,     0,     0,  2317,  2318,     0,     0,     0,   853,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   853,
      853,   853,     0,     0,     0,     0,     0,     0,   853,     0,
        0,     0,     0,     0,     0,   853,   853,   853,   853,     0,
        0,     0,     0,     0,     0,     0,   853,   853,   853,     0,
@@ -5294,120 +5299,120 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,  2763,
-       0,     0,     0,     0,  2764,  2765,     0,     0,     0,     0,
+    2761,     0,  2762,     0,  2764,  2765,     0,     0,     0,     0,
     2766,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,  2767,   853,     0,     0,     0,     0,     0,     0,
-    2768,     0,     0,     0,     0,     0,  1027,     0,     0,   853,
-    2769,     0,     0,     0,     0,     0,     0,     0,     0,  1028,
-       0,     0,     0,     0,     0,     0,     0,  2770,     0,     0,
-     956,  1029,     0,     0,     0,     0,     0,     0,     0,     0,
+    2768,     0,     0,     0,  -826,  -826,     0,  2764,     0,   853,
+    2769,     0,     0,     0,     0,  -826,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,  2767,     0,  2770,     0,     0,
+       0,     0,     0,  2768,     0,     0,     0,     0,     0,     0,
        0,  1677,     0,     0,  2771,     0,     0,     0,     0,     0,
-       0,     0,     0,  2772,  2773,  1030,  1011,     0,     0,     0,
-       0,  2774,     0,     0,     0,     0,     0,  1031,     0,  2775,
-       0,     0,     0,  -965,     0,  2776,     0,     0,     0,     0,
+       0,     0,     0,  2772,  2773,     0,     0,     0,     0,     0,
+    2770,  2774,     0,     0,     0,     0,     0,     0,     0,  2775,
+       0,     0,     0,  -965,  1677,  2776,     0,  2771,     0,     0,
        0,     0,     0,     0,     0,  2777,     0,     0,   853,     0,
-       0,     0,     0,  1032,     0,  1033,     0,  1034,     0,     0,
-       0,     0,     0,   853,     0,  2778,     0,     0,     0,  1035,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     853,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    15,    16,     0,     0,     0,     0,     0,     0,     0,
-       0,   292,     0,   294,     0,     0,     0,     0,  2779,     0,
-    2780,     0,     0,     0,     0,     0,     0,  2781, -1913,  1036,
-       0,     0,     0,  1037,     0,     0,  1038,     0,     0,     0,
-       0,     0,  2782,     0,     0,     0,     0,   853,     0,     0,
+       0,     0,     0,   853,     0,  2778,     0,     0,  2776,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  1039,  2783,  1040,     0,     0,
-       0,     0,     0,     0,     0,  1041,     0,  1042,     0,     0,
+     853,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   292,     0,   294,     0,  2784,
-       0,     0,     0,  1043,  1044,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,  2785,     0,
-       0,     0,  2786,     0,     0,  1045,     0,     0,     0,     0,
+       0,   292,     0,   294,     0,     0,     0,     0,  2779,     0,
+    2780,     0,     0,     0,     0,     0,     0,  2781,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  1046,     0,     0,
-       0,     0,     0,     0,     0,     0,   947,     0,     0,     0,
-       0,  2787,     0,  3696,     0,     0,  2788,     0,     0,  2758,
-       0,  2759,     0,  2789,     0,  2790,  1047,     0,     0,     0,
-    2791,     0,     0,  2792,     0,  2761,     0,  2762,     0,     0,
+       0,     0,  2782,     0,   292,     0,   294,   853,     0,     0,
+       0,     0,  1027,  2780,     0,     0,     0,     0,     0,     0,
+    2781,     0,     0,     0,     0,  1028,  2783,     0,     0,     0,
+       0,     0,     0,     0,     0,  2782,   956,  1029,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  3181,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  2784,
+       0,  1030,  1011,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,  1031,     0,     0,     0,     0,  2785,     0,
+       0,     0,  2786,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,  2784,     0,     0,     0,     0,     0,     0,  1032,
+       0,  1033,     0,  1034,     0,     0,     0,     0,     0,     0,
+       0,  2785,     0,     0,     0,  1035,   947,     0,     0,     0,
+       0,  2787,     0,     0,     0,     0,  2788,     0,     0,     0,
+       0,     0,     0,  2789,     0,  2790,     0,    15,    16,     0,
+    2791,     0,     0,  2792,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,   853,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  2793,     0,     0,  2763,     0,     0,
-       0,     0,  2764,     0,     0,     0,     0,     0,  2794,  2795,
+       0,     0,     0,     0, -1913,  1036,  2789,     0,  2790,  1037,
+       0,     0,  1038,     0,  2793,     0,  2792,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,  2794,  2795,
     2796,  2797,     0,     0,     0,     0,     0,     0,     0,     0,
-    2767,     0,     0,     0,  1048,     0,     0,     0,  2768,     0,
-       0,     0,     0,     0,     0,  2798,     0,     0,  2769,     0,
+       0,  1039,     0,  1040,     0,     0,     0,     0,     0,     0,
+       0,  1041,     0,  1042,     0,  2798,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    1049,     0,     0,     0,     0,  2770,     0,     0,     0,     0,
-       0,  1050,  1051,     0,     0,  1052,  1053,     0,     0,  1677,
-       0,     0,  2771,     0,     0,     0,     0,     0,     0,     0,
-       0,  2772,     0,     0,     0,     0,  1054,     0,     0,  3697,
-     853,   853,   853,  2799,  2800,  2801,     0,  2775,     0,     0,
-    2802,     0,     0,  2776,     0,   853,     0,     0,     0,     0,
+       0,   292,     0,   294,     0,     0,     0,     0,     0,  1043,
+    1044,     0,     0,     0,     0,     0,     0,     0,  2798,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,  1045,     0,     0,     0,     0,     0,     0,     0,     0,
+     853,   853,   853,  2799,  2800,  2801,     0,     0,     0,     0,
+    2802,     0,     0,  1046,     0,   853,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,  2803,     0,     0,  2804,
+       0,     0,     0,     0,     0,     0,  2799,  2800,  2801,     0,
+       0,   853,  1047,  2802,     0,     0,     0,   853,  2805,     0,
+     853,     0,   853,  2806,     0,     0,     0,     0,   853,  2803,
+     853,   853,  2804,     0,  4602,  4603,  2807,     0,  4606,  4607,
+    4608,  4609,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,  2805,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,  1380,     0,     0,     0,     0,     0,     0,  2807,
+       0,     0,     0,  1085,  4640,     0,     0,     0,     0,     0,
+    1048,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   853,     0,  2778,  1055,     0,     0,   853,  2805,     0,
-     853,     0,   853,  2806,     0,     0,     0,  1056,   853,     0,
-     853,   853,     0,     0,  4602,  4603,  2807,     0,  4606,  4607,
-    4608,  4609,     0,     0,     0,     0,     0,     0,     0,   292,
-       0,   294,     0,     0,     0,     0,     0,     0,  2780,     0,
-   -2533,     0,  1380,     0,  1057,  2781,     0,     0,  2761,     0,
-    2762,     0,     0,  1085,  4640,     0,     0,     0,     0,     0,
-    2782,     0,  1058,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,  -965,     0,  1049,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,  1050,  1051,     0,
+       0,  1052,  1053,     0,     0,     0,     0,     0,     0,     0,
+       0,  3182,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,  1054,   853,     0,  1168,     0,     0,     0,     0,
+       0,     0,   853,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,  4703,  4704,     0,     0,     0,     0,     0,     0,
+       0,  4712,     0,     0,  1197,     0,     0,     0,     0,     0,
+       0,   853,     0,     0,     0,     0,     0,     0,     0,     0,
+    1055,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,  1056,     0,     0,     0,     0,     0,     0,
+       0,     0,  1235,     0,   853,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  1253,
+       0,     0,     0,     0,     0,   853, -2533,     0,     0,     0,
+    1057,     0,     0,   853,     0,     0,     0,     0,     0,     0,
+       0,     0,   853,     0,     0,     0,     0,     0,  1058,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,  -965,     0,  2783,  2764,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,  1297,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,  2767,     0,     0,     0,     0,     0,     0,
-       0,  2768,     0,     0,     0,     0,     0,  2784,     0,     0,
-   -2533,     0,     0,   853,     0,  1168,     0,     0,  1059,     0,
-       0,     0,   853,     0,     0,     0,  2785,     0,  2770,     0,
-    2786,     0,  4703,  4704,     0,     0,     0,     0,     0,     0,
-       0,  4712,  1677,     0,  1197,  2771,     0,     0,     0,     0,
-       0,   853,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  2788,     0,  2776,     0,     0,     0,
-       0,  2789,  1235,  2790,   853,     0,     0,     0,     0,     0,
-       0,  2792,     0,     0,     0,     0,     0,     0,     0,  1253,
-       0,     0,     0,     0,     0,   853,     0,     0,     0,     0,
-       0,     0,     0,   853,     0,     0,     0,     0,     0,     0,
-       0,     0,   853,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  2795,     0,     0,
-       0,     0,   292,     0,   294,     0,  1297,     0,     0,     0,
-       0,  2780,     0,     0,     0,     0,     0,     0,  2781,     0,
-       0,     0,     0,  2798,     0,     0,     0,     0,     0,     0,
-       0,     0,   947,  2782,     0,     0,     0,     0,     0,     0,
+       0,     0,   947,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0, -2533,     0,     0,     0,
+       0,     0,     0,     0,  1059,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,  1419,     0,     0,     0,     0,  2823,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,  2799,  2800,  2801,     0,     0,     0,     0,  2802,     0,
-    2784,  1419,     0,     0,     0,     0,  2823,     0,     0,     0,
-       0,     0,     0,     0,  2803,     0,     0,  2804,     0,  2785,
        0,     0,     0,     0,     0,     0,     0,     0,   853,     0,
-       0,     0,     0,     0,     0,     0,  2805,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,  1450,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  2807,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  2789,     0,  2790,     0,     0,     0,
-       0,     0,     0,     0,  2792,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
      853,     0,     0,     0,   853,     0,     0,     0,     0,   853,
      853,     0,     0,     0,     0,     0,     0,     0,   853,     0,
      853,     0,   853,   853,   853,   853,     0,     0,   853,     0,
        0,     0,     0,     0,     0,     0,     0,     0,   853,   853,
        0,   853,   853,     0,   853,   853,   853,   853,     0,   853,
        0,     0,   853,     0,     0,     0,     0,     0,     0,     0,
-       0,   853,     0,     0,     0,     0,  2798,     0,   853,     0,
+       0,   853,     0,     0,     0,     0,     0,     0,   853,     0,
      853,     0,   853,   853,     0,   853,   853,     0,     0,     0,
      853,   853,   853,     0,     0,     0,   853,   853,   853,     0,
      853,     0,   853,     0,   853,     0,   853,     0,   853,     0,
        0,     0,     0,   853,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     853,     0,     0,     0,  2799,  2800,  2801,   853,     0,     0,
-     853,  2802,     0,     0,     0,     0,   853,     0,     0,   853,
-       0,     0,     0,   853,     0,     0,     0,  2803,     0,     0,
-    2804,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,  1716,     0,     0,  1717,     0,     0,     0,     0,  2805,
+     853,     0,     0,     0,     0,     0,     0,   853,     0,     0,
+     853,     0,     0,     0,     0,     0,   853,     0,     0,   853,
+       0,     0,     0,   853,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,  1716,     0,     0,  1717,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  2807,     0,  1749,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  1749,
     1750,     0,     0,     0,     0,     0,     0,   947,  1760,  1761,
        0,     0,  1764,  1765,  1766,  1767,  1770,  1771,  1772,  1773,
        0,     0,     0,   947,   947,   853,     0,   853,  1789,  1790,
@@ -5484,7 +5489,7 @@ static const yytype_int16 yytable[] =
        0,  2485,     0,  2486,     0,     0,     0,     0,     0,     0,
       60,     0,     0,  2823,     0,     0,     0,     0,    61,     0,
        0,     0,     0,     0,    62,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    63,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,    63,
     3966,     0,     0,  3967,     0,     0,   947,     0,     0,     0,
        0,  3968,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
@@ -5559,7 +5564,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,    60,    12,     0,     0,     0,
        0,     0,     0,    61,   947,     0,     0,     0,     0,    62,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-      13,     0,    63,     0,     0,     0,     0,     0,    14,     0,
+      13,     0,     0,     0,    63,     0,     0,     0,    14,     0,
       15,    16,     0,     0,     0,     0,     0,   853,     0,     0,
        0,   853,     0,    17,    18,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
@@ -5586,67 +5591,67 @@ static const yytype_int16 yytable[] =
        0,     0,  3412,     0,     0,     0,     0,     0,     0,     0,
      853,  3422,     0,  3424,    33,  3426,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   853,     0,   853,     0,     0,
-       0,    34,     0,    35,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    36,     0,     0,     0,
+       0,    34,     0,    35,     0,     0,     0,     0,     0,  3696,
+       0,     0,     0,     0,     0,  2758,    36,  2759,     0,     0,
        0,     0,  4522,     0,     0,     0,  4522,    37,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,  2761,     0,  2762,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,    38,
        0,     0,    39,     0,    40,     0,     0,    42,     0,     0,
-      43,    44,     0,     0,     0,     0,     0,     0,     0,     0,
+      43,    44,     0,  2763,     0,     0,     0,     0,  2764,     0,
        0,    45,     0,     0,    46,     0,     0,     0,     0,     0,
-       0,     0,    47,     0,     0,     0,     0,     0,    48,  4415,
-       0,     0,     0,     0,     0,     0,    49,     0,     0,     0,
-       0,    50,    51,    52,     0,     0,     0,     0,     0,   947,
+       0,     0,    47,     0,     0,     0,  2767,     0,    48,  4415,
+       0,     0,     0,     0,  2768,     0,    49,     0,     0,     0,
+       0,    50,    51,    52,  2769,     0,     0,     0,     0,   947,
        0,     0,     0,     0,     0,   947,     0,     0,  2626,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   853,     0,
-       0,     0,     0,     0,    53,     0,     0,     0,     0,     0,
-       0,     0,    54,     0,     0,  2626,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  2148,     0,     0,     0,     0,
+       0,  2770,     0,     0,     0,     0,     0,     0,   853,     0,
+       0,     0,     0,     0,    53,  1677,     0,     0,  2771,     0,
+       0,     0,    54,     0,     0,  2626,     0,  2772,     0,     0,
+       0,     0,     0,     0,     0,  3697,     0,     0,     0,     0,
+       0,     0,     0,  2775,     0,  2148,     0,     0,     0,  2776,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,    55,     0,     0,     0,
-       0,     0,  4522,     0,     0,     0,     0,  4522,    56,     0,
+       0,     0,  4522,     0,     0,     0,     0,  4522,    56,  2778,
        0,     0,    57,     0,  4522,    58,     0,     0,     0,     0,
       59,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-      61,     0,     0,     0,     0,     0,    62,     0,     0,     0,
-       0,     0,     0,   853,     0,     0,     0,     0,     0,    63,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   292,     0,   294,     0,     0,
+      61,     0,     0,     0,  2780,     0,    62,     0,     0,     0,
+       0,  2781,     0,   853,     0,     0,     0,     0,     0,     0,
+       0,    63,     0,     0,     0,     0,  2782,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+    2783,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,  4522,     0,     0,     0,     0,     0,  4740,
+       0,     0,     0,  2784,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,  2785,     0,     0,     0,  2786,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   853,     0,     0,     0,     0,     0,     0,     0,
      853,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,  3754,     0,     0,     0,     0,     0,     0,     0,
-       0,   853,     0,     0,     0,     0,     0,     0,     0,   947,
+    2788,     0,  3754,     0,     0,     0,     0,  2789,     0,  2790,
+       0,   853,     0,     0,     0,     0,     0,  2792,     0,   947,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,  3783,     0,     0,     0,  3787,  3788,     0,  4522,
        0,  4522,  4522,     0,     0,     0,     0,     0,  3795,     0,
        0,     0,     0,  3797,     0,     0,  3798,     0,  3799,  3800,
-       0,     0,     0,     0,     0,     0,     0,   853,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,  2795,     0,     0,     0,   853,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,  2798,
        0,  4522,     0,     0,  4522,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,  4522,     0,     0,  3834,
        0,     0,     0,     0,     0,     0,   853,     0,     0,     0,
-       0,   947,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,   947,     0,     0,     0,     0,     0,  2799,  2800,  2801,
+       0,     0,     0,     0,  2802,     0,     0,     0,     0,     0,
        0,     0,     0,  3834,     0,     0,   947,     0,     0,     0,
+    2803,     0,     0,  2804,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   853,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,   853,  2805,     0,     0,     0,     0,     0,     0,     0,
     3890,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+    2807,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     3834,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
@@ -5822,73 +5827,206 @@ static const yytype_int16 yytable[] =
      818,   516,     0,     0,   517,   819,     0,   820,   518,   519,
      520,   521,   522,   821,   822,     0,     0,     0,     0,     0,
        0,   525,   526,     0,   527,   528,   529,     0,     0,   823,
-       0,     0,     0,     0,     0,     0,     0,   824,   825,     0,
-       0,     0,     0,   826,   827,     0,     0,   828,   829,     0,
-       0,   830,   831,   160,     0,   161,   717,   163,   164,   165,
-     166,  2144,     0,   167,     0,     0,     0,   168,     0,     0,
-     718,     0,   170,   171,   172,   173,   174,   175,   176,   719,
-     178,     0,   179,     0,     0,  2145,   180,   721,   722,   723,
-     181,   724,     0,   182,   183,   184,     0,   185,     0,   186,
-     187,     0,     0,   188,   725,   726,   189,   190,     0,   191,
-     727,   728,   193,   194,     0,   195,   196,   197,   198,   729,
-     200,     0,   730,   202,   731,   732,   733,   734,   735,     0,
-     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
-     217,     0,   218,   219,   220,   736,   222,     0,   223,   737,
-     738,   224,     0,     0,   225,   739,   226,   740,   741,   227,
-       0,   228,   742,   743,     0,   229,   230,   231,   744,   745,
-     746,     0,     0,     0,     0,   747,   234,   748,     0,     0,
-    2146,   235,     0,   236,     0,     0,     0,     0,   237,     0,
-     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
-       0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
-     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
-     255,   256,   257,   258,   259,   260,   261,   750,     0,   262,
-     263,   264,   265,   751,   752,   266,   267,     0,   268,   269,
-     270,   753,     0,   271,     0,     0,     0,   754,   273,     0,
-     274,     0,   275,     0,   276,   277,   755,   279,   756,   281,
-     282,     0,   283,     0,   757,   284,   285,   286,     0,   287,
-     758,   759,     0,   288,   289,     0,     0,     0,   760,   291,
-     292,   293,   294,   761,     0,     0,   295,   296,   297,     0,
-       0,   298,     0,     0,     0,   762,   299,   300,   763,     0,
-       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
-       0,   306,     0,     0,   307,   308,   764,     0,     0,   310,
-       0,   765,   311,   312,     0,     0,     0,     0,     0,   766,
-     314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
-     767,     0,     0,     0,   319,   320,   321,   322,   323,   324,
-     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
-       0,   335,   336,   337,   338,   768,   339,   340,   341,   342,
-     769,   343,   344,   345,     0,     0,     0,     0,   346,   347,
-     348,   349,   770,   351,     0,     0,   771,   353,   772,   354,
-       0,   355,   773,   774,   775,   776,   777,   360,   361,   362,
-     363,   364,   365,     0,   778,   366,     0,     0,   367,   368,
-     369,   370,   779,   780,   781,   371,   372,     0,   782,   783,
-     373,     0,   374,   375,   784,  2147,   377,   378,   379,   380,
-       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
-       0,   383,   384,   385,     0,   785,   386,     0,   387,     0,
-     388,   389,   786,   391,   392,   393,   394,   787,   788,   397,
-     789,     0,   398,   399,   400,     0,   401,     0,   402,   403,
-     404,   405,   406,     0,   790,   408,   409,     0,     0,   410,
-       0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
-     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
-     424,   425,   791,   792,   426,     0,   427,     0,   428,   429,
-       0,   430,   431,     0,   432,     0,   793,     0,   794,   434,
-     435,   436,   437,   438,   439,   795,   796,   442,   443,   444,
-     445,     0,   797,   447,     0,     0,     0,   448,   449,   450,
-     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
-     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
-     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
-     467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
-     471,   472,     0,     0,     0,   473,   798,   799,   474,   475,
-       0,   476,   477,   800,   479,   480,   481,   801,   802,   482,
-     483,   484,   485,   803,   486,   487,     0,     0,   488,   489,
-     490,   491,     0,   804,   492,   493,     0,   805,   806,   807,
-     808,     0,     0,     0,     0,     0,   498,   499,   500,     0,
-     809,   810,   811,   502,   503,   504,   812,   505,   506,   813,
-     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
-     512,     0,   513,     0,   814,   515,     0,     0,   815,   816,
-     817,   818,   516,     0,     0,   517,   819,     0,   820,   518,
-     519,   520,   521,   522,   821,   822,     0,     0,     0,     0,
-       0,     0,   525,   526,     0,   527,   528,   529,     0,     0,
-     823,     0,     0,     0,     0,     0,     0,     0,   824,   825,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   824,
+     825,     0,     0,     0,     0,   826,   827,     0,     0,   828,
+     829,     0,     0,   830,   831,   160,     0,   161,   717,   163,
+     164,   165,   166,  2144,     0,   167,     0,     0,     0,   168,
+       0,     0,   718,     0,   170,   171,   172,   173,   174,   175,
+     176,   719,   178,     0,   179,     0,     0,  2145,   180,   721,
+     722,   723,   181,   724,     0,   182,   183,   184,     0,   185,
+       0,   186,   187,     0,     0,   188,   725,   726,   189,   190,
+       0,   191,   727,   728,   193,   194,     0,   195,   196,   197,
+     198,   729,   200,     0,   730,   202,   731,   732,   733,   734,
+     735,     0,   208,   209,   210,   211,   212,   213,   214,   215,
+       0,   216,   217,     0,   218,   219,   220,   736,   222,     0,
+     223,   737,   738,   224,     0,     0,   225,   739,   226,   740,
+     741,   227,     0,   228,   742,   743,     0,   229,   230,   231,
+     744,   745,   746,     0,     0,     0,     0,   747,   234,   748,
+       0,     0,  2146,   235,     0,   236,     0,     0,     0,     0,
+     237,     0,   238,   239,   240,   241,   242,     0,     0,     0,
+       0,   243,     0,     0,   244,   245,   246,     0,     0,     0,
+     247,     0,   248,   249,     0,   250,   251,   252,     0,   253,
+     254,     0,   255,   256,   257,   258,   259,   260,   261,   750,
+       0,   262,   263,   264,   265,   751,   752,   266,   267,     0,
+     268,   269,   270,   753,     0,   271,     0,     0,     0,   754,
+     273,     0,   274,     0,   275,     0,   276,   277,   755,   279,
+     756,   281,   282,     0,   283,     0,   757,   284,   285,   286,
+       0,   287,   758,   759,     0,   288,   289,     0,     0,     0,
+     760,   291,   292,   293,   294,   761,     0,     0,   295,   296,
+     297,     0,     0,   298,     0,     0,     0,   762,   299,   300,
+     763,     0,     0,   301,     0,   302,   303,     0,   304,   305,
+       0,     0,     0,   306,     0,     0,   307,   308,   764,     0,
+       0,   310,     0,   765,   311,   312,     0,     0,     0,     0,
+       0,   766,   314,     0,   315,     0,   316,     0,   317,   318,
+       0,     0,   767,     0,     0,     0,   319,   320,   321,   322,
+     323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
+     333,   334,     0,   335,   336,   337,   338,   768,   339,   340,
+     341,   342,   769,   343,   344,   345,     0,     0,     0,     0,
+     346,   347,   348,   349,   770,   351,     0,     0,   771,   353,
+     772,   354,     0,   355,   773,   774,   775,   776,   777,   360,
+     361,   362,   363,   364,   365,     0,   778,   366,     0,     0,
+     367,   368,   369,   370,   779,   780,   781,   371,   372,     0,
+     782,   783,   373,     0,   374,   375,   784,  2147,   377,   378,
+     379,   380,     0,   381,   382,     0,     0,     0,     0,     0,
+       0,     0,     0,   383,   384,   385,     0,   785,   386,     0,
+     387,     0,   388,   389,   786,   391,   392,   393,   394,   787,
+     788,   397,   789,     0,   398,   399,   400,     0,   401,     0,
+     402,   403,   404,   405,   406,     0,   790,   408,   409,     0,
+       0,   410,     0,     0,     0,   411,   412,   413,   414,   415,
+       0,     0,   416,   417,   418,   419,   420,     0,   421,   422,
+       0,   423,   424,   425,   791,   792,   426,     0,   427,     0,
+     428,   429,     0,   430,   431,     0,   432,     0,   793,     0,
+     794,   434,   435,   436,   437,   438,   439,   795,   796,   442,
+     443,   444,   445,     0,   797,   447,     0,     0,     0,   448,
+     449,   450,   451,     0,     0,     0,   452,     0,     0,     0,
+     453,     0,   454,   455,   456,   457,   458,   459,     0,   460,
+     461,   462,   463,   464,   465,     0,     0,     0,     0,     0,
+       0,   466,   467,     0,   468,     0,     0,   469,     0,     0,
+       0,   470,   471,   472,     0,     0,     0,   473,   798,   799,
+     474,   475,     0,   476,   477,   800,   479,   480,   481,   801,
+     802,   482,   483,   484,   485,   803,   486,   487,     0,     0,
+     488,   489,   490,   491,     0,   804,   492,   493,     0,   805,
+     806,   807,   808,     0,     0,     0,     0,     0,   498,   499,
+     500,     0,   809,   810,   811,   502,   503,   504,   812,   505,
+     506,   813,   507,   508,     0,   509,   510,     0,     0,   511,
+       0,     0,   512,     0,   513,     0,   814,   515,     0,     0,
+     815,   816,   817,   818,   516,     0,     0,   517,   819,     0,
+     820,   518,   519,   520,   521,   522,   821,   822,     0,     0,
+       0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
+       0,     0,   823,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,   824,   825,     0,     0,     0,     0,   826,   827,
+       0,     0,   828,   829,     0,     0,   830,   831,   160,     0,
+     161,   717,   163,   164,   165,   166,     0,     0,   167,     0,
+       0,     0,   168,     0,     0,   718,     0,   170,   171,   172,
+     173,   174,   175,   176,   719,   178,     0,   179,     0,     0,
+     720,   180,   721,   722,   723,   181,   724,     0,   182,   183,
+     184,     0,   185,     0,   186,   187,     0,     0,   188,   725,
+     726,   189,   190,     0,   191,   727,   728,   193,   194,     0,
+     195,   196,   197,   198,   729,   200,     0,   730,   202,   731,
+     732,   733,   734,   735,     0,   208,   209,   210,   211,   212,
+     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
+     736,   222,     0,   223,   737,   738,   224,     0,     0,   225,
+     739,   226,   740,   741,   227,     0,   228,   742,   743,     0,
+     229,   230,   231,   744,   745,   746,     0,     0,     0,     0,
+     747,   234,   748,     0,     0,   749,   235,     0,   236,     0,
+       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
+       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
+       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
+     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
+     260,   261,   750,     0,   262,   263,   264,   265,   751,   752,
+     266,   267,     0,   268,   269,   270,   753,     0,   271,     0,
+       0,     0,   754,   273,  2442,   274,     0,   275,     0,   276,
+     277,   755,   279,   756,   281,   282,     0,   283,     0,   757,
+     284,   285,   286,     0,   287,   758,   759,     0,   288,   289,
+       0,     0,     0,   760,   291,   292,   293,   294,   761,     0,
+       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
+     762,   299,   300,   763,     0,     0,   301,     0,   302,   303,
+       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
+     308,   764,     0,     0,   310,     0,   765,   311,   312,     0,
+       0,     0,     0,     0,   766,   314,     0,   315,     0,   316,
+       0,   317,   318,     0,     0,   767,     0,     0,     0,   319,
+     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
+     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
+     768,   339,   340,   341,   342,   769,   343,   344,   345,     0,
+       0,     0,     0,   346,   347,   348,   349,   770,   351,     0,
+       0,   771,   353,   772,   354,     0,   355,   773,   774,   775,
+     776,   777,   360,   361,   362,   363,   364,   365,     0,   778,
+     366,     0,     0,   367,   368,   369,   370,   779,   780,   781,
+     371,   372,     0,   782,   783,   373,     0,   374,   375,   784,
+       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
+       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
+     785,   386,     0,   387,     0,   388,   389,   786,   391,   392,
+     393,   394,   787,   788,   397,   789,     0,   398,   399,   400,
+       0,   401,     0,   402,   403,   404,   405,   406,     0,   790,
+     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
+     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
+       0,   421,   422,     0,   423,   424,   425,   791,   792,   426,
+       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
+       0,   793,     0,   794,   434,   435,   436,   437,   438,   439,
+     795,   796,   442,   443,   444,   445,     0,   797,   447,     0,
+       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
+       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
+     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
+       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
+     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
+     473,   798,   799,   474,   475,     0,   476,   477,   800,   479,
+     480,   481,   801,   802,   482,   483,   484,   485,   803,   486,
+     487,     0,     0,   488,   489,   490,   491,     0,   804,   492,
+     493,     0,   805,   806,   807,   808,     0,     0,     0,     0,
+       0,   498,   499,   500,     0,   809,   810,   811,   502,   503,
+     504,   812,   505,   506,   813,   507,   508,     0,   509,   510,
+       0,     0,   511,     0,     0,   512,     0,   513,     0,   814,
+     515,     0,     0,   815,   816,   817,   818,   516,     0,     0,
+     517,   819,     0,   820,   518,   519,   520,   521,   522,   821,
+     822,     0,     0,     0,     0,     0,     0,   525,   526,     0,
+     527,   528,   529,     0,     0,   823,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   824,   825,     0,     0,     0,
+       0,   826,   827,     0,     0,   828,   829,     0,     0,   830,
+     831,   160,     0,   161,   717,   163,   164,   165,   166,     0,
+       0,   167,     0,     0,     0,   168,     0,     0,   718,     0,
+     170,   171,   172,   173,   174,   175,   176,   719,   178,     0,
+     179,     0,     0,   720,   180,   721,   722,   723,   181,   724,
+       0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
+       0,   188,   725,   726,   189,   190,     0,   191,   727,   728,
+     193,   194,     0,   195,   196,   197,   198,   729,   200,     0,
+     730,   202,   731,   732,   733,   734,   735,     0,   208,   209,
+     210,   211,   212,   213,   214,   215,     0,   216,   217,     0,
+     218,   219,   220,   736,   222,     0,   223,   737,   738,   224,
+       0,     0,   225,   739,   226,   740,   741,   227,     0,   228,
+     742,   743,     0,   229,   230,   231,   744,   745,   746,     0,
+       0,     0,     0,   747,   234,   748,     0,     0,   749,   235,
+       0,   236,     0,     0,     0,     0,   237,     0,   238,   239,
+     240,   241,   242,     0,     0,     0,     0,   243,     0,     0,
+     244,   245,   246,     0,     0,     0,   247,     0,   248,   249,
+       0,   250,   251,   252,     0,   253,   254,     0,   255,   256,
+     257,   258,   259,   260,   261,   750,     0,   262,   263,   264,
+     265,   751,   752,   266,   267,     0,   268,   269,   270,   753,
+       0,   271,     0,     0,     0,   754,   273,  2444,   274,     0,
+     275,     0,   276,   277,   755,   279,   756,   281,   282,     0,
+     283,     0,   757,   284,   285,   286,     0,   287,   758,   759,
+       0,   288,   289,     0,     0,     0,   760,   291,   292,   293,
+     294,   761,     0,     0,   295,   296,   297,     0,     0,   298,
+       0,     0,     0,   762,   299,   300,   763,     0,     0,   301,
+       0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
+       0,     0,   307,   308,   764,     0,     0,   310,     0,   765,
+     311,   312,     0,     0,     0,     0,     0,   766,   314,     0,
+     315,     0,   316,     0,   317,   318,     0,     0,   767,     0,
+       0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
+     327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
+     336,   337,   338,   768,   339,   340,   341,   342,   769,   343,
+     344,   345,     0,     0,     0,     0,   346,   347,   348,   349,
+     770,   351,     0,     0,   771,   353,   772,   354,     0,   355,
+     773,   774,   775,   776,   777,   360,   361,   362,   363,   364,
+     365,     0,   778,   366,     0,     0,   367,   368,   369,   370,
+     779,   780,   781,   371,   372,     0,   782,   783,   373,     0,
+     374,   375,   784,     0,   377,   378,   379,   380,     0,   381,
+     382,     0,     0,     0,     0,     0,     0,     0,     0,   383,
+     384,   385,     0,   785,   386,     0,   387,     0,   388,   389,
+     786,   391,   392,   393,   394,   787,   788,   397,   789,     0,
+     398,   399,   400,     0,   401,     0,   402,   403,   404,   405,
+     406,     0,   790,   408,   409,     0,     0,   410,     0,     0,
+       0,   411,   412,   413,   414,   415,     0,     0,   416,   417,
+     418,   419,   420,     0,   421,   422,     0,   423,   424,   425,
+     791,   792,   426,     0,   427,     0,   428,   429,     0,   430,
+     431,     0,   432,     0,   793,     0,   794,   434,   435,   436,
+     437,   438,   439,   795,   796,   442,   443,   444,   445,     0,
+     797,   447,     0,     0,     0,   448,   449,   450,   451,     0,
+       0,     0,   452,     0,     0,     0,   453,     0,   454,   455,
+     456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
+     465,     0,     0,     0,     0,     0,     0,   466,   467,     0,
+     468,     0,     0,   469,     0,     0,     0,   470,   471,   472,
+       0,     0,     0,   473,   798,   799,   474,   475,     0,   476,
+     477,   800,   479,   480,   481,   801,   802,   482,   483,   484,
+     485,   803,   486,   487,     0,     0,   488,   489,   490,   491,
+       0,   804,   492,   493,     0,   805,   806,   807,   808,     0,
+       0,     0,     0,     0,   498,   499,   500,     0,   809,   810,
+     811,   502,   503,   504,   812,   505,   506,   813,   507,   508,
+       0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
+     513,     0,   814,   515,     0,     0,   815,   816,   817,   818,
+     516,     0,     0,   517,   819,     0,   820,   518,   519,   520,
+     521,   522,   821,   822,     0,     0,     0,     0,     0,     0,
+     525,   526,     0,   527,   528,   529,     0,     0,   823,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   824,   825,
        0,     0,     0,     0,   826,   827,     0,     0,   828,   829,
        0,     0,   830,   831,   160,     0,   161,   717,   163,   164,
      165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
@@ -5910,7 +6048,7 @@ static const yytype_int16 yytable[] =
        0,   255,   256,   257,   258,   259,   260,   261,   750,     0,
      262,   263,   264,   265,   751,   752,   266,   267,     0,   268,
      269,   270,   753,     0,   271,     0,     0,     0,   754,   273,
-    2442,   274,     0,   275,     0,   276,   277,   755,   279,   756,
+    2446,   274,     0,   275,     0,   276,   277,   755,   279,   756,
      281,   282,     0,   283,     0,   757,   284,   285,   286,     0,
      287,   758,   759,     0,   288,   289,     0,     0,     0,   760,
      291,   292,   293,   294,   761,     0,     0,   295,   296,   297,
@@ -5954,139 +6092,7 @@ static const yytype_int16 yytable[] =
      816,   817,   818,   516,     0,     0,   517,   819,     0,   820,
      518,   519,   520,   521,   522,   821,   822,     0,     0,     0,
        0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-       0,   823,     0,     0,     0,     0,     0,     0,     0,   824,
-     825,     0,     0,     0,     0,   826,   827,     0,     0,   828,
-     829,     0,     0,   830,   831,   160,     0,   161,   717,   163,
-     164,   165,   166,     0,     0,   167,     0,     0,     0,   168,
-       0,     0,   718,     0,   170,   171,   172,   173,   174,   175,
-     176,   719,   178,     0,   179,     0,     0,   720,   180,   721,
-     722,   723,   181,   724,     0,   182,   183,   184,     0,   185,
-       0,   186,   187,     0,     0,   188,   725,   726,   189,   190,
-       0,   191,   727,   728,   193,   194,     0,   195,   196,   197,
-     198,   729,   200,     0,   730,   202,   731,   732,   733,   734,
-     735,     0,   208,   209,   210,   211,   212,   213,   214,   215,
-       0,   216,   217,     0,   218,   219,   220,   736,   222,     0,
-     223,   737,   738,   224,     0,     0,   225,   739,   226,   740,
-     741,   227,     0,   228,   742,   743,     0,   229,   230,   231,
-     744,   745,   746,     0,     0,     0,     0,   747,   234,   748,
-       0,     0,   749,   235,     0,   236,     0,     0,     0,     0,
-     237,     0,   238,   239,   240,   241,   242,     0,     0,     0,
-       0,   243,     0,     0,   244,   245,   246,     0,     0,     0,
-     247,     0,   248,   249,     0,   250,   251,   252,     0,   253,
-     254,     0,   255,   256,   257,   258,   259,   260,   261,   750,
-       0,   262,   263,   264,   265,   751,   752,   266,   267,     0,
-     268,   269,   270,   753,     0,   271,     0,     0,     0,   754,
-     273,  2444,   274,     0,   275,     0,   276,   277,   755,   279,
-     756,   281,   282,     0,   283,     0,   757,   284,   285,   286,
-       0,   287,   758,   759,     0,   288,   289,     0,     0,     0,
-     760,   291,   292,   293,   294,   761,     0,     0,   295,   296,
-     297,     0,     0,   298,     0,     0,     0,   762,   299,   300,
-     763,     0,     0,   301,     0,   302,   303,     0,   304,   305,
-       0,     0,     0,   306,     0,     0,   307,   308,   764,     0,
-       0,   310,     0,   765,   311,   312,     0,     0,     0,     0,
-       0,   766,   314,     0,   315,     0,   316,     0,   317,   318,
-       0,     0,   767,     0,     0,     0,   319,   320,   321,   322,
-     323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
-     333,   334,     0,   335,   336,   337,   338,   768,   339,   340,
-     341,   342,   769,   343,   344,   345,     0,     0,     0,     0,
-     346,   347,   348,   349,   770,   351,     0,     0,   771,   353,
-     772,   354,     0,   355,   773,   774,   775,   776,   777,   360,
-     361,   362,   363,   364,   365,     0,   778,   366,     0,     0,
-     367,   368,   369,   370,   779,   780,   781,   371,   372,     0,
-     782,   783,   373,     0,   374,   375,   784,     0,   377,   378,
-     379,   380,     0,   381,   382,     0,     0,     0,     0,     0,
-       0,     0,     0,   383,   384,   385,     0,   785,   386,     0,
-     387,     0,   388,   389,   786,   391,   392,   393,   394,   787,
-     788,   397,   789,     0,   398,   399,   400,     0,   401,     0,
-     402,   403,   404,   405,   406,     0,   790,   408,   409,     0,
-       0,   410,     0,     0,     0,   411,   412,   413,   414,   415,
-       0,     0,   416,   417,   418,   419,   420,     0,   421,   422,
-       0,   423,   424,   425,   791,   792,   426,     0,   427,     0,
-     428,   429,     0,   430,   431,     0,   432,     0,   793,     0,
-     794,   434,   435,   436,   437,   438,   439,   795,   796,   442,
-     443,   444,   445,     0,   797,   447,     0,     0,     0,   448,
-     449,   450,   451,     0,     0,     0,   452,     0,     0,     0,
-     453,     0,   454,   455,   456,   457,   458,   459,     0,   460,
-     461,   462,   463,   464,   465,     0,     0,     0,     0,     0,
-       0,   466,   467,     0,   468,     0,     0,   469,     0,     0,
-       0,   470,   471,   472,     0,     0,     0,   473,   798,   799,
-     474,   475,     0,   476,   477,   800,   479,   480,   481,   801,
-     802,   482,   483,   484,   485,   803,   486,   487,     0,     0,
-     488,   489,   490,   491,     0,   804,   492,   493,     0,   805,
-     806,   807,   808,     0,     0,     0,     0,     0,   498,   499,
-     500,     0,   809,   810,   811,   502,   503,   504,   812,   505,
-     506,   813,   507,   508,     0,   509,   510,     0,     0,   511,
-       0,     0,   512,     0,   513,     0,   814,   515,     0,     0,
-     815,   816,   817,   818,   516,     0,     0,   517,   819,     0,
-     820,   518,   519,   520,   521,   522,   821,   822,     0,     0,
-       0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
-       0,     0,   823,     0,     0,     0,     0,     0,     0,     0,
-     824,   825,     0,     0,     0,     0,   826,   827,     0,     0,
-     828,   829,     0,     0,   830,   831,   160,     0,   161,   717,
-     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   718,     0,   170,   171,   172,   173,   174,
-     175,   176,   719,   178,     0,   179,     0,     0,   720,   180,
-     721,   722,   723,   181,   724,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,   725,   726,   189,
-     190,     0,   191,   727,   728,   193,   194,     0,   195,   196,
-     197,   198,   729,   200,     0,   730,   202,   731,   732,   733,
-     734,   735,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   736,   222,
-       0,   223,   737,   738,   224,     0,     0,   225,   739,   226,
-     740,   741,   227,     0,   228,   742,   743,     0,   229,   230,
-     231,   744,   745,   746,     0,     0,     0,     0,   747,   234,
-     748,     0,     0,   749,   235,     0,   236,     0,     0,     0,
-       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
-     750,     0,   262,   263,   264,   265,   751,   752,   266,   267,
-       0,   268,   269,   270,   753,     0,   271,     0,     0,     0,
-     754,   273,  2446,   274,     0,   275,     0,   276,   277,   755,
-     279,   756,   281,   282,     0,   283,     0,   757,   284,   285,
-     286,     0,   287,   758,   759,     0,   288,   289,     0,     0,
-       0,   760,   291,   292,   293,   294,   761,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,   762,   299,
-     300,   763,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   764,
-       0,     0,   310,     0,   765,   311,   312,     0,     0,     0,
-       0,     0,   766,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,   767,     0,     0,     0,   319,   320,   321,
-     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
-     332,   333,   334,     0,   335,   336,   337,   338,   768,   339,
-     340,   341,   342,   769,   343,   344,   345,     0,     0,     0,
-       0,   346,   347,   348,   349,   770,   351,     0,     0,   771,
-     353,   772,   354,     0,   355,   773,   774,   775,   776,   777,
-     360,   361,   362,   363,   364,   365,     0,   778,   366,     0,
-       0,   367,   368,   369,   370,   779,   780,   781,   371,   372,
-       0,   782,   783,   373,     0,   374,   375,   784,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,   785,   386,
-       0,   387,     0,   388,   389,   786,   391,   392,   393,   394,
-     787,   788,   397,   789,     0,   398,   399,   400,     0,   401,
-       0,   402,   403,   404,   405,   406,     0,   790,   408,   409,
-       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
-     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,   791,   792,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   793,
-       0,   794,   434,   435,   436,   437,   438,   439,   795,   796,
-     442,   443,   444,   445,     0,   797,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
-       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,   798,
-     799,   474,   475,     0,   476,   477,   800,   479,   480,   481,
-     801,   802,   482,   483,   484,   485,   803,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,   804,   492,   493,     0,
-     805,   806,   807,   808,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,   809,   810,   811,   502,   503,   504,   812,
-     505,   506,   813,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   814,   515,     0,
-       0,   815,   816,   817,   818,   516,     0,     0,   517,   819,
-       0,   820,   518,   519,   520,   521,   522,   821,   822,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   823,     0,     0,     0,     0,     0,     0,
+       0,   823,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   824,   825,     0,     0,     0,     0,   826,   827,     0,
        0,   828,   829,     0,     0,   830,   831,   160,     0,   161,
      717,   163,   164,   165,   166,     0,     0,   167,     0,     0,
@@ -6153,138 +6159,6 @@ static const yytype_int16 yytable[] =
      819,     0,   820,   518,   519,   520,   521,   522,   821,   822,
        0,     0,     0,     0,     0,     0,   525,   526,     0,   527,
      528,   529,     0,     0,   823,     0,     0,     0,     0,     0,
-       0,     0,   824,   825,     0,     0,     0,     0,   826,   827,
-       0,     0,   828,   829,     0,     0,   830,   831,   160,     0,
-     161,   717,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,   718,     0,   170,   171,   172,
-     173,   174,   175,   176,   719,   178,     0,   179,     0,     0,
-     720,   180,   721,   722,   723,   181,   724,     0,   182,   183,
-     184,     0,   185,     0,   186,   187,     0,     0,   188,   725,
-     726,   189,   190,     0,   191,   727,   728,   193,   194,     0,
-     195,   196,   197,   198,   729,   200,     0,   730,   202,   731,
-     732,   733,   734,   735,     0,   208,   209,   210,   211,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-     736,   222,     0,   223,   737,   738,   224,     0,     0,   225,
-     739,   226,   740,   741,   227,     0,   228,   742,   743,     0,
-     229,   230,   231,   744,   745,   746,     0,     0,     0,     0,
-     747,   234,   748,     0,     0,   749,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-     260,   261,   750,     0,   262,   263,   264,   265,   751,   752,
-     266,   267,     0,   268,   269,   270,   753,     0,   271,     0,
-       0,     0,   754,   273,     0,   274,     0,   275,     0,   276,
-     277,   755,   279,   756,   281,   282,     0,   283,     0,   757,
-     284,   285,   286,     0,   287,   758,   759,     0,   288,   289,
-       0,     0,     0,   760,   291,   292,   293,   294,   761,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-     762,   299,   300,   763,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   764,     0,     0,   310,     0,   765,   311,   312,     0,
-       0,     0,     0,     0,   766,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,   767,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-     768,   339,   340,   341,   342,   769,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   770,   351,     0,
-       0,   771,   353,   772,   354,     0,   355,   773,   774,   775,
-     776,   777,   360,   361,   362,   363,   364,   365,     0,   778,
-     366,     0,     0,   367,   368,   369,   370,   779,   780,   781,
-     371,   372,     0,   782,   783,   373,     0,   374,   375,   784,
-       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
-       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
-     785,   386,     0,   387,     0,   388,   389,   786,   391,   392,
-     393,   394,   787,   788,   397,   789,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   790,
-     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
-     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
-       0,   421,   422,     0,   423,   424,   425,   791,   792,   426,
-       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
-       0,   793,     0,   794,   434,   435,   436,   437,   438,   439,
-     795,   796,   442,   443,   444,   445,     0,   797,   447,     0,
-       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
-       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
-     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
-     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
-     473,   798,   799,   474,   475,     0,   476,   477,   800,   479,
-     480,   481,   801,   802,   482,   483,   484,   485,   803,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,   804,   492,
-     493,     0,   805,   806,   807,   808,     0,     0,     0,     0,
-       0,   498,   499,   500,     0,   809,   810,   811,   502,   503,
-     504,   812,   505,   506,   813,   507,   508,     0,   509,   510,
-       0,     0,   511,     0,     0,   512,     0,   513,     0,   814,
-     515,     0,     0,   815,   816,   817,   818,   516,     0,     0,
-     517,   819,     0,   820,   518,   519,   520,   521,   522,   821,
-     822,     0,     0,     0,     0,     0,     0,   525,   526,     0,
-     527,   528,   529,     0,     0,   823,     0,     0,     0,     0,
-       0,     0,     0,   824,   825,     0,     0,     0,     0,   826,
-    1234,     0,     0,   828,   829,     0,     0,   830,   831,   160,
-       0,   161,   717,   163,   164,   165,   166,  1907,     0,   167,
-       0,     0,     0,  1908,     0,     0,   718,     0,   170,   171,
-     172,   173,   174,   175,   176,   719,   178,     0,   179,     0,
-       0,   720,   180,   721,   722,   723,   181,   724,     0,   182,
-     183,   184,     0,   185,     0,   186,   187,     0,     0,   188,
-     725,   726,   189,   190,     0,   191,   727,   728,   193,   194,
-       0,   195,   196,   197,   198,   729,   200,     0,   730,   202,
-     731,   732,   733,   734,   735,     0,   208,   209,   210,   211,
-     212,   213,   214,   215,     0,   216,   217,     0,   218,   219,
-     220,   736,   222,     0,   223,   737,   738,   224,     0,     0,
-     225,   739,   226,   740,   741,   227,     0,   228,   742,   743,
-       0,   229,   230,   231,   744,   745,   746,     0,     0,     0,
-       0,   747,   234,   748,     0,     0,   749,   235,     0,   236,
-       0,     0,     0,     0,   237,     0,   238,   239,   240,   241,
-     242,     0,     0,     0,     0,   243,     0,     0,   244,   245,
-     246,     0,     0,     0,   247,     0,   248,   249,     0,   250,
-     251,   252,     0,   253,   254,     0,   255,   256,   257,   258,
-     259,   260,   261,   750,     0,   262,   263,   264,   265,   751,
-     752,   266,   267,     0,   268,   269,   270,   753,     0,   271,
-       0,     0,     0,   754,   273,     0,   274,     0,   275,     0,
-     276,   277,   755,   279,   756,   281,   282,     0,   283,     0,
-     757,   284,   285,   286,     0,   287,   758,   759,     0,   288,
-     289,     0,     0,     0,   760,   291,   292,   293,   294,   761,
-       0,     0,   295,   296,   297,     0,     0,   298,     0,     0,
-       0,   762,   299,   300,   763,     0,     0,   301,     0,   302,
-     303,     0,   304,   305,     0,     0,     0,   306,     0,     0,
-     307,   308,   764,     0,     0,   310,     0,   765,   311,   312,
-       0,     0,     0,     0,     0,   766,   314,     0,   315,     0,
-     316,     0,   317,   318,     0,     0,   767,     0,     0,     0,
-     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
-     329,   330,   331,   332,   333,   334,     0,   335,   336,   337,
-     338,   768,   339,   340,   341,   342,   769,   343,   344,   345,
-       0,     0,     0,     0,   346,   347,   348,   349,   770,   351,
-       0,     0,   771,   353,   772,   354,     0,   355,   773,   774,
-     775,   776,   777,   360,   361,   362,   363,   364,   365,     0,
-     778,   366,     0,     0,   367,   368,   369,   370,   779,     0,
-     781,   371,   372,     0,   782,   783,   373,     0,   374,   375,
-     784,     0,   377,   378,   379,   380,     0,   381,   382,     0,
-       0,     0,     0,     0,     0,     0,     0,   383,   384,   385,
-       0,   785,   386,     0,   387,     0,   388,   389,   786,   391,
-     392,   393,   394,   787,   788,   397,   789,     0,   398,   399,
-     400,     0,   401,     0,   402,   403,   404,   405,   406,     0,
-     790,   408,   409,     0,     0,   410,     0,     0,     0,   411,
-     412,   413,   414,   415,     0,     0,   416,   417,   418,   419,
-     420,     0,   421,   422,     0,   423,   424,   425,   791,   792,
-     426,     0,   427,     0,   428,   429,     0,   430,   431,     0,
-     432,     0,   793,     0,   794,   434,   435,   436,   437,   438,
-     439,   795,   796,   442,   443,   444,   445,     0,   797,   447,
-       0,     0,     0,   448,   449,   450,   451,     0,     0,     0,
-     452,     0,     0,     0,   453,     0,   454,   455,   456,   457,
-     458,   459,     0,   460,   461,   462,   463,   464,   465,     0,
-       0,     0,     0,     0,     0,   466,   467,     0,   468,     0,
-       0,   469,     0,     0,     0,   470,   471,   472,     0,     0,
-       0,   473,   798,   799,   474,   475,     0,   476,   477,   800,
-     479,   480,   481,   801,   802,   482,   483,   484,   485,   803,
-     486,   487,     0,     0,   488,   489,   490,   491,     0,   804,
-     492,   493,     0,   805,   806,   807,   808,     0,     0,     0,
-       0,     0,   498,   499,   500,     0,   809,   810,   811,   502,
-     503,   504,   812,   505,   506,   813,   507,   508,     0,   509,
-     510,     0,     0,   511,     0,     0,   512,     0,   513,     0,
-     814,   515,     0,     0,   815,   816,   817,   818,   516,     0,
-       0,   517,   819,     0,   820,   518,   519,   520,   521,   522,
-     821,   822,     0,     0,     0,     0,     0,     0,   525,   526,
-       0,   527,   528,   529,     0,     0,   823,     0,     0,     0,
        0,     0,     0,     0,   824,   825,     0,     0,     0,     0,
      826,   827,     0,     0,   828,   829,     0,     0,   830,   831,
      160,     0,   161,   717,   163,   164,   165,   166,     0,     0,
@@ -6347,76 +6221,209 @@ static const yytype_int16 yytable[] =
        0,     0,     0,   498,   499,   500,     0,   809,   810,   811,
      502,   503,   504,   812,   505,   506,   813,   507,   508,     0,
      509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
-       0,  2014,   515,     0,     0,   815,   816,   817,   818,   516,
+       0,   814,   515,     0,     0,   815,   816,   817,   818,   516,
        0,     0,   517,   819,     0,   820,   518,   519,   520,   521,
      522,   821,   822,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,     0,   823,     0,     0,
-       0,     0,     0,     0,     0,   824,   825,     0,     0,     0,
-       0,   826,   827,     0,     0,   828,   829,     0,     0,   830,
-     831,   160,     0,   161,   717,   163,   164,   165,   166,     0,
-       0,   167,     0,     0,     0,   168,     0,     0,   718,     0,
-     170,   171,   172,   173,   174,   175,   176,   719,   178,     0,
-     179,     0,     0,   720,   180,   721,   722,   723,   181,   724,
-       0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
-       0,   188,   725,   726,   189,   190,     0,   191,   727,   728,
-     193,   194,     0,   195,   196,   197,   198,   729,   200,     0,
-     730,   202,   731,   732,   733,   734,   735,     0,   208,   209,
-     210,   211,   212,   213,   214,   215,     0,   216,   217,     0,
-     218,   219,   220,   736,   222,     0,   223,   737,   738,   224,
-       0,     0,   225,   739,   226,   740,   741,   227,     0,   228,
-     742,   743,     0,   229,   230,   231,   744,   745,   746,     0,
-       0,     0,     0,   747,   234,   748,     0,     0,   749,   235,
-       0,   236,     0,     0,     0,     0,   237,     0,   238,   239,
-     240,   241,   242,     0,     0,     0,     0,   243,     0,     0,
-     244,   245,   246,     0,     0,     0,   247,     0,   248,   249,
-       0,   250,   251,   252,     0,   253,   254,     0,   255,   256,
-     257,   258,   259,   260,   261,   750,     0,   262,   263,   264,
-     265,   751,   752,   266,   267,     0,   268,   269,   270,   753,
-       0,   271,     0,     0,     0,   754,   273,     0,   274,     0,
-     275,     0,   276,   277,   755,   279,   756,   281,   282,     0,
-     283,     0,   757,   284,   285,   286,     0,   287,   758,   759,
-       0,   288,   289,     0,     0,     0,   760,   291,   292,   293,
-     294,   761,     0,     0,   295,   296,   297,     0,     0,   298,
-       0,     0,     0,   762,   299,   300,  2891,     0,     0,   301,
-       0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
-       0,     0,   307,   308,   764,     0,     0,   310,     0,   765,
-     311,   312,     0,     0,     0,     0,     0,   766,   314,     0,
-     315,     0,   316,     0,   317,   318,     0,     0,   767,     0,
-       0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
-     327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
-     336,   337,   338,   768,   339,   340,   341,   342,   769,   343,
-     344,   345,     0,     0,     0,     0,   346,   347,   348,   349,
-     770,   351,     0,     0,   771,   353,   772,   354,     0,   355,
-     773,   774,   775,   776,   777,   360,   361,   362,   363,   364,
-     365,     0,   778,   366,     0,     0,   367,   368,   369,   370,
-     779,   780,   781,   371,   372,     0,   782,   783,   373,     0,
-     374,   375,   784,     0,   377,   378,   379,   380,     0,   381,
-     382,     0,     0,     0,     0,     0,     0,     0,     0,   383,
-     384,   385,     0,   785,   386,     0,   387,     0,   388,   389,
-     786,   391,   392,   393,   394,   787,   788,   397,   789,     0,
-     398,   399,   400,     0,   401,     0,   402,   403,   404,   405,
-     406,     0,   790,   408,   409,     0,     0,   410,     0,     0,
-       0,   411,   412,   413,   414,   415,     0,     0,   416,   417,
-     418,   419,   420,     0,   421,   422,     0,   423,   424,   425,
-     791,   792,   426,     0,   427,     0,   428,   429,     0,   430,
-     431,     0,   432,     0,   793,     0,   794,   434,   435,   436,
-     437,   438,   439,   795,   796,   442,   443,   444,   445,     0,
-     797,   447,     0,     0,     0,   448,   449,   450,   451,     0,
-       0,     0,   452,     0,     0,     0,   453,     0,   454,   455,
-     456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
-     465,     0,     0,     0,     0,     0,     0,   466,   467,     0,
-     468,     0,     0,   469,     0,     0,     0,   470,   471,   472,
-       0,     0,     0,   473,   798,   799,   474,   475,     0,   476,
-     477,   800,   479,   480,   481,   801,   802,   482,   483,   484,
-     485,   803,   486,   487,     0,     0,   488,   489,   490,   491,
-       0,   804,   492,   493,     0,   805,   806,   807,   808,     0,
-       0,     0,     0,     0,   498,   499,   500,     0,   809,   810,
-     811,   502,   503,   504,   812,   505,   506,   813,   507,   508,
-       0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
-     513,     0,   814,   515,     0,     0,   815,   816,   817,   818,
-     516,     0,     0,   517,   819,     0,   820,   518,   519,   520,
-     521,   522,   821,   822,     0,     0,     0,     0,     0,     0,
-     525,   526,     0,   527,   528,   529,     0,     0,   823,     0,
+       0,     0,     0,     0,     0,     0,     0,   824,   825,     0,
+       0,     0,     0,   826,  1234,     0,     0,   828,   829,     0,
+       0,   830,   831,   160,     0,   161,   717,   163,   164,   165,
+     166,  1907,     0,   167,     0,     0,     0,  1908,     0,     0,
+     718,     0,   170,   171,   172,   173,   174,   175,   176,   719,
+     178,     0,   179,     0,     0,   720,   180,   721,   722,   723,
+     181,   724,     0,   182,   183,   184,     0,   185,     0,   186,
+     187,     0,     0,   188,   725,   726,   189,   190,     0,   191,
+     727,   728,   193,   194,     0,   195,   196,   197,   198,   729,
+     200,     0,   730,   202,   731,   732,   733,   734,   735,     0,
+     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
+     217,     0,   218,   219,   220,   736,   222,     0,   223,   737,
+     738,   224,     0,     0,   225,   739,   226,   740,   741,   227,
+       0,   228,   742,   743,     0,   229,   230,   231,   744,   745,
+     746,     0,     0,     0,     0,   747,   234,   748,     0,     0,
+     749,   235,     0,   236,     0,     0,     0,     0,   237,     0,
+     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
+       0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
+     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
+     255,   256,   257,   258,   259,   260,   261,   750,     0,   262,
+     263,   264,   265,   751,   752,   266,   267,     0,   268,   269,
+     270,   753,     0,   271,     0,     0,     0,   754,   273,     0,
+     274,     0,   275,     0,   276,   277,   755,   279,   756,   281,
+     282,     0,   283,     0,   757,   284,   285,   286,     0,   287,
+     758,   759,     0,   288,   289,     0,     0,     0,   760,   291,
+     292,   293,   294,   761,     0,     0,   295,   296,   297,     0,
+       0,   298,     0,     0,     0,   762,   299,   300,   763,     0,
+       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
+       0,   306,     0,     0,   307,   308,   764,     0,     0,   310,
+       0,   765,   311,   312,     0,     0,     0,     0,     0,   766,
+     314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
+     767,     0,     0,     0,   319,   320,   321,   322,   323,   324,
+     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
+       0,   335,   336,   337,   338,   768,   339,   340,   341,   342,
+     769,   343,   344,   345,     0,     0,     0,     0,   346,   347,
+     348,   349,   770,   351,     0,     0,   771,   353,   772,   354,
+       0,   355,   773,   774,   775,   776,   777,   360,   361,   362,
+     363,   364,   365,     0,   778,   366,     0,     0,   367,   368,
+     369,   370,   779,     0,   781,   371,   372,     0,   782,   783,
+     373,     0,   374,   375,   784,     0,   377,   378,   379,   380,
+       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
+       0,   383,   384,   385,     0,   785,   386,     0,   387,     0,
+     388,   389,   786,   391,   392,   393,   394,   787,   788,   397,
+     789,     0,   398,   399,   400,     0,   401,     0,   402,   403,
+     404,   405,   406,     0,   790,   408,   409,     0,     0,   410,
+       0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
+     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
+     424,   425,   791,   792,   426,     0,   427,     0,   428,   429,
+       0,   430,   431,     0,   432,     0,   793,     0,   794,   434,
+     435,   436,   437,   438,   439,   795,   796,   442,   443,   444,
+     445,     0,   797,   447,     0,     0,     0,   448,   449,   450,
+     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
+     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
+     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
+     467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
+     471,   472,     0,     0,     0,   473,   798,   799,   474,   475,
+       0,   476,   477,   800,   479,   480,   481,   801,   802,   482,
+     483,   484,   485,   803,   486,   487,     0,     0,   488,   489,
+     490,   491,     0,   804,   492,   493,     0,   805,   806,   807,
+     808,     0,     0,     0,     0,     0,   498,   499,   500,     0,
+     809,   810,   811,   502,   503,   504,   812,   505,   506,   813,
+     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
+     512,     0,   513,     0,   814,   515,     0,     0,   815,   816,
+     817,   818,   516,     0,     0,   517,   819,     0,   820,   518,
+     519,   520,   521,   522,   821,   822,     0,     0,     0,     0,
+       0,     0,   525,   526,     0,   527,   528,   529,     0,     0,
+     823,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     824,   825,     0,     0,     0,     0,   826,   827,     0,     0,
+     828,   829,     0,     0,   830,   831,   160,     0,   161,   717,
+     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
+     168,     0,     0,   718,     0,   170,   171,   172,   173,   174,
+     175,   176,   719,   178,     0,   179,     0,     0,   720,   180,
+     721,   722,   723,   181,   724,     0,   182,   183,   184,     0,
+     185,     0,   186,   187,     0,     0,   188,   725,   726,   189,
+     190,     0,   191,   727,   728,   193,   194,     0,   195,   196,
+     197,   198,   729,   200,     0,   730,   202,   731,   732,   733,
+     734,   735,     0,   208,   209,   210,   211,   212,   213,   214,
+     215,     0,   216,   217,     0,   218,   219,   220,   736,   222,
+       0,   223,   737,   738,   224,     0,     0,   225,   739,   226,
+     740,   741,   227,     0,   228,   742,   743,     0,   229,   230,
+     231,   744,   745,   746,     0,     0,     0,     0,   747,   234,
+     748,     0,     0,   749,   235,     0,   236,     0,     0,     0,
+       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
+       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
+       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
+     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
+     750,     0,   262,   263,   264,   265,   751,   752,   266,   267,
+       0,   268,   269,   270,   753,     0,   271,     0,     0,     0,
+     754,   273,     0,   274,     0,   275,     0,   276,   277,   755,
+     279,   756,   281,   282,     0,   283,     0,   757,   284,   285,
+     286,     0,   287,   758,   759,     0,   288,   289,     0,     0,
+       0,   760,   291,   292,   293,   294,   761,     0,     0,   295,
+     296,   297,     0,     0,   298,     0,     0,     0,   762,   299,
+     300,   763,     0,     0,   301,     0,   302,   303,     0,   304,
+     305,     0,     0,     0,   306,     0,     0,   307,   308,   764,
+       0,     0,   310,     0,   765,   311,   312,     0,     0,     0,
+       0,     0,   766,   314,     0,   315,     0,   316,     0,   317,
+     318,     0,     0,   767,     0,     0,     0,   319,   320,   321,
+     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
+     332,   333,   334,     0,   335,   336,   337,   338,   768,   339,
+     340,   341,   342,   769,   343,   344,   345,     0,     0,     0,
+       0,   346,   347,   348,   349,   770,   351,     0,     0,   771,
+     353,   772,   354,     0,   355,   773,   774,   775,   776,   777,
+     360,   361,   362,   363,   364,   365,     0,   778,   366,     0,
+       0,   367,   368,   369,   370,   779,   780,   781,   371,   372,
+       0,   782,   783,   373,     0,   374,   375,   784,     0,   377,
+     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
+       0,     0,     0,     0,   383,   384,   385,     0,   785,   386,
+       0,   387,     0,   388,   389,   786,   391,   392,   393,   394,
+     787,   788,   397,   789,     0,   398,   399,   400,     0,   401,
+       0,   402,   403,   404,   405,   406,     0,   790,   408,   409,
+       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
+     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
+     422,     0,   423,   424,   425,   791,   792,   426,     0,   427,
+       0,   428,   429,     0,   430,   431,     0,   432,     0,   793,
+       0,   794,   434,   435,   436,   437,   438,   439,   795,   796,
+     442,   443,   444,   445,     0,   797,   447,     0,     0,     0,
+     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
+       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
+     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
+       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
+       0,     0,   470,   471,   472,     0,     0,     0,   473,   798,
+     799,   474,   475,     0,   476,   477,   800,   479,   480,   481,
+     801,   802,   482,   483,   484,   485,   803,   486,   487,     0,
+       0,   488,   489,   490,   491,     0,   804,   492,   493,     0,
+     805,   806,   807,   808,     0,     0,     0,     0,     0,   498,
+     499,   500,     0,   809,   810,   811,   502,   503,   504,   812,
+     505,   506,   813,   507,   508,     0,   509,   510,     0,     0,
+     511,     0,     0,   512,     0,   513,     0,  2014,   515,     0,
+       0,   815,   816,   817,   818,   516,     0,     0,   517,   819,
+       0,   820,   518,   519,   520,   521,   522,   821,   822,     0,
+       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
+     529,     0,     0,   823,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   824,   825,     0,     0,     0,     0,   826,
+     827,     0,     0,   828,   829,     0,     0,   830,   831,   160,
+       0,   161,   717,   163,   164,   165,   166,     0,     0,   167,
+       0,     0,     0,   168,     0,     0,   718,     0,   170,   171,
+     172,   173,   174,   175,   176,   719,   178,     0,   179,     0,
+       0,   720,   180,   721,   722,   723,   181,   724,     0,   182,
+     183,   184,     0,   185,     0,   186,   187,     0,     0,   188,
+     725,   726,   189,   190,     0,   191,   727,   728,   193,   194,
+       0,   195,   196,   197,   198,   729,   200,     0,   730,   202,
+     731,   732,   733,   734,   735,     0,   208,   209,   210,   211,
+     212,   213,   214,   215,     0,   216,   217,     0,   218,   219,
+     220,   736,   222,     0,   223,   737,   738,   224,     0,     0,
+     225,   739,   226,   740,   741,   227,     0,   228,   742,   743,
+       0,   229,   230,   231,   744,   745,   746,     0,     0,     0,
+       0,   747,   234,   748,     0,     0,   749,   235,     0,   236,
+       0,     0,     0,     0,   237,     0,   238,   239,   240,   241,
+     242,     0,     0,     0,     0,   243,     0,     0,   244,   245,
+     246,     0,     0,     0,   247,     0,   248,   249,     0,   250,
+     251,   252,     0,   253,   254,     0,   255,   256,   257,   258,
+     259,   260,   261,   750,     0,   262,   263,   264,   265,   751,
+     752,   266,   267,     0,   268,   269,   270,   753,     0,   271,
+       0,     0,     0,   754,   273,     0,   274,     0,   275,     0,
+     276,   277,   755,   279,   756,   281,   282,     0,   283,     0,
+     757,   284,   285,   286,     0,   287,   758,   759,     0,   288,
+     289,     0,     0,     0,   760,   291,   292,   293,   294,   761,
+       0,     0,   295,   296,   297,     0,     0,   298,     0,     0,
+       0,   762,   299,   300,  2891,     0,     0,   301,     0,   302,
+     303,     0,   304,   305,     0,     0,     0,   306,     0,     0,
+     307,   308,   764,     0,     0,   310,     0,   765,   311,   312,
+       0,     0,     0,     0,     0,   766,   314,     0,   315,     0,
+     316,     0,   317,   318,     0,     0,   767,     0,     0,     0,
+     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
+     329,   330,   331,   332,   333,   334,     0,   335,   336,   337,
+     338,   768,   339,   340,   341,   342,   769,   343,   344,   345,
+       0,     0,     0,     0,   346,   347,   348,   349,   770,   351,
+       0,     0,   771,   353,   772,   354,     0,   355,   773,   774,
+     775,   776,   777,   360,   361,   362,   363,   364,   365,     0,
+     778,   366,     0,     0,   367,   368,   369,   370,   779,   780,
+     781,   371,   372,     0,   782,   783,   373,     0,   374,   375,
+     784,     0,   377,   378,   379,   380,     0,   381,   382,     0,
+       0,     0,     0,     0,     0,     0,     0,   383,   384,   385,
+       0,   785,   386,     0,   387,     0,   388,   389,   786,   391,
+     392,   393,   394,   787,   788,   397,   789,     0,   398,   399,
+     400,     0,   401,     0,   402,   403,   404,   405,   406,     0,
+     790,   408,   409,     0,     0,   410,     0,     0,     0,   411,
+     412,   413,   414,   415,     0,     0,   416,   417,   418,   419,
+     420,     0,   421,   422,     0,   423,   424,   425,   791,   792,
+     426,     0,   427,     0,   428,   429,     0,   430,   431,     0,
+     432,     0,   793,     0,   794,   434,   435,   436,   437,   438,
+     439,   795,   796,   442,   443,   444,   445,     0,   797,   447,
+       0,     0,     0,   448,   449,   450,   451,     0,     0,     0,
+     452,     0,     0,     0,   453,     0,   454,   455,   456,   457,
+     458,   459,     0,   460,   461,   462,   463,   464,   465,     0,
+       0,     0,     0,     0,     0,   466,   467,     0,   468,     0,
+       0,   469,     0,     0,     0,   470,   471,   472,     0,     0,
+       0,   473,   798,   799,   474,   475,     0,   476,   477,   800,
+     479,   480,   481,   801,   802,   482,   483,   484,   485,   803,
+     486,   487,     0,     0,   488,   489,   490,   491,     0,   804,
+     492,   493,     0,   805,   806,   807,   808,     0,     0,     0,
+       0,     0,   498,   499,   500,     0,   809,   810,   811,   502,
+     503,   504,   812,   505,   506,   813,   507,   508,     0,   509,
+     510,     0,     0,   511,     0,     0,   512,     0,   513,     0,
+     814,   515,     0,     0,   815,   816,   817,   818,   516,     0,
+       0,   517,   819,     0,   820,   518,   519,   520,   521,   522,
+     821,   822,     0,     0,     0,     0,     0,     0,   525,   526,
+       0,   527,   528,   529,     0,     0,   823,     0,     0,     0,
        0,     0,     0,     0,     0,     0,   824,   825,     0,     0,
        0,     0,   826,   827,     0,     0,   828,   829,     0,     0,
      830,   831,   160,     0,   161,   717,   163,   164,   165,   166,
@@ -6483,139 +6490,7 @@ static const yytype_int16 yytable[] =
      818,   516,     0,     0,   517,   819,     0,   820,   518,   519,
      520,   521,   522,   821,   822,     0,     0,     0,     0,     0,
        0,   525,   526,     0,   527,   528,   529,     0,     0,   823,
-       0,     0,     0,     0,     0,     0,     0,   824,   825,     0,
-       0,     0,     0,   826,   827,     0,     0,   828,   829,     0,
-       0,   830,   831,   160,     0,   161,   717,   163,   164,   165,
-     166,     0,     0,   167,     0,     0,     0,   168,     0,     0,
-     718,     0,   170,   171,   172,   173,   174,   175,   176,   719,
-     178,     0,   179,     0,     0,   720,   180,   721,   722,   723,
-     181,   724,     0,   182,   183,   184,     0,   185,     0,   186,
-     187,     0,     0,   188,   725,   726,   189,   190,     0,   191,
-     727,   728,   193,   194,     0,   195,   196,   197,   198,   729,
-     200,     0,   730,   202,   731,   732,   733,   734,   735,     0,
-     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
-     217,     0,   218,   219,   220,   736,   222,     0,   223,   737,
-     738,   224,     0,     0,   225,   739,   226,   740,   741,   227,
-       0,   228,   742,   743,     0,   229,   230,   231,   744,   745,
-     746,     0,     0,     0,     0,   747,   234,   748,     0,     0,
-    3833,   235,     0,   236,     0,     0,     0,     0,   237,     0,
-     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
-       0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
-     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
-     255,   256,   257,   258,   259,   260,   261,   750,     0,   262,
-     263,   264,   265,   751,   752,   266,   267,     0,   268,   269,
-     270,   753,     0,   271,     0,     0,     0,   754,   273,     0,
-     274,     0,   275,     0,   276,   277,   755,   279,   756,   281,
-     282,     0,   283,     0,   757,   284,   285,   286,     0,   287,
-     758,   759,     0,   288,   289,     0,     0,     0,   760,   291,
-     292,   293,   294,   761,     0,     0,   295,   296,   297,     0,
-       0,   298,     0,     0,     0,   762,   299,   300,   763,     0,
-       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
-       0,   306,     0,     0,   307,   308,   764,     0,     0,   310,
-       0,   765,   311,   312,     0,     0,     0,     0,     0,   766,
-     314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
-     767,     0,     0,     0,   319,   320,   321,   322,   323,   324,
-     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
-       0,   335,   336,   337,   338,   768,   339,   340,   341,   342,
-     769,   343,   344,   345,     0,     0,     0,     0,   346,   347,
-     348,   349,   770,   351,     0,     0,   771,   353,   772,   354,
-       0,   355,   773,   774,   775,   776,   777,   360,   361,   362,
-     363,   364,   365,     0,   778,   366,     0,     0,   367,   368,
-     369,   370,   779,   780,   781,   371,   372,     0,   782,   783,
-     373,     0,   374,   375,   784,     0,   377,   378,   379,   380,
-       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
-       0,   383,   384,   385,     0,   785,   386,     0,   387,     0,
-     388,   389,   786,   391,   392,   393,   394,   787,   788,   397,
-     789,     0,   398,   399,   400,     0,   401,     0,   402,   403,
-     404,   405,   406,     0,   790,   408,   409,     0,     0,   410,
-       0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
-     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
-     424,   425,   791,   792,   426,     0,   427,     0,   428,   429,
-       0,   430,   431,     0,   432,     0,   793,     0,   794,   434,
-     435,   436,   437,   438,   439,   795,   796,   442,   443,   444,
-     445,     0,   797,   447,     0,     0,     0,   448,   449,   450,
-     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
-     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
-     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
-     467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
-     471,   472,     0,     0,     0,   473,   798,   799,   474,   475,
-       0,   476,   477,   800,   479,   480,   481,   801,   802,   482,
-     483,   484,   485,   803,   486,   487,     0,     0,   488,   489,
-     490,   491,     0,   804,   492,   493,     0,   805,   806,   807,
-     808,     0,     0,     0,     0,     0,   498,   499,   500,     0,
-     809,   810,   811,   502,   503,   504,   812,   505,   506,   813,
-     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
-     512,     0,   513,     0,   814,   515,     0,     0,   815,   816,
-     817,   818,   516,     0,     0,   517,   819,     0,   820,   518,
-     519,   520,   521,   522,   821,   822,     0,     0,     0,     0,
-       0,     0,   525,   526,     0,   527,   528,   529,     0,     0,
-     823,     0,     0,     0,     0,     0,     0,     0,   824,   825,
-       0,     0,     0,     0,   826,   827,     0,     0,   828,   829,
-       0,     0,   830,   831,   160,     0,   161,   717,   163,   164,
-     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
-       0,   718,     0,   170,   171,   172,   173,   174,   175,   176,
-     719,   178,     0,   179,     0,     0,   720,   180,   721,   722,
-     723,   181,   724,     0,   182,   183,   184,     0,   185,     0,
-     186,   187,     0,     0,   188,   725,   726,   189,   190,     0,
-     191,   727,   728,   193,   194,     0,   195,   196,   197,   198,
-     729,   200,     0,   730,   202,   731,   732,   733,   734,   735,
-       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
-     216,   217,     0,   218,   219,   220,   736,   222,     0,   223,
-     737,   738,   224,     0,     0,   225,   739,   226,   740,   741,
-     227,     0,   228,   742,   743,     0,   229,   230,   231,   744,
-     745,   746,     0,     0,     0,     0,   747,   234,   748,     0,
-       0,   749,   235,     0,   236,     0,     0,     0,     0,   237,
-       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
-     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
-       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
-       0,   255,   256,   257,   258,   259,   260,   261,   750,     0,
-     262,   263,   264,   265,   751,   752,   266,   267,     0,   268,
-     269,   270,   753,     0,   271,     0,     0,     0,   754,   273,
-       0,   274,     0,   275,     0,   276,   277,   755,   279,   756,
-     281,   282,     0,   283,     0,   757,   284,   285,   286,     0,
-     287,   758,   759,     0,   288,   289,     0,     0,     0,   760,
-     291,   292,   293,   294,   761,     0,     0,   295,   296,   297,
-       0,     0,   298,     0,     0,     0,   762,   299,   300,   763,
-       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
-       0,     0,   306,     0,     0,   307,   308,   764,     0,     0,
-     310,     0,   765,   311,   312,     0,     0,     0,     0,     0,
-     766,   314,     0,   315,     0,   316,     0,   317,   318,     0,
-       0,   767,     0,     0,     0,   319,   320,   321,   322,   323,
-     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
-     334,     0,   335,   336,   337,   338,   768,   339,   340,   341,
-     342,   769,   343,   344,   345,  4822,     0,     0,     0,   346,
-     347,   348,   349,   770,   351,     0,     0,   771,   353,   772,
-     354,     0,   355,   773,   774,   775,   776,   777,   360,   361,
-     362,   363,   364,   365,     0,   778,   366,     0,     0,   367,
-     368,   369,   370,   779,     0,   781,   371,   372,     0,   782,
-     783,   373,     0,   374,   375,   784,     0,   377,   378,   379,
-     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
-       0,     0,   383,   384,   385,     0,   785,   386,     0,   387,
-       0,   388,   389,   786,   391,   392,   393,   394,   787,   788,
-     397,   789,     0,   398,   399,   400,     0,   401,     0,   402,
-     403,   404,   405,   406,     0,   790,   408,   409,     0,     0,
-     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
-       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
-     423,   424,   425,   791,   792,   426,     0,   427,     0,   428,
-     429,     0,   430,   431,     0,   432,     0,   793,     0,   794,
-     434,   435,   436,   437,   438,   439,   795,   796,   442,   443,
-     444,   445,     0,   797,   447,     0,     0,     0,   448,   449,
-     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
-       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
-     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
-     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
-     470,   471,   472,     0,     0,     0,   473,   798,   799,   474,
-     475,     0,   476,   477,   800,   479,   480,   481,   801,   802,
-     482,   483,   484,   485,   803,   486,   487,     0,     0,   488,
-     489,   490,   491,     0,   804,   492,   493,     0,   805,   806,
-     807,   808,     0,     0,     0,     0,     0,   498,   499,   500,
-       0,   809,   810,   811,   502,   503,   504,   812,   505,   506,
-     813,   507,   508,     0,   509,   510,     0,     0,   511,     0,
-       0,   512,     0,   513,     0,   814,   515,     0,     0,   815,
-     816,   817,   818,   516,     0,     0,   517,   819,     0,   820,
-     518,   519,   520,   521,   522,   821,   822,     0,     0,     0,
-       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-       0,   823,     0,     0,     0,     0,     0,     0,     0,   824,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   824,
      825,     0,     0,     0,     0,   826,   827,     0,     0,   828,
      829,     0,     0,   830,   831,   160,     0,   161,   717,   163,
      164,   165,   166,     0,     0,   167,     0,     0,     0,   168,
@@ -6630,7 +6505,7 @@ static const yytype_int16 yytable[] =
      223,   737,   738,   224,     0,     0,   225,   739,   226,   740,
      741,   227,     0,   228,   742,   743,     0,   229,   230,   231,
      744,   745,   746,     0,     0,     0,     0,   747,   234,   748,
-       0,     0,   749,   235,     0,   236,     0,     0,     0,     0,
+       0,     0,  3833,   235,     0,   236,     0,     0,     0,     0,
      237,     0,   238,   239,   240,   241,   242,     0,     0,     0,
        0,   243,     0,     0,   244,   245,   246,     0,     0,     0,
      247,     0,   248,   249,     0,   250,   251,   252,     0,   253,
@@ -6653,7 +6528,7 @@ static const yytype_int16 yytable[] =
      346,   347,   348,   349,   770,   351,     0,     0,   771,   353,
      772,   354,     0,   355,   773,   774,   775,   776,   777,   360,
      361,   362,   363,   364,   365,     0,   778,   366,     0,     0,
-     367,   368,   369,   370,   779,     0,   781,   371,   372,     0,
+     367,   368,   369,   370,   779,   780,   781,   371,   372,     0,
      782,   783,   373,     0,   374,   375,   784,     0,   377,   378,
      379,   380,     0,   381,   382,     0,     0,     0,     0,     0,
        0,     0,     0,   383,   384,   385,     0,   785,   386,     0,
@@ -6682,72 +6557,205 @@ static const yytype_int16 yytable[] =
      820,   518,   519,   520,   521,   522,   821,   822,     0,     0,
        0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
        0,     0,   823,     0,     0,     0,     0,     0,     0,     0,
-     824,   825,     0,     0,     0,     0,   826,   827,     0,     0,
-     828,   829,     0,     0,   830,   831,   160,     0,   161,   717,
-     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   718,     0,   170,   171,   172,   173,   174,
-     175,   176,   719,   178,     0,   179,     0,     0,   720,   180,
-     721,   722,   723,   181,   724,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,   725,   726,   189,
-     190,     0,   191,   727,   728,   193,   194,     0,   195,   196,
-     197,   198,   729,   200,     0,   730,   202,   731,   732,   733,
-     734,   735,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   736,   222,
-       0,   223,   737,   738,   224,     0,     0,   225,   739,   226,
-     740,   741,   227,     0,   228,   742,   743,     0,   229,   230,
-     231,   744,   745,   746,     0,     0,     0,     0,   747,   234,
-     748,     0,     0,   749,   235,     0,   236,     0,     0,     0,
-       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
-     750,     0,   262,   263,   264,   265,   751,   752,   266,   267,
-       0,   268,   269,   270,   753,     0,   271,     0,     0,     0,
-     754,   273,     0,   274,     0,   275,     0,   276,   277,   755,
-     279,   756,   281,   282,     0,   283,     0,   757,   284,   285,
-     286,     0,   287,   758,   759,     0,   288,   289,     0,     0,
-       0,   760,   291,   292,   293,   294,   761,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,   762,   299,
-     300,  1922,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   764,
-       0,     0,   310,     0,   765,   311,   312,     0,     0,     0,
-       0,     0,   766,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,   767,     0,     0,     0,   319,   320,   321,
-     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
-     332,   333,   334,     0,   335,   336,   337,   338,   768,   339,
-     340,   341,   342,   769,   343,   344,   345,     0,     0,     0,
-       0,   346,   347,   348,   349,   770,   351,     0,     0,   771,
-     353,   772,   354,     0,   355,   773,   774,   775,   776,   777,
-     360,   361,   362,   363,   364,   365,     0,   778,   366,     0,
-       0,   367,   368,   369,   370,   779,     0,   781,   371,   372,
-       0,   782,   783,   373,     0,   374,   375,   784,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,   785,   386,
-       0,   387,     0,   388,   389,   786,   391,   392,   393,   394,
-     787,   788,   397,   789,     0,   398,   399,   400,     0,   401,
-       0,   402,   403,   404,   405,   406,     0,   790,   408,   409,
-       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
-     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,   791,   792,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   793,
-       0,   794,   434,   435,   436,   437,   438,   439,   795,   796,
-     442,   443,   444,   445,     0,   797,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
-       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,   798,
-     799,   474,   475,     0,   476,   477,   800,   479,   480,   481,
-     801,   802,   482,   483,   484,   485,   803,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,   804,   492,   493,     0,
-     805,   806,   807,   808,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,   809,   810,   811,   502,   503,   504,   812,
-     505,   506,   813,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   814,   515,     0,
-       0,   815,   816,   817,   818,   516,     0,     0,   517,   819,
-       0,   820,   518,   519,   520,   521,   522,   821,   822,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   823,     0,     0,     0,     0,     0,     0,
+       0,     0,   824,   825,     0,     0,     0,     0,   826,   827,
+       0,     0,   828,   829,     0,     0,   830,   831,   160,     0,
+     161,   717,   163,   164,   165,   166,     0,     0,   167,     0,
+       0,     0,   168,     0,     0,   718,     0,   170,   171,   172,
+     173,   174,   175,   176,   719,   178,     0,   179,     0,     0,
+     720,   180,   721,   722,   723,   181,   724,     0,   182,   183,
+     184,     0,   185,     0,   186,   187,     0,     0,   188,   725,
+     726,   189,   190,     0,   191,   727,   728,   193,   194,     0,
+     195,   196,   197,   198,   729,   200,     0,   730,   202,   731,
+     732,   733,   734,   735,     0,   208,   209,   210,   211,   212,
+     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
+     736,   222,     0,   223,   737,   738,   224,     0,     0,   225,
+     739,   226,   740,   741,   227,     0,   228,   742,   743,     0,
+     229,   230,   231,   744,   745,   746,     0,     0,     0,     0,
+     747,   234,   748,     0,     0,   749,   235,     0,   236,     0,
+       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
+       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
+       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
+     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
+     260,   261,   750,     0,   262,   263,   264,   265,   751,   752,
+     266,   267,     0,   268,   269,   270,   753,     0,   271,     0,
+       0,     0,   754,   273,     0,   274,     0,   275,     0,   276,
+     277,   755,   279,   756,   281,   282,     0,   283,     0,   757,
+     284,   285,   286,     0,   287,   758,   759,     0,   288,   289,
+       0,     0,     0,   760,   291,   292,   293,   294,   761,     0,
+       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
+     762,   299,   300,   763,     0,     0,   301,     0,   302,   303,
+       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
+     308,   764,     0,     0,   310,     0,   765,   311,   312,     0,
+       0,     0,     0,     0,   766,   314,     0,   315,     0,   316,
+       0,   317,   318,     0,     0,   767,     0,     0,     0,   319,
+     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
+     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
+     768,   339,   340,   341,   342,   769,   343,   344,   345,  4822,
+       0,     0,     0,   346,   347,   348,   349,   770,   351,     0,
+       0,   771,   353,   772,   354,     0,   355,   773,   774,   775,
+     776,   777,   360,   361,   362,   363,   364,   365,     0,   778,
+     366,     0,     0,   367,   368,   369,   370,   779,     0,   781,
+     371,   372,     0,   782,   783,   373,     0,   374,   375,   784,
+       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
+       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
+     785,   386,     0,   387,     0,   388,   389,   786,   391,   392,
+     393,   394,   787,   788,   397,   789,     0,   398,   399,   400,
+       0,   401,     0,   402,   403,   404,   405,   406,     0,   790,
+     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
+     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
+       0,   421,   422,     0,   423,   424,   425,   791,   792,   426,
+       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
+       0,   793,     0,   794,   434,   435,   436,   437,   438,   439,
+     795,   796,   442,   443,   444,   445,     0,   797,   447,     0,
+       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
+       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
+     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
+       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
+     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
+     473,   798,   799,   474,   475,     0,   476,   477,   800,   479,
+     480,   481,   801,   802,   482,   483,   484,   485,   803,   486,
+     487,     0,     0,   488,   489,   490,   491,     0,   804,   492,
+     493,     0,   805,   806,   807,   808,     0,     0,     0,     0,
+       0,   498,   499,   500,     0,   809,   810,   811,   502,   503,
+     504,   812,   505,   506,   813,   507,   508,     0,   509,   510,
+       0,     0,   511,     0,     0,   512,     0,   513,     0,   814,
+     515,     0,     0,   815,   816,   817,   818,   516,     0,     0,
+     517,   819,     0,   820,   518,   519,   520,   521,   522,   821,
+     822,     0,     0,     0,     0,     0,     0,   525,   526,     0,
+     527,   528,   529,     0,     0,   823,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   824,   825,     0,     0,     0,
+       0,   826,   827,     0,     0,   828,   829,     0,     0,   830,
+     831,   160,     0,   161,   717,   163,   164,   165,   166,     0,
+       0,   167,     0,     0,     0,   168,     0,     0,   718,     0,
+     170,   171,   172,   173,   174,   175,   176,   719,   178,     0,
+     179,     0,     0,   720,   180,   721,   722,   723,   181,   724,
+       0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
+       0,   188,   725,   726,   189,   190,     0,   191,   727,   728,
+     193,   194,     0,   195,   196,   197,   198,   729,   200,     0,
+     730,   202,   731,   732,   733,   734,   735,     0,   208,   209,
+     210,   211,   212,   213,   214,   215,     0,   216,   217,     0,
+     218,   219,   220,   736,   222,     0,   223,   737,   738,   224,
+       0,     0,   225,   739,   226,   740,   741,   227,     0,   228,
+     742,   743,     0,   229,   230,   231,   744,   745,   746,     0,
+       0,     0,     0,   747,   234,   748,     0,     0,   749,   235,
+       0,   236,     0,     0,     0,     0,   237,     0,   238,   239,
+     240,   241,   242,     0,     0,     0,     0,   243,     0,     0,
+     244,   245,   246,     0,     0,     0,   247,     0,   248,   249,
+       0,   250,   251,   252,     0,   253,   254,     0,   255,   256,
+     257,   258,   259,   260,   261,   750,     0,   262,   263,   264,
+     265,   751,   752,   266,   267,     0,   268,   269,   270,   753,
+       0,   271,     0,     0,     0,   754,   273,     0,   274,     0,
+     275,     0,   276,   277,   755,   279,   756,   281,   282,     0,
+     283,     0,   757,   284,   285,   286,     0,   287,   758,   759,
+       0,   288,   289,     0,     0,     0,   760,   291,   292,   293,
+     294,   761,     0,     0,   295,   296,   297,     0,     0,   298,
+       0,     0,     0,   762,   299,   300,   763,     0,     0,   301,
+       0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
+       0,     0,   307,   308,   764,     0,     0,   310,     0,   765,
+     311,   312,     0,     0,     0,     0,     0,   766,   314,     0,
+     315,     0,   316,     0,   317,   318,     0,     0,   767,     0,
+       0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
+     327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
+     336,   337,   338,   768,   339,   340,   341,   342,   769,   343,
+     344,   345,     0,     0,     0,     0,   346,   347,   348,   349,
+     770,   351,     0,     0,   771,   353,   772,   354,     0,   355,
+     773,   774,   775,   776,   777,   360,   361,   362,   363,   364,
+     365,     0,   778,   366,     0,     0,   367,   368,   369,   370,
+     779,     0,   781,   371,   372,     0,   782,   783,   373,     0,
+     374,   375,   784,     0,   377,   378,   379,   380,     0,   381,
+     382,     0,     0,     0,     0,     0,     0,     0,     0,   383,
+     384,   385,     0,   785,   386,     0,   387,     0,   388,   389,
+     786,   391,   392,   393,   394,   787,   788,   397,   789,     0,
+     398,   399,   400,     0,   401,     0,   402,   403,   404,   405,
+     406,     0,   790,   408,   409,     0,     0,   410,     0,     0,
+       0,   411,   412,   413,   414,   415,     0,     0,   416,   417,
+     418,   419,   420,     0,   421,   422,     0,   423,   424,   425,
+     791,   792,   426,     0,   427,     0,   428,   429,     0,   430,
+     431,     0,   432,     0,   793,     0,   794,   434,   435,   436,
+     437,   438,   439,   795,   796,   442,   443,   444,   445,     0,
+     797,   447,     0,     0,     0,   448,   449,   450,   451,     0,
+       0,     0,   452,     0,     0,     0,   453,     0,   454,   455,
+     456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
+     465,     0,     0,     0,     0,     0,     0,   466,   467,     0,
+     468,     0,     0,   469,     0,     0,     0,   470,   471,   472,
+       0,     0,     0,   473,   798,   799,   474,   475,     0,   476,
+     477,   800,   479,   480,   481,   801,   802,   482,   483,   484,
+     485,   803,   486,   487,     0,     0,   488,   489,   490,   491,
+       0,   804,   492,   493,     0,   805,   806,   807,   808,     0,
+       0,     0,     0,     0,   498,   499,   500,     0,   809,   810,
+     811,   502,   503,   504,   812,   505,   506,   813,   507,   508,
+       0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
+     513,     0,   814,   515,     0,     0,   815,   816,   817,   818,
+     516,     0,     0,   517,   819,     0,   820,   518,   519,   520,
+     521,   522,   821,   822,     0,     0,     0,     0,     0,     0,
+     525,   526,     0,   527,   528,   529,     0,     0,   823,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   824,   825,
+       0,     0,     0,     0,   826,   827,     0,     0,   828,   829,
+       0,     0,   830,   831,   160,     0,   161,   717,   163,   164,
+     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
+       0,   718,     0,   170,   171,   172,   173,   174,   175,   176,
+     719,   178,     0,   179,     0,     0,   720,   180,   721,   722,
+     723,   181,   724,     0,   182,   183,   184,     0,   185,     0,
+     186,   187,     0,     0,   188,   725,   726,   189,   190,     0,
+     191,   727,   728,   193,   194,     0,   195,   196,   197,   198,
+     729,   200,     0,   730,   202,   731,   732,   733,   734,   735,
+       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
+     216,   217,     0,   218,   219,   220,   736,   222,     0,   223,
+     737,   738,   224,     0,     0,   225,   739,   226,   740,   741,
+     227,     0,   228,   742,   743,     0,   229,   230,   231,   744,
+     745,   746,     0,     0,     0,     0,   747,   234,   748,     0,
+       0,   749,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,   255,   256,   257,   258,   259,   260,   261,   750,     0,
+     262,   263,   264,   265,   751,   752,   266,   267,     0,   268,
+     269,   270,   753,     0,   271,     0,     0,     0,   754,   273,
+       0,   274,     0,   275,     0,   276,   277,   755,   279,   756,
+     281,   282,     0,   283,     0,   757,   284,   285,   286,     0,
+     287,   758,   759,     0,   288,   289,     0,     0,     0,   760,
+     291,   292,   293,   294,   761,     0,     0,   295,   296,   297,
+       0,     0,   298,     0,     0,     0,   762,   299,   300,  1922,
+       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
+       0,     0,   306,     0,     0,   307,   308,   764,     0,     0,
+     310,     0,   765,   311,   312,     0,     0,     0,     0,     0,
+     766,   314,     0,   315,     0,   316,     0,   317,   318,     0,
+       0,   767,     0,     0,     0,   319,   320,   321,   322,   323,
+     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
+     334,     0,   335,   336,   337,   338,   768,   339,   340,   341,
+     342,   769,   343,   344,   345,     0,     0,     0,     0,   346,
+     347,   348,   349,   770,   351,     0,     0,   771,   353,   772,
+     354,     0,   355,   773,   774,   775,   776,   777,   360,   361,
+     362,   363,   364,   365,     0,   778,   366,     0,     0,   367,
+     368,   369,   370,   779,     0,   781,   371,   372,     0,   782,
+     783,   373,     0,   374,   375,   784,     0,   377,   378,   379,
+     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
+       0,     0,   383,   384,   385,     0,   785,   386,     0,   387,
+       0,   388,   389,   786,   391,   392,   393,   394,   787,   788,
+     397,   789,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   790,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,   791,   792,   426,     0,   427,     0,   428,
+     429,     0,   430,   431,     0,   432,     0,   793,     0,   794,
+     434,   435,   436,   437,   438,   439,   795,   796,   442,   443,
+     444,   445,     0,   797,   447,     0,     0,     0,   448,   449,
+     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
+       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
+     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
+     470,   471,   472,     0,     0,     0,   473,   798,   799,   474,
+     475,     0,   476,   477,   800,   479,   480,   481,   801,   802,
+     482,   483,   484,   485,   803,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,   804,   492,   493,     0,   805,   806,
+     807,   808,     0,     0,     0,     0,     0,   498,   499,   500,
+       0,   809,   810,   811,   502,   503,   504,   812,   505,   506,
+     813,   507,   508,     0,   509,   510,     0,     0,   511,     0,
+       0,   512,     0,   513,     0,   814,   515,     0,     0,   815,
+     816,   817,   818,   516,     0,     0,   517,   819,     0,   820,
+     518,   519,   520,   521,   522,   821,   822,     0,     0,     0,
+       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
+       0,   823,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   824,   825,     0,     0,     0,     0,   826,   827,     0,
        0,   828,   829,     0,     0,   830,   831,   160,     0,   161,
      717,   163,   164,   165,   166,     0,     0,   167,     0,     0,
@@ -6814,210 +6822,82 @@ static const yytype_int16 yytable[] =
      819,     0,   820,   518,   519,   520,   521,   522,   821,   822,
        0,     0,     0,     0,     0,     0,   525,   526,     0,   527,
      528,   529,     0,     0,   823,     0,     0,     0,     0,     0,
-       0,     0,   824,   825,     0,     0,     0,     0,   826,   827,
-       0,     0,   828,   829,     0,     0,   830,   831,   160,     0,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
-       0,   180,   721,     0,     0,   181,     0,     0,   182,   183,
-     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
-       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
-     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
-     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
-     229,   230,   231,     0,     0,  1967,     0,     0,     0,     0,
-     233,   234,   748,     0,     0,     0,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-     260,   261,     0,     0,   262,   263,   264,   265,     0,   752,
-     266,   267,     0,   268,   269,   270,   753,     0,   271,     0,
-       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
-     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
-     284,   285,   286,     0,   287,   758,   759,     0,   288,   289,
-       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
-       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,   767,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
-       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
-     358,   359,   360,   361,   362,   363,   364,   365,     0,   778,
-     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,   782,   783,   373,     0,   374,   375,   376,
-       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
-       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
-       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
-     393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
-     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
-     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
-       0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
-       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
-       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
-     440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
-       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
-       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
-     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
-     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
-     473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
-     480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,   804,   492,
-     493,     0,  1968,   495,   496,  1969,     0,     0,     0,     0,
-       0,   498,   499,   500,     0,     0,   810,   501,   502,   503,
-     504,   812,   505,   506,   813,   507,   508,     0,   509,   510,
-       0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
-     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
-     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
-     524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
-     527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
-       0,     0,   160,     0,   161,   162,   163,   164,   165,   166,
-       0,     0,   167,     0,     0,     0,   168,   830,   831,   169,
-       0,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
-       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
-       0,     0,   188,     0,     0,   189,   190,     0,   191,   192,
-       0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
-       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
-     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
-    3218,   218,   219,   220,   221,   222,     0,   223,     0,     0,
-     224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
-     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
-     235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
-     239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
-     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
-     264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
-       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
-     641,   275,     0,   276,   277,   278,   279,   280,   281,   282,
-       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
-       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
-     293,   294,     0,     0,     0,   295,   296,   297,  2285,     0,
-     298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
-     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
-     306,  2286,     0,   307,   308,   309,     0,     0,   310,     0,
-       0,   311,   312,     0,  3598,     0,     0,     0,   313,   314,
-       0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
-       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
-     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
-     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
-     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
-     355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
-     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
-     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
-       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
-     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
-     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
-     389,   390,   391,   392,   393,   394,   395,   396,   397,     0,
-       0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
-     405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
-       0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
-     417,   418,   419,   420,     0,   421,   422,     0,   423,   424,
-     425,     0,     0,   426,     0,   427,     0,   428,   429,     0,
-     430,   431,     0,   432,     0,   433,     0,     0,   434,   435,
-     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
-       0,   446,   447,  2590,     0,     0,   448,   449,   450,   451,
-       0,     0,     0,   452,     0,     0,     0,   453,     0,   454,
-     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
-     464,   465,   643,     0,     0,     0,     0,     0,   466,   467,
-       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
-     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
-     476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
-     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
-       0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
-       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
-     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
-       0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
-       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
-     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
-       0,   525,   526,     0,   527,   528,   529,     0,     0,   530,
-       0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
-     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
-       0,   169,  3290,   170,   171,   172,   173,   174,   175,   176,
-     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
-       0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
-     186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
-     191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
-     199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
-       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
-     216,   217,  3218,   218,   219,   220,   221,   222,     0,   223,
-       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
-     227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
-       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
-       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
-       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
-     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
-       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
-       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
-     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
-     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
-       0,   274,   641,   275,     0,   276,   277,   278,   279,   280,
-     281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
-     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
-     291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
-    2285,     0,   298,     0,     0,     0,     0,   299,   300,     0,
-       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
-       0,     0,   306,  2286,     0,   307,   308,   309,     0,     0,
-     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
-     313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
-       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
-     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
-     334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
-     342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
-     347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
-     354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
-     362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
-     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
-       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
-     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
-       0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
-       0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
-     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
-     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
-     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
-       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
-     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
-     429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
-     434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
-     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
-     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
-       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
-     462,   463,   464,   465,   643,     0,     0,     0,     0,     0,
-     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
-     470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
-     475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
-     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
-     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
-     496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
-       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
-       0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
-       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
-       0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
-     518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
-       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-       0,   530,     0,     0,     0,     0,   160,     0,   161,   162,
+       0,     0,     0,     0,   824,   825,     0,     0,     0,     0,
+     826,   827,     0,     0,   828,   829,     0,     0,   830,   831,
+     160,     0,   161,   162,   163,   164,   165,   166,     0,     0,
+     167,     0,     0,     0,   168,     0,     0,   169,     0,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
+       0,     0,     0,   180,   721,     0,     0,   181,     0,     0,
+     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
+     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
+     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
+     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
+     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,     0,   229,   230,   231,     0,     0,  1967,     0,     0,
+       0,     0,   233,   234,   748,     0,     0,     0,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
+     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
+       0,   752,   266,   267,     0,   268,   269,   270,   753,     0,
+     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,   758,   759,     0,
+     288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
+       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
+     302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
+       0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
+       0,   316,     0,   317,   318,     0,     0,   767,     0,     0,
+       0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
+     328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
+     337,   338,     0,   339,   340,   341,   342,     0,   343,   344,
+     345,     0,     0,     0,     0,   346,   347,   348,   349,   350,
+     351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
+     356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
+       0,   778,   366,     0,     0,   367,   368,   369,   370,     0,
+       0,     0,   371,   372,     0,   782,   783,   373,     0,   374,
+     375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
+       0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
+     385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
+     391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
+       0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
+     411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
+     419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
+       0,   426,     0,   427,     0,   428,   429,     0,   430,   431,
+       0,   432,     0,   433,     0,     0,   434,   435,   436,   437,
+     438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
+     447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
+       0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
+     457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
+       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
+       0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
+       0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
+     478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
+       0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
+     804,   492,   493,     0,  1968,   495,   496,  1969,     0,     0,
+       0,     0,     0,   498,   499,   500,     0,     0,   810,   501,
+     502,   503,   504,   812,   505,   506,   813,   507,   508,     0,
+     509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
+       0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
+       0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
+     522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
+     526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
+       0,     0,     0,     0,     0,     0,   160,     0,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   169,  3290,   170,   171,   172,   173,   174,
+     168,   830,   831,   169,     0,   170,   171,   172,   173,   174,
      175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
      185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
      190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
      197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
      206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
+     215,     0,   216,   217,  3218,   218,   219,   220,   221,   222,
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
      231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
@@ -7028,14 +6908,14 @@ static const yytype_int16 yytable[] =
      253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
        0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
+     272,   273,     0,   274,   641,   275,     0,   276,   277,   278,
      279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
      286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
        0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
+     296,   297,  2285,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
+     305,     0,     0,     0,   306,  2286,     0,   307,   308,   309,
+       0,     0,   310,     0,     0,   311,   312,     0,  3598,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
      318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
@@ -7059,329 +6939,7 @@ static const yytype_int16 yytable[] =
      442,   443,   444,   445,     0,   446,   447,  2590,     0,     0,
      448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
        0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
-       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
-       0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
-       0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
-     494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
-     505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
-       0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
-       0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   530,     0,     0,     0,     0,   160,     0,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,  3068,
-       0,     0,   168,     0,     0,   169,   831,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
-       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
-     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
-       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
-     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
-     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
-     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-     260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
-     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
-       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
-     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
-     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
-       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
-       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
-       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
-     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
-     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
-       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
-       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
-       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
-     393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
-     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
-     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
-       0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
-       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
-       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
-     440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
-       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
-       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
-     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
-     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
-     473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
-     480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
-     493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
-       0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
-     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
-       0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
-     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
-     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
-     524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
-     527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
-       0,     0,   160,     0,   161,   162,   163,   164,   165,   166,
-       0,  4886,   167,     0,     0,     0,   168,  4887,   831,   169,
-       0,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
-       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
-       0,     0,   188,     0,     0,   189,   190,     0,   191,   192,
-       0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
-       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
-     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
-       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
-     224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
-     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
-     235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
-     239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
-     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
-     264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
-       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
-       0,   275,     0,   276,   277,   278,   279,   280,   281,   282,
-       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
-       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
-     293,   294,     0,     0,     0,   295,   296,   297,     0,     0,
-     298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
-     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
-     306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
-       0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
-       0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
-       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
-     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
-     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
-     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
-     355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
-     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
-     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
-       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
-     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
-     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
-     389,   390,   391,   392,   393,   394,   395,   396,   397,     0,
-       0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
-     405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
-       0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
-     417,   418,   419,   420,     0,   421,   422,     0,   423,   424,
-     425,     0,     0,   426,     0,   427,     0,   428,   429,     0,
-     430,   431,     0,   432,     0,   433,     0,     0,   434,   435,
-     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
-       0,   446,   447,     0,     0,     0,   448,   449,   450,   451,
-       0,     0,     0,   452,     0,     0,     0,   453,     0,   454,
-     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
-     464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
-       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
-     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
-     476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
-     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
-       0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
-       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
-     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
-       0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
-       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
-     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
-       0,   525,   526,     0,   527,   528,   529,     0,     0,   530,
-       0,     0,     0,     0,     0,     0,   160,     0,   161,   162,
-     163,   164,   165,   166,  1239,     0,   167,     0,     0,     0,
-     168,     0,   831,   169,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
-       0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
-     190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
-     197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
-     206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
-       0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
-       0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
-     231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
-       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
-       0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
-       0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
-     279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
-     286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
-       0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
-     300,     0,  1471,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
-       0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
-     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
-     332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
-     340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
-       0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
-     353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
-     360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
-       0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
-       0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
-       0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
-       0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
-       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
-     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
-     442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
-       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
-       0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
-       0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
-     494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
-     505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
-       0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
-       0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   530,     0,     0,     0,     0,   160,     0,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,   169,   568,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
-       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
-     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
-       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
-     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
-     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
-     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-     260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
-     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
-       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
-     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
-     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
-       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
-       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
-       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
-     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
-     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
-       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
-       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
-       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
-     393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
-     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
-     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
-       0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
-       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
-       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
-     440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
-       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
-       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
-     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
-     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
-     473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
-     480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
-     493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
-       0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
-     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
-       0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
-     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
-     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
-     524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
-     527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  2531,   160,     0,   161,   162,
-     163,   164,   165,   166,     0,     0,   167,     0,   568,     0,
-     168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
-       0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
-     190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
-     197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
-     206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
-       0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
-       0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
-     231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
-       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
-       0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
-       0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
-     279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
-     286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
-       0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
-     300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
-       0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
-     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
-     332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
-     340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
-       0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
-     353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
-     360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
-       0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
-       0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
-       0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
-       0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
-       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
-     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
-     442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
+     460,   461,   462,   463,   464,   465,   643,     0,     0,     0,
        0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
        0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
@@ -7395,15 +6953,15 @@ static const yytype_int16 yytable[] =
        0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
        0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
      529,     0,     0,   530,     0,     0,     0,     0,     0,     0,
-     160,     0,   161,   162,   163,   164,   165,   166,  3289,     0,
-     167,     0,     0,     0,   168,     0,  3290,   169,     0,   170,
+     160,     0,   161,   162,   163,   164,   165,   166,     0,     0,
+     167,     0,     0,     0,   168,     0,     0,   169,  3290,   170,
      171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
        0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
      182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
      188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
      194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
      202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
-     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     211,   212,   213,   214,   215,     0,   216,   217,  3218,   218,
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
        0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
@@ -7414,13 +6972,13 @@ static const yytype_int16 yytable[] =
      250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
      258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
        0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
-     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
+     271,     0,     0,     0,   272,   273,     0,   274,   641,   275,
        0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
        0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
      288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
-       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   295,   296,   297,  2285,     0,   298,     0,
        0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
-     302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
+     302,   303,     0,   304,   305,     0,     0,     0,   306,  2286,
        0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
      312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
        0,   316,     0,   317,   318,     0,     0,     0,     0,     0,
@@ -7446,7 +7004,7 @@ static const yytype_int16 yytable[] =
      447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
        0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
      457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
-       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
+     643,     0,     0,     0,     0,     0,   466,   467,     0,   468,
        0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
        0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
      478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
@@ -7460,8 +7018,8 @@ static const yytype_int16 yytable[] =
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
        0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
-     165,   166,     0,     0,   167,     0,     0,     0,   168,  4887,
-     831,   169,     0,   170,   171,   172,   173,   174,   175,   176,
+     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
+       0,   169,  3290,   170,   171,   172,   173,   174,   175,   176,
      177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
        0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
      186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
@@ -7507,7 +7065,7 @@ static const yytype_int16 yytable[] =
      423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
      429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
-     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+     444,   445,     0,   446,   447,  2590,     0,     0,   448,   449,
      450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
        0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
      462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
@@ -7523,73 +7081,9 @@ static const yytype_int16 yytable[] =
        0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
      518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
        0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-       0,   530,     0,     0,     0,     0,   160,     0,   161,   162,
-     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   169,   568,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
-       0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
-     190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
-     197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
-     206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
-       0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
-       0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
-     231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
-       0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
-       0,     0,   262,   263,   652,   265,     0,     0,   266,   267,
-       0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     653,   273,     0,   274,     0,   275,     0,   276,   277,   278,
-     279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
-     286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
-       0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
-     296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
-     300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
-       0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
-     322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
-     332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
-     340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
-       0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
-     353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
-     360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
-       0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
-       0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
-       0,   387,     0,   654,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
-       0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
-       0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
-     415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
-     442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
-       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
-       0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
-       0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
-     494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
-     505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
-       0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
-       0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   530,     0,     0,     0,     0,   160,     0,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,   169,   568,   170,   171,   172,
+       0,   530,     0,     0,     0,     0,     0,     0,   160,     0,
+     161,   162,   163,   164,   165,   166,     0,     0,   167,  3068,
+       0,     0,   168,     0,     0,   169,   831,   170,   171,   172,
      173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
        0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
      184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
@@ -7652,31 +7146,96 @@ static const yytype_int16 yytable[] =
      517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
      524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
      527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
-     160,     0,   161,   162,   163,   164,   165,   166,     0,     0,
-     167,     0,     0,     0,   168,     0,     0,   169,   831,   170,
-     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
-       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
-     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
-     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
-     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
-     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
-     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
-     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
-       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
-       0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
-     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
-     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
-     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
-     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
-     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
-       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
-     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
-       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
-       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+       0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
+     165,   166,     0,  4886,   167,     0,     0,     0,   168,  4887,
+     831,   169,     0,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+       0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
+     186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
+     191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
+     199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
+       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
+     216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
+     227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
+       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
+     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
+     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
+       0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
+     281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
+     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
+     291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
+       0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
+       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
+       0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
+       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
+     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
+     334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
+     342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
+     347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
+     354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
+     362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
+     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
+       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
+       0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
+       0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
+     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
+     429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
+     434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
+     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
+       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
+     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
+     470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
+     475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
+     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
+     496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
+       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
+       0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
+       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
+       0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
+     518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
+       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
+       0,   530,     0,     0,     0,     0,     0,     0,     0,     0,
+     160,     0,   161,   162,   163,   164,   165,   166,  1239,     0,
+     167,     0,     0,     0,   168,     0,   831,   169,     0,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
+       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
+     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
+     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
+     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
+     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
+     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
+     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
+       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
+     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
      288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
        0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
-       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
+       0,     0,     0,   299,   300,     0,  1471,     0,   301,     0,
      302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
        0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
      312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
@@ -7716,137 +7275,9 @@ static const yytype_int16 yytable[] =
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
-       0,     0,   160,     0,   161,   162,   163,   164,   165,   166,
-       0,     0,   167,     0,     0,     0,   168,     0,     0,   169,
-    3290,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
-       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
-       0,     0,   188,     0,     0,   189,   190,     0,   191,  1010,
-    1011,   193,   194,     0,   195,   196,   197,   198,   199,   200,
-       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
-     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
-       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
-     224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
-     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,  1012,
-     235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
-     239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
-     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
-     264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
-       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
-       0,   275,     0,   276,   277,   278,   279,   280,   281,  1013,
-       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
-       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
-     293,   294,     0,     0,     0,   295,   296,   297,     0,     0,
-     298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
-     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
-     306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
-       0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
-       0,  1014,     0,   316,     0,   317,   318,     0,     0,     0,
-       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
-     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
-     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
-     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
-     355,     0,   356,   357,   358,   359,   360,   361,   362,  1015,
-     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
-     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
-       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
-     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
-     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
-     389,  1016,   391,   392,   393,   394,   395,   396,   397,     0,
-       0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
-     405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
-       0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
-     417,   418,   419,   420,     0,   421,   422,     0,   423,   424,
-     425,     0,     0,   426,     0,   427,     0,   428,   429,     0,
-     430,   431,     0,   432,     0,   433,     0,     0,  1017,   435,
-     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
-       0,   446,   447,     0,     0,     0,   448,   449,  1018,   451,
-       0,     0,     0,   452,     0,     0,     0,   453,     0,   454,
-     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
-     464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
-       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
-     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
-     476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
-     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
-       0,     0,     0,     0,     0,  1019,   499,   500,     0,     0,
-       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
-     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
-       0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
-       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
-     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
-       0,   525,   526,     0,   527,   528,   529,     0,     0,   530,
-       0,     0,     0,   160,     0,   161,   162,   163,   164,   165,
-     166,     0,     0,   167,     0,     0,     0,   168,     0,     0,
-     169,  1020,   170,   171,   172,   173,   174,   175,   176,   177,
-     178,     0,   179,     0,     0,     0,   180,     0,     0,     0,
-     181,     0,     0,   182,   183,   184,     0,   185,     0,   186,
-     187,     0,     0,   188,     0,     0,   189,   190,     0,   191,
-     192,     0,   193,   194,     0,   195,   196,   197,   198,   199,
-     200,     0,   201,   202,   203,   204,   205,   206,   207,     0,
-     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
-     217,     0,   218,   219,   220,   221,   222,     0,   223,     0,
-       0,   224,     0,     0,   225,     0,   226,     0,     0,   227,
-       0,   228,     0,     0,     0,   229,   230,   231,     0,     0,
-     232,     0,     0,     0,     0,   233,   234,     0,     0,     0,
-       0,   235,     0,   236,     0,     0,     0,     0,   237,     0,
-     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
-       0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
-     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
-     255,   256,   257,   258,   259,   260,   261,     0,     0,   262,
-     263,   264,   265,     0,     0,   266,   267,     0,   268,   269,
-     270,     0,     0,   271,     0,     0,     0,   272,   273,     0,
-     274,     0,   275,     0,   276,   277,   278,   279,   280,   281,
-     282,     0,   283,     0,     0,   284,   285,   286,     0,   287,
-       0,     0,     0,   288,   289,     0,     0,     0,   290,   291,
-     292,   293,   294,     0,     0,     0,   295,   296,   297,     0,
-       0,   298,     0,     0,     0,     0,   299,   300,     0,     0,
-       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
-       0,   306,     0,     0,   307,   308,   309,     0,     0,   310,
-       0,     0,   311,   312,   666,     0,     0,     0,     0,   313,
-     314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
-       0,     0,     0,     0,   319,   320,   321,   322,   323,   324,
-     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
-       0,   335,   336,   337,   338,     0,   339,   340,   341,   342,
-       0,   343,   344,   345,     0,     0,     0,     0,   346,   347,
-     348,   349,   350,   351,     0,     0,   352,   353,     0,   354,
-       0,   355,     0,   356,   357,   358,   359,   360,   361,   362,
-     363,   364,   365,     0,     0,   366,     0,     0,   367,   368,
-     369,   370,     0,     0,     0,   371,   372,     0,     0,     0,
-     373,     0,   374,   375,   376,     0,   377,   378,   379,   380,
-       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
-       0,   383,   384,   385,     0,     0,   386,     0,   387,     0,
-     388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
-       0,     0,   398,   399,   400,     0,   401,     0,   402,   403,
-     404,   405,   406,     0,   407,   408,   409,     0,     0,   410,
-       0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
-     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
-     424,   425,     0,     0,   426,     0,   427,     0,   428,   429,
-       0,   430,   431,     0,   432,     0,   433,     0,     0,   434,
-     435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
-     445,     0,   446,   447,     0,     0,     0,   448,   449,   450,
-     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
-     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
-     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
-     467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
-     471,   472,     0,     0,     0,   473,     0,     0,   474,   475,
-       0,   476,   477,   478,   479,   480,   481,     0,     0,   482,
-     483,   484,   485,     0,   486,   487,     0,     0,   488,   489,
-     490,   491,     0,   156,   492,   493,     0,   494,   495,   496,
-     497,     0,     0,     0,     0,     0,   498,   499,   500,     0,
-       0,     0,   501,   502,   503,   504,     0,   505,   506,     0,
-     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
-     512,     0,   513,     0,   514,   515,     0,     0,     0,     0,
-       0,     0,   516,     0,     0,   517,     0,     0,     0,   518,
-     519,   520,   521,   522,   523,   524,     0,     0,     0,     0,
-       0,     0,   525,   526,     0,   527,   528,   529,     0,     0,
-     530,     0,     0,     0,   160,     0,   161,   162,   163,   164,
+       0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
      165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
-       0,   169,  1542,   170,   171,   172,   173,   174,   175,   176,
+       0,   169,   568,   170,   171,   172,   173,   174,   175,   176,
      177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
        0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
      186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
@@ -7871,7 +7302,7 @@ static const yytype_int16 yytable[] =
        0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
        0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
        0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
-     310,     0,     0,   311,   312,   666,     0,     0,     0,     0,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
      313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
        0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
@@ -7900,7 +7331,7 @@ static const yytype_int16 yytable[] =
      470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
      475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
      482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
-     489,   490,   491,     0,   156,   492,   493,     0,   494,   495,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
      496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
        0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
        0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
@@ -7908,84 +7339,150 @@ static const yytype_int16 yytable[] =
        0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
      518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
        0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-       0,   530,     0,     0,     0,   160,     0,   161,   162,   163,
-     164,   165,   166,     0,     0,   167,     0,     0,     0,   168,
-       0,     0,   169,  1894,   170,   171,   172,   173,   174,   175,
-     176,   177,   178,     0,   179,     0,     0,     0,   180,     0,
-       0,     0,   181,     0,     0,   182,   183,   184,     0,   185,
-       0,   186,   187,     0,     0,   188,     0,     0,   189,   190,
-       0,   191,   192,     0,   193,   194,     0,   195,   196,   197,
-     198,   199,   200,     0,   201,   202,   203,   204,   205,   206,
-     207,     0,   208,   209,   210,   211,   212,   213,   214,   215,
-       0,   216,   217,     0,   218,   219,   220,   221,   222,     0,
-     223,     0,     0,   224,     0,     0,   225,     0,   226,     0,
-       0,   227,     0,   228,     0,     0,     0,   229,   230,   231,
-       0,     0,   232,     0,     0,     0,     0,   233,   234,     0,
-       0,     0,     0,   235,     0,   236,     0,     0,     0,     0,
-     237,     0,   238,   239,   240,   241,   242,     0,     0,     0,
-       0,   243,     0,     0,   244,   245,   246,     0,     0,     0,
-     247,     0,   248,   249,     0,   250,   251,   252,     0,   253,
-     254,     0,   255,   256,   257,   258,   259,   260,   261,     0,
-       0,   262,   263,   264,   265,     0,     0,   266,   267,     0,
-     268,   269,   270,     0,     0,   271,     0,     0,     0,   272,
-     273,     0,   274,     0,   275,     0,   276,   277,   278,   279,
-     280,   281,   282,     0,   283,     0,     0,   284,   285,   286,
-       0,   287,     0,     0,     0,   288,   289,     0,     0,     0,
-     290,   291,   292,   293,   294,     0,     0,     0,   295,   296,
-     297,     0,     0,   298,     0,     0,     0,     0,   299,   300,
-       0,     0,     0,   301,     0,   302,   303,     0,   304,   305,
-       0,     0,     0,   306,     0,     0,   307,   308,   309,     0,
-       0,   310,     0,     0,   311,   312,   666,     0,     0,     0,
-       0,   313,   314,     0,   315,     0,   316,     0,   317,   318,
-       0,     0,     0,     0,     0,     0,   319,   320,   321,   322,
-     323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
-     333,   334,     0,   335,   336,   337,   338,     0,   339,   340,
-     341,   342,     0,   343,   344,   345,     0,     0,     0,     0,
-     346,   347,   348,   349,   350,   351,     0,     0,   352,   353,
-       0,   354,     0,   355,     0,   356,   357,   358,   359,   360,
-     361,   362,   363,   364,   365,     0,     0,   366,     0,     0,
-     367,   368,   369,   370,     0,     0,     0,   371,   372,     0,
-       0,     0,   373,     0,   374,   375,   376,     0,   377,   378,
-     379,   380,     0,   381,   382,     0,     0,     0,     0,     0,
-       0,     0,     0,   383,   384,   385,     0,     0,   386,     0,
-     387,     0,   388,   389,   390,   391,   392,   393,   394,   395,
-     396,   397,     0,     0,   398,   399,   400,     0,   401,     0,
-     402,   403,   404,   405,   406,     0,   407,   408,   409,     0,
-       0,   410,     0,     0,     0,   411,   412,   413,   414,   415,
-       0,     0,   416,   417,   418,   419,   420,     0,   421,   422,
-       0,   423,   424,   425,     0,     0,   426,     0,   427,     0,
-     428,   429,     0,   430,   431,     0,   432,     0,   433,     0,
-       0,   434,   435,   436,   437,   438,   439,   440,   441,   442,
-     443,   444,   445,     0,   446,   447,     0,     0,     0,   448,
-     449,   450,   451,     0,     0,     0,   452,     0,     0,     0,
-     453,     0,   454,   455,   456,   457,   458,   459,     0,   460,
-     461,   462,   463,   464,   465,     0,     0,     0,     0,     0,
-       0,   466,   467,     0,   468,     0,     0,   469,     0,     0,
-       0,   470,   471,   472,     0,     0,     0,   473,     0,     0,
-     474,   475,     0,   476,   477,   478,   479,   480,   481,     0,
-       0,   482,   483,   484,   485,     0,   486,   487,     0,     0,
-     488,   489,   490,   491,     0,   156,   492,   493,     0,   494,
-     495,   496,   497,     0,     0,     0,     0,     0,   498,   499,
-     500,     0,     0,     0,   501,   502,   503,   504,     0,   505,
-     506,     0,   507,   508,     0,   509,   510,     0,     0,   511,
-       0,     0,   512,     0,   513,     0,   514,   515,     0,     0,
-       0,     0,     0,     0,   516,     0,     0,   517,     0,     0,
-       0,   518,   519,   520,   521,   522,   523,   524,     0,     0,
-       0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
-       0,     0,   530,     0,     0,     0,   160,     0,   161,   162,
+       0,   530,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,  2531,   160,     0,   161,   162,   163,   164,
+     165,   166,     0,     0,   167,     0,   568,     0,   168,     0,
+       0,   169,     0,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+       0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
+     186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
+     191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
+     199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
+       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
+     216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
+     227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
+       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
+     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
+     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
+       0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
+     281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
+     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
+     291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
+       0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
+       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
+       0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
+       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
+     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
+     334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
+     342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
+     347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
+     354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
+     362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
+     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
+       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
+       0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
+       0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
+     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
+     429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
+     434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
+     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
+       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
+     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
+     470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
+     475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
+     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
+     496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
+       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
+       0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
+       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
+       0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
+     518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
+       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
+       0,   530,     0,     0,     0,     0,     0,     0,     0,     0,
+     160,     0,   161,   162,   163,   164,   165,   166,  3289,     0,
+     167,     0,     0,     0,   168,     0,  3290,   169,     0,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
+       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
+     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
+     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
+     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
+     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
+     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
+     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
+       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
+     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+     288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
+       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
+     302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
+       0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
+       0,   316,     0,   317,   318,     0,     0,     0,     0,     0,
+       0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
+     328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
+     337,   338,     0,   339,   340,   341,   342,     0,   343,   344,
+     345,     0,     0,     0,     0,   346,   347,   348,   349,   350,
+     351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
+     356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
+       0,     0,   366,     0,     0,   367,   368,   369,   370,     0,
+       0,     0,   371,   372,     0,     0,     0,   373,     0,   374,
+     375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
+       0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
+     385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
+     391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
+       0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
+     411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
+     419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
+       0,   426,     0,   427,     0,   428,   429,     0,   430,   431,
+       0,   432,     0,   433,     0,     0,   434,   435,   436,   437,
+     438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
+     447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
+       0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
+     457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
+       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
+       0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
+       0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
+     478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
+       0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
+       0,   492,   493,     0,   494,   495,   496,   497,     0,     0,
+       0,     0,     0,   498,   499,   500,     0,     0,     0,   501,
+     502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
+     509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
+       0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
+       0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
+     522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
+     526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
+       0,     0,     0,     0,     0,     0,   160,     0,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   169,  2621,   170,   171,   172,   173,   174,
+     168,  4887,   831,   169,     0,   170,   171,   172,   173,   174,
      175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
      185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
-     190,     0,   191,  1010,  1011,   193,   194,     0,   195,   196,
+     190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
      197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
      206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
      215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
      231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,  1012,   235,     0,   236,     0,     0,     0,
+       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
        0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
        0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
@@ -7993,35 +7490,35 @@ static const yytype_int16 yytable[] =
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
        0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
      272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
-     279,   280,   281,  1013,     0,   283,     0,     0,   284,   285,
+     279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
      286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
        0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
      305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
        0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
-       0,     0,   313,   314,     0,  1014,     0,   316,     0,   317,
+       0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
      318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
        0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
      353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
-     360,   361,   362,  1015,   364,   365,     0,     0,   366,     0,
+     360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
        0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
        0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
      378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
        0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
-       0,   387,     0,   388,   389,  1016,   391,   392,   393,   394,
+       0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
      395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
        0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
        0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
      415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
      422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
        0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,  1017,   435,   436,   437,   438,   439,   440,   441,
+       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
      442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
-     448,   449,  1018,   451,     0,     0,     0,   452,     0,     0,
+     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
        0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
      460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
        0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
@@ -8036,110 +7533,175 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
        0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
        0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
-     529,     0,     0,   530,     0,     0,     0,   160,     0,   161,
-     162,   163,   164,   165,   166,     0,     0,   167,     0,     0,
-       0,   168,     0,     0,   169,  1020,   170,   171,   172,   173,
-     174,   175,   176,   177,   178,     0,   179,     0,     0,     0,
-     180,     0,     0,     0,   181,     0,     0,   182,   183,   184,
-       0,   185,     0,   186,   187,     0,     0,   188,     0,     0,
-     189,   190,     0,   191,   192,     0,   193,   194,     0,   195,
-     196,   197,   198,   199,   200,     0,   201,   202,   203,   204,
-     205,   206,   207,     0,   208,   209,   210,   211,   212,   213,
-     214,   215,  1382,   216,   217,     0,   218,   219,   220,   221,
-     222,     0,   223,     0,     0,   224,     0,     0,   225,     0,
-     226,     0,     0,   227,     0,   228,     0,     0,     0,   229,
-     230,   231,     0,     0,   232,     0,     0,     0,     0,   233,
-     234,     0,     0,     0,     0,   235,     0,   236,     0,     0,
-       0,     0,   237,     0,   238,   239,   240,   241,   242,     0,
-       0,     0,     0,   243,     0,     0,   244,   245,   246,     0,
-       0,     0,   247,     0,   248,   249,     0,   250,   251,   252,
-       0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
-     261,     0,     0,   262,   263,   264,   265,     0,     0,   266,
-     267,     0,   268,   269,   270,     0,     0,   271,     0,     0,
-       0,   272,   273,     0,   274,     0,   275,     0,   276,   277,
-     278,   279,   280,   281,   282,     0,   283,     0,     0,   284,
-     285,   286,     0,   287,     0,     0,     0,   288,   289,     0,
-       0,     0,   290,   291,   292,   293,   294,     0,     0,     0,
-     295,   296,   297,     0,     0,   298,     0,     0,     0,     0,
-     299,   300,     0,     0,     0,   301,     0,   302,   303,     0,
-     304,   305,     0,     0,     0,   306,     0,     0,   307,   308,
-     309,     0,     0,   310,     0,     0,   311,   312,     0,     0,
-       0,     0,     0,   313,   314,     0,   315,     0,   316,     0,
-     317,   318,     0,     0,     0,     0,     0,     0,   319,   320,
-     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
-     331,   332,   333,   334,     0,   335,   336,   337,   338,     0,
-     339,   340,   341,   342,     0,   343,   344,   345,     0,     0,
-       0,     0,   346,   347,   348,   349,   350,   351,     0,     0,
-     352,   353,     0,   354,     0,   355,     0,   356,   357,   358,
-     359,   360,   361,   362,   363,   364,   365,     0,     0,   366,
-       0,     0,   367,   368,   369,   370,     0,     0,     0,   371,
-     372,     0,     0,     0,   373,     0,   374,   375,   376,     0,
-     377,   378,   379,   380,     0,   381,   382,     0,     0,     0,
-       0,     0,     0,     0,     0,   383,   384,   385,     0,     0,
-     386,     0,   387,     0,   388,   389,   390,   391,   392,   393,
-     394,   395,   396,   397,     0,     0,   398,   399,   400,     0,
-     401,     0,   402,   403,   404,   405,   406,     0,   407,   408,
-     409,     0,     0,   410,     0,     0,     0,   411,   412,   413,
-     414,   415,     0,     0,   416,   417,   418,   419,   420,     0,
-     421,   422,     0,   423,   424,   425,     0,     0,   426,     0,
-     427,     0,   428,   429,     0,   430,   431,     0,   432,     0,
-     433,     0,     0,   434,   435,   436,   437,   438,   439,   440,
-     441,   442,   443,   444,   445,     0,   446,   447,     0,     0,
-       0,   448,   449,   450,   451,     0,     0,     0,   452,     0,
-       0,     0,   453,     0,   454,   455,   456,   457,   458,   459,
-       0,   460,   461,   462,   463,   464,   465,     0,     0,     0,
-       0,     0,     0,   466,   467,     0,   468,     0,     0,   469,
-       0,     0,     0,   470,   471,   472,     0,     0,     0,   473,
-       0,     0,   474,   475,     0,   476,   477,   478,   479,   480,
-     481,     0,     0,   482,   483,   484,   485,     0,   486,   487,
-       0,     0,   488,   489,   490,   491,     0,     0,   492,   493,
-       0,   494,   495,   496,   497,     0,     0,     0,     0,     0,
-     498,   499,   500,     0,     0,     0,   501,   502,   503,   504,
-       0,   505,   506,     0,   507,   508,     0,   509,   510,     0,
-       0,   511,     0,     0,   512,     0,   513,     0,   514,   515,
-       0,     0,     0,     0,     0,     0,   516,     0,     0,   517,
-       0,     0,     0,   518,   519,   520,   521,   522,   523,   524,
-       0,     0,     0,     0,     0,     0,   525,   526,     0,   527,
-     528,   529,     0,     0,   530,     0,     0,     0,   160,     0,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,   169,  1383,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
-       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
-     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
-       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
-     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
-     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
-     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-     260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
-     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
-       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
-     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
-     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
-       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
-       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
-       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
-     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
-     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
-       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
-       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
+     529,     0,     0,   530,     0,     0,     0,     0,     0,     0,
+     160,     0,   161,   162,   163,   164,   165,   166,     0,     0,
+     167,     0,     0,     0,   168,     0,     0,   169,   568,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
+       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
+     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
+     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
+     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
+     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
+     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
+     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   652,   265,
+       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
+     271,     0,     0,     0,   653,   273,     0,   274,     0,   275,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+     288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
+       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
+     302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
+       0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
+       0,   316,     0,   317,   318,     0,     0,     0,     0,     0,
+       0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
+     328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
+     337,   338,     0,   339,   340,   341,   342,     0,   343,   344,
+     345,     0,     0,     0,     0,   346,   347,   348,   349,   350,
+     351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
+     356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
+       0,     0,   366,     0,     0,   367,   368,   369,   370,     0,
+       0,     0,   371,   372,     0,     0,     0,   373,     0,   374,
+     375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
+       0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
+     385,     0,     0,   386,     0,   387,     0,   654,   389,   390,
+     391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
+       0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
+     411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
+     419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
+       0,   426,     0,   427,     0,   428,   429,     0,   430,   431,
+       0,   432,     0,   433,     0,     0,   434,   435,   436,   437,
+     438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
+     447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
+       0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
+     457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
+       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
+       0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
+       0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
+     478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
+       0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
+       0,   492,   493,     0,   494,   495,   496,   497,     0,     0,
+       0,     0,     0,   498,   499,   500,     0,     0,     0,   501,
+     502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
+     509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
+       0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
+       0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
+     522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
+     526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
+       0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
+     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
+       0,   169,   568,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+       0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
+     186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
+     191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
+     199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
+       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
+     216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
+     227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
+       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
+     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
+     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
+       0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
+     281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
+     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
+     291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
+       0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
+       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
+       0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
+       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
+     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
+     334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
+     342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
+     347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
+     354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
+     362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
+     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
+       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
+       0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
+       0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
+     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
+     429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
+     434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
+     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
+       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
+     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
+     470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
+     475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
+     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
+     496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
+       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
+       0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
+       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
+       0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
+     518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
+       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
+       0,   530,     0,     0,     0,     0,     0,     0,   160,     0,
+     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
+       0,     0,   168,     0,     0,   169,   831,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
+       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
+     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
+       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
+     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
+     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
+     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
+     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
+       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
+     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
+     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
+       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
+       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
+       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
+     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
+     260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
+     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
+       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
+     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
+     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
+       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
+       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
+       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
+       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
+     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
+       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
+       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
+     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
+     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
+       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
+       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
+       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
+     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
+     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
+     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
+       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
+       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
        0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
      393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
        0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
@@ -8164,73 +7726,74 @@ static const yytype_int16 yytable[] =
      515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
      517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
      524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
-     527,   528,   529,     0,     0,   530,     0,     0,     0,   160,
-       0,   161,   162,   163,   164,   165,   166,     0,     0,   167,
-       0,     0,     0,   168,     0,     0,     0,  1383,   170,   171,
-     172,   173,   174,   175,   176,   177,     0,     0,   925,     0,
-       0,     0,   180,     0,     0,     0,   181,     0,     0,   182,
-     183,   184,     0,   185,     0,     0,     0,     0,     0,   188,
-       7,     0,   189,   190,     0,   191,     0,     0,     0,     0,
-       0,   195,   196,   197,   926,   199,   200,     0,   201,   202,
-       0,     0,     0,     0,     0,     0,   208,     0,   210,     0,
-     212,   213,   214,   215,     0,   216,   217,     0,   218,   219,
-     220,     0,   222,     0,   223,     0,     0,   224,     0,     0,
-     225,     0,   226,     0,     0,   227,     0,   228,     0,     0,
-       0,   229,   230,   231,     0,     0,   232,     0,     0,     0,
-       0,   233,     0,     0,     0,     0,     0,   235,     0,   236,
-       0,     0,     0,     0,   237,     0,   238,   239,   240,   241,
-     242,     0,     0,     0,     0,     0,     0,     0,   244,   245,
-     246,     0,     0,     0,   247,     0,     0,   249,     0,   250,
-     251,   252,     0,   253,   254,     0,   255,   256,   257,   258,
-     259,     0,     0,     0,     0,   262,   263,   264,   265,     0,
-       0,   266,   267,   927,   268,   269,   270,     0,     0,     0,
-       0,     0,     0,     0,   273,     0,   274,     0,   275,     0,
-     276,   277,   278,   279,   280,     0,   282,     0,   283,     0,
-       0,     0,   285,   286,     0,     0,     0,     0,     0,     0,
-     289,     0,     0,     0,   290,   291,   292,   293,   294,    26,
-       0,     0,   295,   296,   297,     0,     0,   298,     0,     0,
-       0,     0,   299,     0,     0,     0,     0,   301,     0,   302,
-     303,     0,   304,   305,   928,     0,     0,   306,     0,     0,
-       0,   308,   309,     0,     0,   310,   929,     0,   311,   312,
-       0,     0,     0,     0,     0,   313,   314,     0,   315,     0,
-     316,     0,   317,   318,     0,     0,     0,     0,    32,     0,
-     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
-     329,   330,   331,   332,   333,   334,     0,   335,   336,   337,
-     338,     0,   339,   340,   341,   342,     0,   343,   344,   345,
-       0,     0,     0,     0,   346,   347,   348,   349,   350,   351,
-       0,     0,   352,   353,     0,   354,     0,   355,     0,   356,
-     357,   358,   359,   360,   361,   362,   363,   364,   365,     0,
-       0,   366,     0,     0,   367,   368,   369,   370,     0,     0,
-       0,     0,   372,     0,     0,     0,   373,     0,   374,   375,
-     376,     0,   377,   378,   379,   930,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   384,   385,
-       0,     0,     0,     0,   387,     0,   388,   389,   390,   391,
-     392,   393,   394,   395,   396,     0,     0,     0,     0,   399,
-     400,     0,   401,     0,   402,   403,   404,   405,   406,     0,
-     407,   408,   409,     0,     0,   410,     0,     0,     0,   411,
-     412,   413,   414,   415,     0,     0,   416,   417,   418,   419,
-     420,     0,   421,     0,     0,   423,     0,   425,    41,     0,
-     426,     0,     0,     0,   428,     0,     0,   430,   431,     0,
-     432,   931,   433,     0,     0,   434,     0,   436,   437,   438,
-     439,   440,   441,   442,     0,   444,   445,     0,   446,     0,
-       0,     0,     0,   448,   449,   450,     0,     0,     0,     0,
-     452,     0,     0,     0,     0,     0,     0,   455,     0,     0,
-     458,   459,     0,   460,     0,   462,     0,   464,   465,     0,
-       0,     0,     0,     0,     0,   466,   467,     0,   468,     0,
-       0,   469,     0,     0,     0,   470,     0,   472,     0,     0,
-       0,   473,     0,     0,     0,   475,     0,   476,   477,   478,
-     479,   480,   481,     0,     0,   482,   483,   484,   485,     0,
-     486,   487,     0,     0,   488,   489,   490,   491,     0,     0,
-     492,   493,     0,   494,   495,   496,   497,     0,     0,     0,
-       0,     0,   498,   499,   500,     0,     0,     0,     0,   502,
-     503,   504,     0,   505,   506,     0,   507,   508,     0,     0,
-       0,     0,     0,   511,     0,     0,   512,     0,     0,     0,
-     514,   515,     0,     0,     0,     0,     0,     0,   516,     0,
-       0,   517,     0,     0,     0,   518,   519,   520,   521,   522,
-     523,   524,     0,     0,    60,     0,     0,     0,   525,     0,
-       0,   527,     0,   529,     0,   160,   530,   161,   162,   163,
+     527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
+       0,     0,   160,     0,   161,   162,   163,   164,   165,   166,
+       0,     0,   167,     0,     0,     0,   168,     0,     0,   169,
+    3290,   170,   171,   172,   173,   174,   175,   176,   177,   178,
+       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
+       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
+       0,     0,   188,     0,     0,   189,   190,     0,   191,  1010,
+    1011,   193,   194,     0,   195,   196,   197,   198,   199,   200,
+       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
+     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
+       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
+     224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
+     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
+       0,     0,     0,     0,   233,   234,     0,     0,     0,  1012,
+     235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
+     239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
+       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
+     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
+     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
+     264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
+       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
+       0,   275,     0,   276,   277,   278,   279,   280,   281,  1013,
+       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
+       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
+     293,   294,     0,     0,     0,   295,   296,   297,     0,     0,
+     298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
+     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
+     306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
+       0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
+       0,  1014,     0,   316,     0,   317,   318,     0,     0,     0,
+       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
+     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
+     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
+     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
+     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
+     355,     0,   356,   357,   358,   359,   360,   361,   362,  1015,
+     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
+     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
+       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
+     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
+     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
+     389,  1016,   391,   392,   393,   394,   395,   396,   397,     0,
+       0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
+     405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
+       0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
+     417,   418,   419,   420,     0,   421,   422,     0,   423,   424,
+     425,     0,     0,   426,     0,   427,     0,   428,   429,     0,
+     430,   431,     0,   432,     0,   433,     0,     0,  1017,   435,
+     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
+       0,   446,   447,     0,     0,     0,   448,   449,  1018,   451,
+       0,     0,     0,   452,     0,     0,     0,   453,     0,   454,
+     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
+     464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
+       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
+     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
+     476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
+     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
+     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
+       0,     0,     0,     0,     0,  1019,   499,   500,     0,     0,
+       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
+     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
+       0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
+       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
+     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
+       0,   525,   526,     0,   527,   528,   529,     0,     0,   530,
+       0,     0,     0,     0,     0,   160,     0,   161,   162,   163,
      164,   165,   166,     0,     0,   167,     0,     0,     0,   168,
-       0,     0,   169,  4583,   170,   171,   172,   173,   174,   175,
+       0,     0,   169,  1020,   170,   171,   172,   173,   174,   175,
      176,   177,   178,     0,   179,     0,     0,     0,   180,     0,
        0,     0,   181,     0,     0,   182,   183,   184,     0,   185,
        0,   186,   187,     0,     0,   188,     0,     0,   189,   190,
@@ -8238,7 +7801,7 @@ static const yytype_int16 yytable[] =
      198,   199,   200,     0,   201,   202,   203,   204,   205,   206,
      207,     0,   208,   209,   210,   211,   212,   213,   214,   215,
        0,   216,   217,     0,   218,   219,   220,   221,   222,     0,
-     223,     0,     0,   224,     0,     0,   225,     0,   226,  1124,
+     223,     0,     0,   224,     0,     0,   225,     0,   226,     0,
        0,   227,     0,   228,     0,     0,     0,   229,   230,   231,
        0,     0,   232,     0,     0,     0,     0,   233,   234,     0,
        0,     0,     0,   235,     0,   236,     0,     0,     0,     0,
@@ -8292,8 +7855,73 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   516,     0,     0,   517,     0,     0,
        0,   518,   519,   520,   521,   522,   523,   524,     0,     0,
        0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
-       0,   160,   530,   161,   162,   163,   164,   165,   166,     0,
-       0,   167,     0,     0,     0,   168,     0,  1284,   169,     0,
+       0,     0,   530,     0,     0,     0,     0,     0,   160,     0,
+     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
+       0,     0,   168,     0,     0,   169,  1542,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
+       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
+     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
+       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
+     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
+     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
+     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
+     221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
+       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
+     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
+     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
+       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
+       0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
+       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
+     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
+     260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
+     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
+       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
+     277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
+     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
+       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
+       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
+       0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
+       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
+     308,   309,     0,     0,   310,     0,     0,   311,   312,   666,
+       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
+       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
+     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
+     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
+       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
+       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
+       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
+     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
+     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
+     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
+       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
+       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
+       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
+     393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
+       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
+     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
+     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
+       0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
+       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
+       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
+     440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
+       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
+       0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
+     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
+       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
+     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
+     473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
+     480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
+     487,     0,     0,   488,   489,   490,   491,     0,   156,   492,
+     493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
+       0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
+     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
+       0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
+     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
+     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
+     524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
+     527,   528,   529,     0,     0,   530,     0,     0,     0,     0,
+       0,   160,     0,   161,   162,   163,   164,   165,   166,     0,
+       0,   167,     0,     0,     0,   168,     0,     0,   169,  1894,
      170,   171,   172,   173,   174,   175,   176,   177,   178,     0,
      179,     0,     0,     0,   180,     0,     0,     0,   181,     0,
        0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
@@ -8319,7 +7947,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   299,   300,     0,     0,     0,   301,
        0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
        0,     0,   307,   308,   309,     0,     0,   310,     0,     0,
-     311,   312,     0,     0,     0,     0,     0,   313,   314,     0,
+     311,   312,   666,     0,     0,     0,     0,   313,   314,     0,
      315,     0,   316,     0,   317,   318,     0,     0,     0,     0,
        0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
      327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
@@ -8348,23 +7976,88 @@ static const yytype_int16 yytable[] =
        0,     0,     0,   473,     0,     0,   474,   475,     0,   476,
      477,   478,   479,   480,   481,     0,     0,   482,   483,   484,
      485,     0,   486,   487,     0,     0,   488,   489,   490,   491,
-       0,     0,   492,   493,     0,   494,   495,   496,   497,     0,
+       0,   156,   492,   493,     0,   494,   495,   496,   497,     0,
        0,     0,     0,     0,   498,   499,   500,     0,     0,     0,
      501,   502,   503,   504,     0,   505,   506,     0,   507,   508,
        0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
      513,     0,   514,   515,     0,     0,     0,     0,     0,     0,
      516,     0,     0,   517,     0,     0,     0,   518,   519,   520,
      521,   522,   523,   524,     0,     0,     0,     0,     0,     0,
-     525,   526,     0,   527,   528,   529,     0,   160,   530,   161,
-     162,   163,   164,   165,   166,     0,     0,   167,  2350,     0,
-       0,   168,     0,     0,   169,     0,   170,   171,   172,   173,
+     525,   526,     0,   527,   528,   529,     0,     0,   530,     0,
+       0,     0,     0,     0,   160,     0,   161,   162,   163,   164,
+     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
+       0,   169,  2621,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+       0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
+     186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
+     191,  1010,  1011,   193,   194,     0,   195,   196,   197,   198,
+     199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
+       0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
+     216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
+     227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
+       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
+       0,  1012,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
+     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
+     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
+       0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
+     281,  1013,     0,   283,     0,     0,   284,   285,   286,     0,
+     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
+     291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
+       0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
+       0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
+       0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     313,   314,     0,  1014,     0,   316,     0,   317,   318,     0,
+       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
+     324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
+     334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
+     342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
+     347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
+     354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
+     362,  1015,   364,   365,     0,     0,   366,     0,     0,   367,
+     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
+       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+     380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
+       0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
+       0,   388,   389,  1016,   391,   392,   393,   394,   395,   396,
+     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
+     429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
+    1017,   435,   436,   437,   438,   439,   440,   441,   442,   443,
+     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+    1018,   451,     0,     0,     0,   452,     0,     0,     0,   453,
+       0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
+     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
+     470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
+     475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
+     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
+     496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
+       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
+       0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
+       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
+       0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
+     518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
+       0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
+       0,   530,     0,     0,     0,     0,     0,   160,     0,   161,
+     162,   163,   164,   165,   166,     0,     0,   167,     0,     0,
+       0,   168,     0,     0,   169,  1020,   170,   171,   172,   173,
      174,   175,   176,   177,   178,     0,   179,     0,     0,     0,
      180,     0,     0,     0,   181,     0,     0,   182,   183,   184,
        0,   185,     0,   186,   187,     0,     0,   188,     0,     0,
      189,   190,     0,   191,   192,     0,   193,   194,     0,   195,
      196,   197,   198,   199,   200,     0,   201,   202,   203,   204,
      205,   206,   207,     0,   208,   209,   210,   211,   212,   213,
-     214,   215,     0,   216,   217,     0,   218,   219,   220,   221,
+     214,   215,  1382,   216,   217,     0,   218,   219,   220,   221,
      222,     0,   223,     0,     0,   224,     0,     0,   225,     0,
      226,     0,     0,   227,     0,   228,     0,     0,     0,   229,
      230,   231,     0,     0,   232,     0,     0,     0,     0,   233,
@@ -8419,96 +8112,352 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,     0,   516,     0,     0,   517,
        0,     0,     0,   518,   519,   520,   521,   522,   523,   524,
        0,     0,     0,     0,     0,     0,   525,   526,     0,   527,
-     528,   529,     0,   160,   530,   161,   162,   163,   164,   165,
-     166,     0,     0,   167,  3124,     0,     0,   168,     0,     0,
-     169,     0,   170,   171,   172,   173,   174,   175,   176,   177,
-     178,     0,   179,     0,     0,     0,   180,     0,     0,     0,
-     181,     0,     0,   182,   183,   184,     0,   185,     0,   186,
-     187,     0,     0,   188,     0,     0,   189,   190,     0,   191,
-     192,     0,   193,   194,     0,   195,   196,   197,   198,   199,
-     200,     0,   201,   202,   203,   204,   205,   206,   207,     0,
-     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
-     217,     0,   218,   219,   220,   221,   222,     0,   223,     0,
+     528,   529,     0,     0,   530,     0,     0,     0,     0,     0,
+     160,     0,   161,   162,   163,   164,   165,   166,     0,     0,
+     167,     0,     0,     0,   168,     0,     0,   169,  1383,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
+       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
+     182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
+     188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
+     194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
+     202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
+     211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
+     245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
+       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
+     271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+     288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
+       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
+     302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
+       0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
+       0,   316,     0,   317,   318,     0,     0,     0,     0,     0,
+       0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
+     328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
+     337,   338,     0,   339,   340,   341,   342,     0,   343,   344,
+     345,     0,     0,     0,     0,   346,   347,   348,   349,   350,
+     351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
+     356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
+       0,     0,   366,     0,     0,   367,   368,   369,   370,     0,
+       0,     0,   371,   372,     0,     0,     0,   373,     0,   374,
+     375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
+       0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
+     385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
+     391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
+       0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
+     411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
+     419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
+       0,   426,     0,   427,     0,   428,   429,     0,   430,   431,
+       0,   432,     0,   433,     0,     0,   434,   435,   436,   437,
+     438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
+     447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
+       0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
+     457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
+       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
+       0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
+       0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
+     478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
+       0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
+       0,   492,   493,     0,   494,   495,   496,   497,     0,     0,
+       0,     0,     0,   498,   499,   500,     0,     0,     0,   501,
+     502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
+     509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
+       0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
+       0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
+     522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
+     526,     0,   527,   528,   529,     0,     0,   530,     0,     0,
+       0,     0,     0,   160,     0,   161,   162,   163,   164,   165,
+     166,     0,     0,   167,     0,     0,     0,   168,     0,     0,
+       0,  1383,   170,   171,   172,   173,   174,   175,   176,   177,
+       0,     0,   925,     0,     0,     0,   180,     0,     0,     0,
+     181,     0,     0,   182,   183,   184,     0,   185,     0,     0,
+       0,     0,     0,   188,     7,     0,   189,   190,     0,   191,
+       0,     0,     0,     0,     0,   195,   196,   197,   926,   199,
+     200,     0,   201,   202,     0,     0,     0,     0,     0,     0,
+     208,     0,   210,     0,   212,   213,   214,   215,     0,   216,
+     217,     0,   218,   219,   220,     0,   222,     0,   223,     0,
        0,   224,     0,     0,   225,     0,   226,     0,     0,   227,
        0,   228,     0,     0,     0,   229,   230,   231,     0,     0,
-     232,     0,     0,     0,     0,   233,   234,     0,     0,     0,
+     232,     0,     0,     0,     0,   233,     0,     0,     0,     0,
        0,   235,     0,   236,     0,     0,     0,     0,   237,     0,
-     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
+     238,   239,   240,   241,   242,     0,     0,     0,     0,     0,
        0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
-     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
-     255,   256,   257,   258,   259,   260,   261,     0,     0,   262,
-     263,   264,   265,     0,     0,   266,   267,     0,   268,   269,
-     270,     0,     0,   271,     0,     0,     0,   272,   273,     0,
-     274,     0,   275,     0,   276,   277,   278,   279,   280,   281,
-     282,     0,   283,     0,     0,   284,   285,   286,     0,   287,
-       0,     0,     0,   288,   289,     0,     0,     0,   290,   291,
-     292,   293,   294,     0,     0,     0,   295,   296,   297,     0,
-       0,   298,     0,     0,     0,     0,   299,   300,     0,     0,
-       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
-       0,   306,     0,     0,   307,   308,   309,     0,     0,   310,
-       0,     0,   311,   312,     0,     0,     0,     0,     0,   313,
+       0,   249,     0,   250,   251,   252,     0,   253,   254,     0,
+     255,   256,   257,   258,   259,     0,     0,     0,     0,   262,
+     263,   264,   265,     0,     0,   266,   267,   927,   268,   269,
+     270,     0,     0,     0,     0,     0,     0,     0,   273,     0,
+     274,     0,   275,     0,   276,   277,   278,   279,   280,     0,
+     282,     0,   283,     0,     0,     0,   285,   286,     0,     0,
+       0,     0,     0,     0,   289,     0,     0,     0,   290,   291,
+     292,   293,   294,    26,     0,     0,   295,   296,   297,     0,
+       0,   298,     0,     0,     0,     0,   299,     0,     0,     0,
+       0,   301,     0,   302,   303,     0,   304,   305,   928,     0,
+       0,   306,     0,     0,     0,   308,   309,     0,     0,   310,
+     929,     0,   311,   312,     0,     0,     0,     0,     0,   313,
      314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
-       0,     0,     0,     0,   319,   320,   321,   322,   323,   324,
+       0,     0,    32,     0,   319,   320,   321,   322,   323,   324,
      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
        0,   335,   336,   337,   338,     0,   339,   340,   341,   342,
        0,   343,   344,   345,     0,     0,     0,     0,   346,   347,
      348,   349,   350,   351,     0,     0,   352,   353,     0,   354,
        0,   355,     0,   356,   357,   358,   359,   360,   361,   362,
      363,   364,   365,     0,     0,   366,     0,     0,   367,   368,
-     369,   370,     0,     0,     0,   371,   372,     0,     0,     0,
-     373,     0,   374,   375,   376,     0,   377,   378,   379,   380,
-       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
-       0,   383,   384,   385,     0,     0,   386,     0,   387,     0,
-     388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
-       0,     0,   398,   399,   400,     0,   401,     0,   402,   403,
+     369,   370,     0,     0,     0,     0,   372,     0,     0,     0,
+     373,     0,   374,   375,   376,     0,   377,   378,   379,   930,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,   384,   385,     0,     0,     0,     0,   387,     0,
+     388,   389,   390,   391,   392,   393,   394,   395,   396,     0,
+       0,     0,     0,   399,   400,     0,   401,     0,   402,   403,
      404,   405,   406,     0,   407,   408,   409,     0,     0,   410,
        0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
-     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
-     424,   425,     0,     0,   426,     0,   427,     0,   428,   429,
-       0,   430,   431,     0,   432,     0,   433,     0,     0,   434,
-     435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
-     445,     0,   446,   447,     0,     0,     0,   448,   449,   450,
-     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
-     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
-     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
+     416,   417,   418,   419,   420,     0,   421,     0,     0,   423,
+       0,   425,    41,     0,   426,     0,     0,     0,   428,     0,
+       0,   430,   431,     0,   432,   931,   433,     0,     0,   434,
+       0,   436,   437,   438,   439,   440,   441,   442,     0,   444,
+     445,     0,   446,     0,     0,     0,     0,   448,   449,   450,
+       0,     0,     0,     0,   452,     0,     0,     0,     0,     0,
+       0,   455,     0,     0,   458,   459,     0,   460,     0,   462,
+       0,   464,   465,     0,     0,     0,     0,     0,     0,   466,
      467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
-     471,   472,     0,     0,     0,   473,     0,     0,   474,   475,
+       0,   472,     0,     0,     0,   473,     0,     0,     0,   475,
        0,   476,   477,   478,   479,   480,   481,     0,     0,   482,
      483,   484,   485,     0,   486,   487,     0,     0,   488,   489,
      490,   491,     0,     0,   492,   493,     0,   494,   495,   496,
      497,     0,     0,     0,     0,     0,   498,   499,   500,     0,
-       0,     0,   501,   502,   503,   504,     0,   505,   506,     0,
-     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
-     512,     0,   513,     0,   514,   515,     0,     0,     0,     0,
+       0,     0,     0,   502,   503,   504,     0,   505,   506,     0,
+     507,   508,     0,     0,     0,     0,     0,   511,     0,     0,
+     512,     0,     0,     0,   514,   515,     0,     0,     0,     0,
        0,     0,   516,     0,     0,   517,     0,     0,     0,   518,
-     519,   520,   521,   522,   523,   524,     0,     0,     0,     0,
-       0,     0,   525,   526,     0,   527,   528,   529,     0,   160,
-     530,   161,   162,   163,   164,   165,   166,     0,     0,   167,
-    3486,     0,     0,   168,     0,     0,   169,     0,   170,   171,
-     172,   173,   174,   175,   176,   177,   178,     0,   179,     0,
-       0,     0,   180,     0,     0,     0,   181,     0,     0,   182,
-     183,   184,     0,   185,     0,   186,   187,     0,     0,   188,
-       0,     0,   189,   190,     0,   191,   192,     0,   193,   194,
-       0,   195,   196,   197,   198,   199,   200,     0,   201,   202,
-     203,   204,   205,   206,   207,     0,   208,   209,   210,   211,
-     212,   213,   214,   215,     0,   216,   217,     0,   218,   219,
-     220,   221,   222,     0,   223,     0,     0,   224,     0,     0,
-     225,     0,   226,     0,     0,   227,     0,   228,     0,     0,
-       0,   229,   230,   231,     0,     0,   232,     0,     0,     0,
-       0,   233,   234,     0,     0,     0,     0,   235,     0,   236,
-       0,     0,     0,     0,   237,     0,   238,   239,   240,   241,
-     242,     0,     0,     0,     0,   243,     0,     0,   244,   245,
-     246,     0,     0,     0,   247,     0,   248,   249,     0,   250,
-     251,   252,     0,   253,   254,     0,   255,   256,   257,   258,
-     259,   260,   261,     0,     0,   262,   263,   264,   265,     0,
-       0,   266,   267,     0,   268,   269,   270,     0,     0,   271,
-       0,     0,     0,   272,   273,     0,   274,     0,   275,     0,
-     276,   277,   278,   279,   280,   281,   282,     0,   283,     0,
-       0,   284,   285,   286,     0,   287,     0,     0,     0,   288,
-     289,     0,     0,     0,   290,   291,   292,   293,   294,     0,
-       0,     0,   295,   296,   297,     0,     0,   298,     0,     0,
-       0,     0,   299,   300,     0,     0,     0,   301,     0,   302,
-     303,     0,   304,   305,     0,     0,     0,   306,     0,     0,
+     519,   520,   521,   522,   523,   524,     0,     0,    60,     0,
+       0,     0,   525,     0,     0,   527,     0,   529,     0,     0,
+     530,   160,     0,   161,   162,   163,   164,   165,   166,     0,
+       0,   167,     0,     0,     0,   168,     0,     0,   169,  4583,
+     170,   171,   172,   173,   174,   175,   176,   177,   178,     0,
+     179,     0,     0,     0,   180,     0,     0,     0,   181,     0,
+       0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
+       0,   188,     0,     0,   189,   190,     0,   191,   192,     0,
+     193,   194,     0,   195,   196,   197,   198,   199,   200,     0,
+     201,   202,   203,   204,   205,   206,   207,     0,   208,   209,
+     210,   211,   212,   213,   214,   215,     0,   216,   217,     0,
+     218,   219,   220,   221,   222,     0,   223,     0,     0,   224,
+       0,     0,   225,     0,   226,  1124,     0,   227,     0,   228,
+       0,     0,     0,   229,   230,   231,     0,     0,   232,     0,
+       0,     0,     0,   233,   234,     0,     0,     0,     0,   235,
+       0,   236,     0,     0,     0,     0,   237,     0,   238,   239,
+     240,   241,   242,     0,     0,     0,     0,   243,     0,     0,
+     244,   245,   246,     0,     0,     0,   247,     0,   248,   249,
+       0,   250,   251,   252,     0,   253,   254,     0,   255,   256,
+     257,   258,   259,   260,   261,     0,     0,   262,   263,   264,
+     265,     0,     0,   266,   267,     0,   268,   269,   270,     0,
+       0,   271,     0,     0,     0,   272,   273,     0,   274,     0,
+     275,     0,   276,   277,   278,   279,   280,   281,   282,     0,
+     283,     0,     0,   284,   285,   286,     0,   287,     0,     0,
+       0,   288,   289,     0,     0,     0,   290,   291,   292,   293,
+     294,     0,     0,     0,   295,   296,   297,     0,     0,   298,
+       0,     0,     0,     0,   299,   300,     0,     0,     0,   301,
+       0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
+       0,     0,   307,   308,   309,     0,     0,   310,     0,     0,
+     311,   312,   666,     0,     0,     0,     0,   313,   314,     0,
+     315,     0,   316,     0,   317,   318,     0,     0,     0,     0,
+       0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
+     327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
+     336,   337,   338,     0,   339,   340,   341,   342,     0,   343,
+     344,   345,     0,     0,     0,     0,   346,   347,   348,   349,
+     350,   351,     0,     0,   352,   353,     0,   354,     0,   355,
+       0,   356,   357,   358,   359,   360,   361,   362,   363,   364,
+     365,     0,     0,   366,     0,     0,   367,   368,   369,   370,
+       0,     0,     0,   371,   372,     0,     0,     0,   373,     0,
+     374,   375,   376,     0,   377,   378,   379,   380,     0,   381,
+     382,     0,     0,     0,     0,     0,     0,     0,     0,   383,
+     384,   385,     0,     0,   386,     0,   387,     0,   388,   389,
+     390,   391,   392,   393,   394,   395,   396,   397,     0,     0,
+     398,   399,   400,     0,   401,     0,   402,   403,   404,   405,
+     406,     0,   407,   408,   409,     0,     0,   410,     0,     0,
+       0,   411,   412,   413,   414,   415,     0,     0,   416,   417,
+     418,   419,   420,     0,   421,   422,     0,   423,   424,   425,
+       0,     0,   426,     0,   427,     0,   428,   429,     0,   430,
+     431,     0,   432,     0,   433,     0,     0,   434,   435,   436,
+     437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
+     446,   447,     0,     0,     0,   448,   449,   450,   451,     0,
+       0,     0,   452,     0,     0,     0,   453,     0,   454,   455,
+     456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
+     465,     0,     0,     0,     0,     0,     0,   466,   467,     0,
+     468,     0,     0,   469,     0,     0,     0,   470,   471,   472,
+       0,     0,     0,   473,     0,     0,   474,   475,     0,   476,
+     477,   478,   479,   480,   481,     0,     0,   482,   483,   484,
+     485,     0,   486,   487,     0,     0,   488,   489,   490,   491,
+       0,   156,   492,   493,     0,   494,   495,   496,   497,     0,
+       0,     0,     0,     0,   498,   499,   500,     0,     0,     0,
+     501,   502,   503,   504,     0,   505,   506,     0,   507,   508,
+       0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
+     513,     0,   514,   515,     0,     0,     0,     0,     0,     0,
+     516,     0,     0,   517,     0,     0,     0,   518,   519,   520,
+     521,   522,   523,   524,     0,     0,     0,     0,     0,     0,
+     525,   526,     0,   527,   528,   529,     0,   160,   530,   161,
+     162,   163,   164,   165,   166,     0,     0,   167,     0,     0,
+       0,   168,     0,     0,   169,  1284,   170,   171,   172,   173,
+     174,   175,   176,   177,   178,     0,   179,     0,     0,     0,
+     180,     0,     0,     0,   181,     0,     0,   182,   183,   184,
+       0,   185,     0,   186,   187,     0,     0,   188,     0,     0,
+     189,   190,     0,   191,   192,     0,   193,   194,     0,   195,
+     196,   197,   198,   199,   200,     0,   201,   202,   203,   204,
+     205,   206,   207,     0,   208,   209,   210,   211,   212,   213,
+     214,   215,     0,   216,   217,     0,   218,   219,   220,   221,
+     222,     0,   223,     0,     0,   224,     0,     0,   225,     0,
+     226,     0,     0,   227,     0,   228,     0,     0,     0,   229,
+     230,   231,     0,     0,   232,     0,     0,     0,     0,   233,
+     234,     0,     0,     0,     0,   235,     0,   236,     0,     0,
+       0,     0,   237,     0,   238,   239,   240,   241,   242,     0,
+       0,     0,     0,   243,     0,     0,   244,   245,   246,     0,
+       0,     0,   247,     0,   248,   249,     0,   250,   251,   252,
+       0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
+     261,     0,     0,   262,   263,   264,   265,     0,     0,   266,
+     267,     0,   268,   269,   270,     0,     0,   271,     0,     0,
+       0,   272,   273,     0,   274,     0,   275,     0,   276,   277,
+     278,   279,   280,   281,   282,     0,   283,     0,     0,   284,
+     285,   286,     0,   287,     0,     0,     0,   288,   289,     0,
+       0,     0,   290,   291,   292,   293,   294,     0,     0,     0,
+     295,   296,   297,     0,     0,   298,     0,     0,     0,     0,
+     299,   300,     0,     0,     0,   301,     0,   302,   303,     0,
+     304,   305,     0,     0,     0,   306,     0,     0,   307,   308,
+     309,     0,     0,   310,     0,     0,   311,   312,     0,     0,
+       0,     0,     0,   313,   314,     0,   315,     0,   316,     0,
+     317,   318,     0,     0,     0,     0,     0,     0,   319,   320,
+     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
+     331,   332,   333,   334,     0,   335,   336,   337,   338,     0,
+     339,   340,   341,   342,     0,   343,   344,   345,     0,     0,
+       0,     0,   346,   347,   348,   349,   350,   351,     0,     0,
+     352,   353,     0,   354,     0,   355,     0,   356,   357,   358,
+     359,   360,   361,   362,   363,   364,   365,     0,     0,   366,
+       0,     0,   367,   368,   369,   370,     0,     0,     0,   371,
+     372,     0,     0,     0,   373,     0,   374,   375,   376,     0,
+     377,   378,   379,   380,     0,   381,   382,     0,     0,     0,
+       0,     0,     0,     0,     0,   383,   384,   385,     0,     0,
+     386,     0,   387,     0,   388,   389,   390,   391,   392,   393,
+     394,   395,   396,   397,     0,     0,   398,   399,   400,     0,
+     401,     0,   402,   403,   404,   405,   406,     0,   407,   408,
+     409,     0,     0,   410,     0,     0,     0,   411,   412,   413,
+     414,   415,     0,     0,   416,   417,   418,   419,   420,     0,
+     421,   422,     0,   423,   424,   425,     0,     0,   426,     0,
+     427,     0,   428,   429,     0,   430,   431,     0,   432,     0,
+     433,     0,     0,   434,   435,   436,   437,   438,   439,   440,
+     441,   442,   443,   444,   445,     0,   446,   447,     0,     0,
+       0,   448,   449,   450,   451,     0,     0,     0,   452,     0,
+       0,     0,   453,     0,   454,   455,   456,   457,   458,   459,
+       0,   460,   461,   462,   463,   464,   465,     0,     0,     0,
+       0,     0,     0,   466,   467,     0,   468,     0,     0,   469,
+       0,     0,     0,   470,   471,   472,     0,     0,     0,   473,
+       0,     0,   474,   475,     0,   476,   477,   478,   479,   480,
+     481,     0,     0,   482,   483,   484,   485,     0,   486,   487,
+       0,     0,   488,   489,   490,   491,     0,     0,   492,   493,
+       0,   494,   495,   496,   497,     0,     0,     0,     0,     0,
+     498,   499,   500,     0,     0,     0,   501,   502,   503,   504,
+       0,   505,   506,     0,   507,   508,     0,   509,   510,     0,
+       0,   511,     0,     0,   512,     0,   513,     0,   514,   515,
+       0,     0,     0,     0,     0,     0,   516,     0,     0,   517,
+       0,     0,     0,   518,   519,   520,   521,   522,   523,   524,
+       0,     0,     0,     0,     0,     0,   525,   526,     0,   527,
+     528,   529,     0,   160,   530,   161,   162,   163,   164,   165,
+     166,     0,     0,   167,     0,     0,  2350,   168,     0,     0,
+     169,     0,   170,   171,   172,   173,   174,   175,   176,   177,
+     178,     0,   179,     0,     0,     0,   180,     0,     0,     0,
+     181,     0,     0,   182,   183,   184,     0,   185,     0,   186,
+     187,     0,     0,   188,     0,     0,   189,   190,     0,   191,
+     192,     0,   193,   194,     0,   195,   196,   197,   198,   199,
+     200,     0,   201,   202,   203,   204,   205,   206,   207,     0,
+     208,   209,   210,   211,   212,   213,   214,   215,     0,   216,
+     217,     0,   218,   219,   220,   221,   222,     0,   223,     0,
+       0,   224,     0,     0,   225,     0,   226,     0,     0,   227,
+       0,   228,     0,     0,     0,   229,   230,   231,     0,     0,
+     232,     0,     0,     0,     0,   233,   234,     0,     0,     0,
+       0,   235,     0,   236,     0,     0,     0,     0,   237,     0,
+     238,   239,   240,   241,   242,     0,     0,     0,     0,   243,
+       0,     0,   244,   245,   246,     0,     0,     0,   247,     0,
+     248,   249,     0,   250,   251,   252,     0,   253,   254,     0,
+     255,   256,   257,   258,   259,   260,   261,     0,     0,   262,
+     263,   264,   265,     0,     0,   266,   267,     0,   268,   269,
+     270,     0,     0,   271,     0,     0,     0,   272,   273,     0,
+     274,     0,   275,     0,   276,   277,   278,   279,   280,   281,
+     282,     0,   283,     0,     0,   284,   285,   286,     0,   287,
+       0,     0,     0,   288,   289,     0,     0,     0,   290,   291,
+     292,   293,   294,     0,     0,     0,   295,   296,   297,     0,
+       0,   298,     0,     0,     0,     0,   299,   300,     0,     0,
+       0,   301,     0,   302,   303,     0,   304,   305,     0,     0,
+       0,   306,     0,     0,   307,   308,   309,     0,     0,   310,
+       0,     0,   311,   312,     0,     0,     0,     0,     0,   313,
+     314,     0,   315,     0,   316,     0,   317,   318,     0,     0,
+       0,     0,     0,     0,   319,   320,   321,   322,   323,   324,
+     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
+       0,   335,   336,   337,   338,     0,   339,   340,   341,   342,
+       0,   343,   344,   345,     0,     0,     0,     0,   346,   347,
+     348,   349,   350,   351,     0,     0,   352,   353,     0,   354,
+       0,   355,     0,   356,   357,   358,   359,   360,   361,   362,
+     363,   364,   365,     0,     0,   366,     0,     0,   367,   368,
+     369,   370,     0,     0,     0,   371,   372,     0,     0,     0,
+     373,     0,   374,   375,   376,     0,   377,   378,   379,   380,
+       0,   381,   382,     0,     0,     0,     0,     0,     0,     0,
+       0,   383,   384,   385,     0,     0,   386,     0,   387,     0,
+     388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
+       0,     0,   398,   399,   400,     0,   401,     0,   402,   403,
+     404,   405,   406,     0,   407,   408,   409,     0,     0,   410,
+       0,     0,     0,   411,   412,   413,   414,   415,     0,     0,
+     416,   417,   418,   419,   420,     0,   421,   422,     0,   423,
+     424,   425,     0,     0,   426,     0,   427,     0,   428,   429,
+       0,   430,   431,     0,   432,     0,   433,     0,     0,   434,
+     435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
+     445,     0,   446,   447,     0,     0,     0,   448,   449,   450,
+     451,     0,     0,     0,   452,     0,     0,     0,   453,     0,
+     454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
+     463,   464,   465,     0,     0,     0,     0,     0,     0,   466,
+     467,     0,   468,     0,     0,   469,     0,     0,     0,   470,
+     471,   472,     0,     0,     0,   473,     0,     0,   474,   475,
+       0,   476,   477,   478,   479,   480,   481,     0,     0,   482,
+     483,   484,   485,     0,   486,   487,     0,     0,   488,   489,
+     490,   491,     0,     0,   492,   493,     0,   494,   495,   496,
+     497,     0,     0,     0,     0,     0,   498,   499,   500,     0,
+       0,     0,   501,   502,   503,   504,     0,   505,   506,     0,
+     507,   508,     0,   509,   510,     0,     0,   511,     0,     0,
+     512,     0,   513,     0,   514,   515,     0,     0,     0,     0,
+       0,     0,   516,     0,     0,   517,     0,     0,     0,   518,
+     519,   520,   521,   522,   523,   524,     0,     0,     0,     0,
+       0,     0,   525,   526,     0,   527,   528,   529,     0,   160,
+     530,   161,   162,   163,   164,   165,   166,     0,     0,   167,
+       0,     0,  3124,   168,     0,     0,   169,     0,   170,   171,
+     172,   173,   174,   175,   176,   177,   178,     0,   179,     0,
+       0,     0,   180,     0,     0,     0,   181,     0,     0,   182,
+     183,   184,     0,   185,     0,   186,   187,     0,     0,   188,
+       0,     0,   189,   190,     0,   191,   192,     0,   193,   194,
+       0,   195,   196,   197,   198,   199,   200,     0,   201,   202,
+     203,   204,   205,   206,   207,     0,   208,   209,   210,   211,
+     212,   213,   214,   215,     0,   216,   217,     0,   218,   219,
+     220,   221,   222,     0,   223,     0,     0,   224,     0,     0,
+     225,     0,   226,     0,     0,   227,     0,   228,     0,     0,
+       0,   229,   230,   231,     0,     0,   232,     0,     0,     0,
+       0,   233,   234,     0,     0,     0,     0,   235,     0,   236,
+       0,     0,     0,     0,   237,     0,   238,   239,   240,   241,
+     242,     0,     0,     0,     0,   243,     0,     0,   244,   245,
+     246,     0,     0,     0,   247,     0,   248,   249,     0,   250,
+     251,   252,     0,   253,   254,     0,   255,   256,   257,   258,
+     259,   260,   261,     0,     0,   262,   263,   264,   265,     0,
+       0,   266,   267,     0,   268,   269,   270,     0,     0,   271,
+       0,     0,     0,   272,   273,     0,   274,     0,   275,     0,
+     276,   277,   278,   279,   280,   281,   282,     0,   283,     0,
+       0,   284,   285,   286,     0,   287,     0,     0,     0,   288,
+     289,     0,     0,     0,   290,   291,   292,   293,   294,     0,
+       0,     0,   295,   296,   297,     0,     0,   298,     0,     0,
+       0,     0,   299,   300,     0,     0,     0,   301,     0,   302,
+     303,     0,   304,   305,     0,     0,     0,   306,     0,     0,
      307,   308,   309,     0,     0,   310,     0,     0,   311,   312,
        0,     0,     0,     0,     0,   313,   314,     0,   315,     0,
      316,     0,   317,   318,     0,     0,     0,     0,     0,     0,
@@ -8547,9 +8496,9 @@ static const yytype_int16 yytable[] =
        0,   517,     0,     0,     0,   518,   519,   520,   521,   522,
      523,   524,     0,     0,     0,     0,     0,     0,   525,   526,
        0,   527,   528,   529,     0,   160,   530,   161,   162,   163,
-     164,   165,   166,     0,     0,   167,  3892,     0,     0,   168,
+     164,   165,   166,     0,     0,   167,     0,     0,  3486,   168,
        0,     0,   169,     0,   170,   171,   172,   173,   174,   175,
-     176,   177,   178,     0,   179,     0,     0,  1529,   180,     0,
+     176,   177,   178,     0,   179,     0,     0,     0,   180,     0,
        0,     0,   181,     0,     0,   182,   183,   184,     0,   185,
        0,   186,   187,     0,     0,   188,     0,     0,   189,   190,
        0,   191,   192,     0,   193,   194,     0,   195,   196,   197,
@@ -8559,7 +8508,7 @@ static const yytype_int16 yytable[] =
      223,     0,     0,   224,     0,     0,   225,     0,   226,     0,
        0,   227,     0,   228,     0,     0,     0,   229,   230,   231,
        0,     0,   232,     0,     0,     0,     0,   233,   234,     0,
-       0,     0,  1530,   235,     0,   236,     0,     0,     0,     0,
+       0,     0,     0,   235,     0,   236,     0,     0,     0,     0,
      237,     0,   238,   239,   240,   241,   242,     0,     0,     0,
        0,   243,     0,     0,   244,   245,   246,     0,     0,     0,
      247,     0,   248,   249,     0,   250,   251,   252,     0,   253,
@@ -8573,7 +8522,7 @@ static const yytype_int16 yytable[] =
      297,     0,     0,   298,     0,     0,     0,     0,   299,   300,
        0,     0,     0,   301,     0,   302,   303,     0,   304,   305,
        0,     0,     0,   306,     0,     0,   307,   308,   309,     0,
-       0,   310,     0,     0,   311,   312,   666,     0,     0,     0,
+       0,   310,     0,     0,   311,   312,     0,     0,     0,     0,
        0,   313,   314,     0,   315,     0,   316,     0,   317,   318,
        0,     0,     0,     0,     0,     0,   319,   320,   321,   322,
      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
@@ -8595,14 +8544,14 @@ static const yytype_int16 yytable[] =
      428,   429,     0,   430,   431,     0,   432,     0,   433,     0,
        0,   434,   435,   436,   437,   438,   439,   440,   441,   442,
      443,   444,   445,     0,   446,   447,     0,     0,     0,   448,
-     449,   450,   451,     0,     0,  1531,   452,     0,     0,     0,
+     449,   450,   451,     0,     0,     0,   452,     0,     0,     0,
      453,     0,   454,   455,   456,   457,   458,   459,     0,   460,
      461,   462,   463,   464,   465,     0,     0,     0,     0,     0,
        0,   466,   467,     0,   468,     0,     0,   469,     0,     0,
        0,   470,   471,   472,     0,     0,     0,   473,     0,     0,
      474,   475,     0,   476,   477,   478,   479,   480,   481,     0,
        0,   482,   483,   484,   485,     0,   486,   487,     0,     0,
-     488,   489,   490,   491,     0,   156,   492,   493,     0,   494,
+     488,   489,   490,   491,     0,     0,   492,   493,     0,   494,
      495,   496,   497,     0,     0,     0,     0,     0,   498,   499,
      500,     0,     0,     0,   501,   502,   503,   504,     0,   505,
      506,     0,   507,   508,     0,   509,   510,     0,     0,   511,
@@ -8610,8 +8559,199 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   516,     0,     0,   517,     0,     0,
        0,   518,   519,   520,   521,   522,   523,   524,     0,     0,
        0,     0,     0,     0,   525,   526,     0,   527,   528,   529,
-       0,     0,   530,     0,   160,  1532,   161,   162,   163,   164,
-     165,   166,   873,   874,   167,     0,     0,     0,   168,     0,
+       0,   160,   530,   161,   162,   163,   164,   165,   166,     0,
+       0,   167,     0,     0,  3892,   168,     0,     0,   169,     0,
+     170,   171,   172,   173,   174,   175,   176,   177,   178,     0,
+     179,     0,     0,  1529,   180,     0,     0,     0,   181,     0,
+       0,   182,   183,   184,     0,   185,     0,   186,   187,     0,
+       0,   188,     0,     0,   189,   190,     0,   191,   192,     0,
+     193,   194,     0,   195,   196,   197,   198,   199,   200,     0,
+     201,   202,   203,   204,   205,   206,   207,     0,   208,   209,
+     210,   211,   212,   213,   214,   215,     0,   216,   217,     0,
+     218,   219,   220,   221,   222,     0,   223,     0,     0,   224,
+       0,     0,   225,     0,   226,     0,     0,   227,     0,   228,
+       0,     0,     0,   229,   230,   231,     0,     0,   232,     0,
+       0,     0,     0,   233,   234,     0,     0,     0,  1530,   235,
+       0,   236,     0,     0,     0,     0,   237,     0,   238,   239,
+     240,   241,   242,     0,     0,     0,     0,   243,     0,     0,
+     244,   245,   246,     0,     0,     0,   247,     0,   248,   249,
+       0,   250,   251,   252,     0,   253,   254,     0,   255,   256,
+     257,   258,   259,   260,   261,     0,     0,   262,   263,   264,
+     265,     0,     0,   266,   267,     0,   268,   269,   270,     0,
+       0,   271,     0,     0,     0,   272,   273,     0,   274,     0,
+     275,     0,   276,   277,   278,   279,   280,   281,   282,     0,
+     283,     0,     0,   284,   285,   286,     0,   287,     0,     0,
+       0,   288,   289,     0,     0,     0,   290,   291,   292,   293,
+     294,     0,     0,     0,   295,   296,   297,     0,     0,   298,
+       0,     0,     0,     0,   299,   300,     0,     0,     0,   301,
+       0,   302,   303,     0,   304,   305,     0,     0,     0,   306,
+       0,     0,   307,   308,   309,     0,     0,   310,     0,     0,
+     311,   312,   666,     0,     0,     0,     0,   313,   314,     0,
+     315,     0,   316,     0,   317,   318,     0,     0,     0,     0,
+       0,     0,   319,   320,   321,   322,   323,   324,   325,   326,
+     327,   328,   329,   330,   331,   332,   333,   334,     0,   335,
+     336,   337,   338,     0,   339,   340,   341,   342,     0,   343,
+     344,   345,     0,     0,     0,     0,   346,   347,   348,   349,
+     350,   351,     0,     0,   352,   353,     0,   354,     0,   355,
+       0,   356,   357,   358,   359,   360,   361,   362,   363,   364,
+     365,     0,     0,   366,     0,     0,   367,   368,   369,   370,
+       0,     0,     0,   371,   372,     0,     0,     0,   373,     0,
+     374,   375,   376,     0,   377,   378,   379,   380,     0,   381,
+     382,     0,     0,     0,     0,     0,     0,     0,     0,   383,
+     384,   385,     0,     0,   386,     0,   387,     0,   388,   389,
+     390,   391,   392,   393,   394,   395,   396,   397,     0,     0,
+     398,   399,   400,     0,   401,     0,   402,   403,   404,   405,
+     406,     0,   407,   408,   409,     0,     0,   410,     0,     0,
+       0,   411,   412,   413,   414,   415,     0,     0,   416,   417,
+     418,   419,   420,     0,   421,   422,     0,   423,   424,   425,
+       0,     0,   426,     0,   427,     0,   428,   429,     0,   430,
+     431,     0,   432,     0,   433,     0,     0,   434,   435,   436,
+     437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
+     446,   447,     0,     0,     0,   448,   449,   450,   451,     0,
+       0,  1531,   452,     0,     0,     0,   453,     0,   454,   455,
+     456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
+     465,     0,     0,     0,     0,     0,     0,   466,   467,     0,
+     468,     0,     0,   469,     0,     0,     0,   470,   471,   472,
+       0,     0,     0,   473,     0,     0,   474,   475,     0,   476,
+     477,   478,   479,   480,   481,     0,     0,   482,   483,   484,
+     485,     0,   486,   487,     0,     0,   488,   489,   490,   491,
+       0,   156,   492,   493,     0,   494,   495,   496,   497,     0,
+       0,     0,     0,     0,   498,   499,   500,     0,     0,     0,
+     501,   502,   503,   504,     0,   505,   506,     0,   507,   508,
+       0,   509,   510,     0,     0,   511,     0,     0,   512,     0,
+     513,     0,   514,   515,     0,     0,     0,     0,     0,     0,
+     516,     0,     0,   517,     0,     0,     0,   518,   519,   520,
+     521,   522,   523,   524,     0,     0,     0,     0,     0,     0,
+     525,   526,     0,   527,   528,   529,     0,     0,   530,     0,
+       0,     0,   160,  1532,   161,   162,   163,   164,   165,   166,
+     873,   874,   167,     0,     0,     0,   168,     0,     0,   169,
+       0,   170,   171,   172,   173,   174,   175,   176,   177,   178,
+       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
+       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
+       0,     0,   188,     0,     0,   189,   190,     0,   191,   192,
+       0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
+       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
+     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
+       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
+     224,   875,     0,   225,     0,   226,     0,   876,   227,     0,
+     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
+       0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
+     235,     0,   236,   877,     0,     0,     0,   237,     0,   238,
+     239,   240,   241,   242,     0,     0,     0,     0,   243,   878,
+       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
+     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
+     256,   879,   258,   259,   260,   880,     0,     0,   262,   263,
+     264,   265,     0,     0,   266,   267,     0,   881,   269,   270,
+       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
+       0,   275,     0,   276,   277,   278,   279,   280,   281,   282,
+     882,   283,     0,     0,   284,   285,   286,     0,   287,     0,
+       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
+     293,   294,     0,     0,     0,   295,   296,   297,   883,     0,
+     298,     0,     0,     0,   884,   299,   300,     0,     0,     0,
+     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
+     306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
+       0,   311,   312,   666,     0,     0,     0,     0,   313,   314,
+       0,   315,     0,   316,   885,   317,   318,     0,     0,     0,
+       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
+     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
+     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
+     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
+     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
+     355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
+     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
+     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
+       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
+     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
+     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
+     389,   390,   391,   392,   393,   394,   395,   396,   397,     0,
+       0,   398,   399,   400,     0,   401,     0,   886,   403,   404,
+     405,   887,     0,   407,   408,   409,     0,     0,   410,     0,
+       0,     0,   411,   412,   413,   414,   415,   888,     0,   416,
+     417,   418,   419,   420,     0,   889,   422,     0,   423,   424,
+     425,     0,     0,   890,     0,   427,     0,   428,   429,     0,
+     430,   431,     0,   432,     0,   433,     0,     0,   434,   435,
+     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
+       0,   446,   447,   891,     0,     0,   448,   449,   450,   451,
+       0,     0,     0,   452,     0,     0,   892,   893,     0,   454,
+     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
+     464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
+       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
+     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
+     476,   477,   478,   479,   480,   481,     0,     0,   894,   483,
+     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
+     491,     0,   156,   492,   493,     0,   494,   495,   496,   497,
+       0,     0,     0,     0,     0,   498,   499,   500,   895,     0,
+       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
+     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
+     896,   513,   897,   514,   515,     0,     0,     0,     0,     0,
+       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
+     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
+       0,   525,   526,     0,   527,   528,   529,     0,   160,   530,
+     979,   162,   163,   164,   165,   166,   980,   874,   167,     0,
+       0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
+       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
+     184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
+       0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
+     195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
+     204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
+     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
+     221,   222,     0,   223,     0,     0,   224,   875,     0,   225,
+       0,   226,     0,   876,   227,     0,   228,     0,     0,     0,
+     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
+     233,   234,     0,     0,     0,     0,   235,     0,   236,   877,
+       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
+       0,     0,     0,     0,   243,   878,     0,   244,   245,   246,
+       0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
+     252,     0,   253,   254,     0,   255,   256,   879,   258,   259,
+     260,   880,     0,     0,   262,   263,   264,   265,     0,     0,
+     266,   267,     0,   881,   269,   270,     0,     0,   271,     0,
+       0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
+     277,   278,   279,   280,   281,   282,   882,   283,     0,     0,
+     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
+       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
+       0,   295,   296,   297,   883,     0,   298,     0,     0,     0,
+     884,   299,   300,     0,     0,     0,   301,     0,   302,   303,
+       0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
+     308,   309,     0,     0,   310,     0,     0,   311,   312,   666,
+       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
+     885,   317,   318,     0,     0,     0,     0,     0,     0,   319,
+     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
+     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
+       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
+       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
+       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
+     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
+     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
+     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
+       0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
+       0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
+       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
+     393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
+       0,   401,     0,   886,   403,   404,   405,   981,     0,   407,
+     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
+     413,   414,   415,   888,     0,   416,   417,   418,   419,   420,
+       0,   889,   422,     0,   423,   424,   425,     0,     0,   890,
+       0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
+       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
+     440,   441,   442,   443,   444,   445,     0,   446,   447,   891,
+       0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
+       0,     0,   892,   893,     0,   454,   455,   456,   457,   458,
+     459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
+       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
+     469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
+     473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
+     480,   481,     0,     0,   894,   483,   484,   485,     0,   486,
+     487,     0,     0,   488,   489,   490,   491,     0,   156,   492,
+     493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
+       0,   498,   499,   500,   895,     0,     0,   501,   502,   503,
+     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
+       0,     0,   511,     0,     0,   512,   896,   513,   897,   514,
+     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
+     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
+     524,     0,     0,     0,     0,     0,     0,   525,   526,     0,
+     527,   528,   529,     0,   160,   530,   161,   162,   163,   164,
+     165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
        0,   169,     0,   170,   171,   172,   173,   174,   175,   176,
      177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
        0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
@@ -8620,61 +8760,61 @@ static const yytype_int16 yytable[] =
      199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
        0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
      216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
-       0,     0,   224,   875,     0,   225,     0,   226,     0,   876,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
-       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
-       0,     0,   235,     0,   236,   877,     0,     0,     0,   237,
+       0,   232,     0,     0,     0,     0,   233,   234,  2599,     0,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
-     243,   878,     0,   244,   245,   246,     0,     0,     0,   247,
+     243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
        0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
-       0,   255,   256,   879,   258,   259,   260,   880,     0,     0,
-     262,   263,   264,   265,     0,     0,   266,   267,     0,   881,
-     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
+     262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
+     269,   270,  2600,     0,   271,     0,     0,     0,   272,   273,
        0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
-     281,   282,   882,   283,     0,     0,   284,   285,   286,     0,
-     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
+     281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
+     287,  2601,     0,     0,   288,   289,     0,     0,     0,   290,
      291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
-     883,     0,   298,     0,     0,     0,   884,   299,   300,     0,
+       0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
        0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
        0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
-     310,     0,     0,   311,   312,   666,     0,     0,     0,     0,
-     313,   314,     0,   315,     0,   316,   885,   317,   318,     0,
-       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
+     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
+       0,  2602,     0,     0,     0,   319,   320,   321,   322,   323,
      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
      334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
      342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
      347,   348,   349,   350,   351,     0,     0,   352,   353,     0,
      354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
      362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
-     368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
-       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+     368,   369,   370,   152,   153,     0,   371,   372,     0,     0,
+    2603,   373,     0,   374,   375,   376,     0,   377,   378,   379,
      380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
        0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
        0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
-     397,     0,     0,   398,   399,   400,     0,   401,     0,   886,
-     403,   404,   405,   887,     0,   407,   408,   409,     0,     0,
-     410,     0,     0,     0,   411,   412,   413,   414,   415,   888,
-       0,   416,   417,   418,   419,   420,     0,   889,   422,     0,
-     423,   424,   425,     0,     0,   890,     0,   427,     0,   428,
+     397,     0,     0,   398,   399,   400,     0,   401,     0,   402,
+     403,   404,   405,   406,     0,   407,   408,   409,     0,     0,
+     410,     0,     0,     0,   411,   412,   413,   414,   415,     0,
+       0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
+     423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
      429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
-     444,   445,     0,   446,   447,   891,     0,     0,   448,   449,
-     450,   451,     0,     0,     0,   452,     0,     0,   892,   893,
+     444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
+     450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
        0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
-     462,   463,   464,   465,     0,     0,     0,     0,     0,     0,
+     462,   463,   464,   465,     0,     0,  4435,   596,  4436,     0,
      466,   467,     0,   468,     0,     0,   469,     0,     0,     0,
      470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
      475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
-     894,   483,   484,   485,     0,   486,   487,     0,     0,   488,
-     489,   490,   491,     0,   156,   492,   493,     0,   494,   495,
+     482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
+     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
      496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
-     895,     0,     0,   501,   502,   503,   504,     0,   505,   506,
+       0,     0,     0,   501,   502,   503,   504,  2604,   505,   506,
        0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
-       0,   512,   896,   513,   897,   514,   515,     0,     0,     0,
+       0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
        0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
      518,   519,   520,   521,   522,   523,   524,     0,     0,     0,
        0,     0,     0,   525,   526,     0,   527,   528,   529,     0,
-     160,   530,   979,   162,   163,   164,   165,   166,   980,   874,
+     160,   530,   161,   162,   163,   164,   165,   166,     0,     0,
      167,     0,     0,     0,   168,     0,     0,   169,     0,   170,
      171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
        0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
@@ -8683,26 +8823,26 @@ static const yytype_int16 yytable[] =
      194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
      202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
      211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
-     219,   220,   221,   222,     0,   223,     0,     0,   224,   875,
-       0,   225,     0,   226,     0,   876,   227,     0,   228,     0,
+     219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
-     236,   877,     0,     0,     0,   237,     0,   238,   239,   240,
-     241,   242,     0,     0,     0,     0,   243,   878,     0,   244,
+       0,     0,   233,   234,  1778,     0,     0,  3710,   235,     0,
+     236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
+     241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
-     250,   251,   252,     0,   253,   254,     0,   255,   256,   879,
-     258,   259,   260,   880,     0,     0,   262,   263,   264,   265,
-       0,     0,   266,   267,     0,   881,   269,   270,     0,     0,
+     250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
+     258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
+       0,     0,   266,   267,     0,   268,   269,   270,  1779,     0,
      271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
-       0,   276,   277,   278,   279,   280,   281,   282,   882,   283,
-       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+       0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
+       0,     0,   284,   285,   286,     0,   287,  3194,     0,     0,
      288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
-       0,     0,     0,   295,   296,   297,   883,     0,   298,     0,
-       0,     0,   884,   299,   300,     0,     0,     0,   301,     0,
+       0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
+       0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
      302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
        0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
-     312,   666,     0,     0,     0,     0,   313,   314,     0,   315,
-       0,   316,   885,   317,   318,     0,     0,     0,     0,     0,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
+       0,   316,     0,   317,   318,     0,     0,  3195,     0,     0,
        0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
      328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
      337,   338,     0,   339,   340,   341,   342,     0,   343,   344,
@@ -8710,31 +8850,31 @@ static const yytype_int16 yytable[] =
      351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
        0,     0,   366,     0,     0,   367,   368,   369,   370,     0,
-       0,     0,   371,   372,     0,     0,     0,   373,     0,   374,
+       0,     0,   371,   372,     0,     0,  3196,   373,     0,   374,
      375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
        0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
      385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
      391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
-     399,   400,     0,   401,     0,   886,   403,   404,   405,   981,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
        0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
-     411,   412,   413,   414,   415,   888,     0,   416,   417,   418,
-     419,   420,     0,   889,   422,     0,   423,   424,   425,     0,
-       0,   890,     0,   427,     0,   428,   429,     0,   430,   431,
+     411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
+     419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
+       0,   426,     0,   427,     0,   428,   429,     0,   430,   431,
        0,   432,     0,   433,     0,     0,   434,   435,   436,   437,
      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
-     447,   891,     0,     0,   448,   449,   450,   451,     0,     0,
-       0,   452,     0,     0,   892,   893,     0,   454,   455,   456,
+     447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
+       0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
      457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
        0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
        0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
        0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
-     478,   479,   480,   481,     0,     0,   894,   483,   484,   485,
+     478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
        0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
      156,   492,   493,     0,   494,   495,   496,   497,     0,     0,
-       0,     0,     0,   498,   499,   500,   895,     0,     0,   501,
-     502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
-     509,   510,     0,     0,   511,     0,     0,   512,   896,   513,
-     897,   514,   515,     0,     0,     0,     0,     0,     0,   516,
+       0,     0,     0,   498,   499,   500,     0,     0,     0,   501,
+     502,   503,   504,  3197,   505,   506,     0,   507,   508,     0,
+     509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
+       0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
@@ -8750,31 +8890,31 @@ static const yytype_int16 yytable[] =
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
      231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-    2599,     0,     0,     0,   235,     0,   236,     0,     0,     0,
+    1778,     0,     0,  4674,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
        0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
        0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
      253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
-       0,   268,   269,   270,  2600,     0,   271,     0,     0,     0,
+       0,   268,   269,   270,  1779,     0,   271,     0,     0,     0,
      272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
      279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
-     286,     0,   287,  2601,     0,     0,   288,   289,     0,     0,
+     286,     0,   287,  3194,     0,     0,   288,   289,     0,     0,
        0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
      305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
        0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,  2602,     0,     0,     0,   319,   320,   321,
+     318,     0,     0,  3195,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
        0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
      353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
      360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
-       0,   367,   368,   369,   370,   152,   153,     0,   371,   372,
-       0,     0,  2603,   373,     0,   374,   375,   376,     0,   377,
+       0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
+       0,     0,  3196,   373,     0,   374,   375,   376,     0,   377,
      378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
        0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
        0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
@@ -8788,14 +8928,14 @@ static const yytype_int16 yytable[] =
      442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
      448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
        0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,  4435,   596,
-    4436,     0,   466,   467,     0,   468,     0,     0,   469,     0,
+     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
+       0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
        0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
+       0,   488,   489,   490,   491,     0,   156,   492,   493,     0,
      494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,  2604,
+     499,   500,     0,     0,     0,   501,   502,   503,   504,  3197,
      505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
      511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
@@ -8813,7 +8953,7 @@ static const yytype_int16 yytable[] =
        0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
      224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,  1778,     0,     0,  3710,
+       0,     0,     0,     0,   233,   234,  1778,     0,     0,  4743,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
      239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
        0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
@@ -8875,25 +9015,25 @@ static const yytype_int16 yytable[] =
      204,   205,   206,   207,     0,   208,   209,   210,   211,   212,
      213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
      221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
+       0,   226,  1124,   876,   227,     0,   228,     0,     0,     0,
      229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,  1778,     0,     0,  4674,   235,     0,   236,     0,
+     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
        0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
      252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
      260,   261,     0,     0,   262,   263,   264,   265,     0,     0,
-     266,   267,     0,   268,   269,   270,  1779,     0,   271,     0,
+     266,   267,     0,   268,   269,   270,     0,     0,   271,     0,
        0,     0,   272,   273,     0,   274,     0,   275,     0,   276,
      277,   278,   279,   280,   281,   282,     0,   283,     0,     0,
-     284,   285,   286,     0,   287,  3194,     0,     0,   288,   289,
+     284,   285,   286,     0,   287,     0,     0,     0,   288,   289,
        0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
        0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
        0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
        0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
+     308,   309,     0,     0,   310,     0,     0,   311,   312,   666,
        0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,  3195,     0,     0,     0,   319,
+       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
      330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
        0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
@@ -8901,7 +9041,7 @@ static const yytype_int16 yytable[] =
        0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
      358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
      366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,     0,  3196,   373,     0,   374,   375,   376,
+     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
        0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
        0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
        0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
@@ -8923,7 +9063,7 @@ static const yytype_int16 yytable[] =
      487,     0,     0,   488,   489,   490,   491,     0,   156,   492,
      493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
        0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
-     504,  3197,   505,   506,     0,   507,   508,     0,   509,   510,
+     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
        0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
      515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
      517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
@@ -8931,7 +9071,7 @@ static const yytype_int16 yytable[] =
      527,   528,   529,     0,   160,   530,   161,   162,   163,   164,
      165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
        0,   169,     0,   170,   171,   172,   173,   174,   175,   176,
-     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+     177,   178,     0,   179,     0,     0,  1544,   180,     0,     0,
        0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
      186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
      191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
@@ -8940,24 +9080,24 @@ static const yytype_int16 yytable[] =
      216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
        0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
-       0,   232,     0,     0,     0,     0,   233,   234,  1778,     0,
-       0,  4743,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
+       0,  1545,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
      243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
        0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
        0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
      262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
-     269,   270,  1779,     0,   271,     0,     0,     0,   272,   273,
+     269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
        0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
      281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
-     287,  3194,     0,     0,   288,   289,     0,     0,     0,   290,
+     287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
      291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
        0,     0,   298,     0,     0,     0,     0,   299,   300,     0,
        0,     0,   301,     0,   302,   303,     0,   304,   305,     0,
        0,     0,   306,     0,     0,   307,   308,   309,     0,     0,
-     310,     0,     0,   311,   312,     0,     0,     0,     0,     0,
+     310,     0,     0,   311,   312,   666,     0,     0,     0,     0,
      313,   314,     0,   315,     0,   316,     0,   317,   318,     0,
-       0,  3195,     0,     0,     0,   319,   320,   321,   322,   323,
+       0,     0,     0,     0,     0,   319,   320,   321,   322,   323,
      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
      334,     0,   335,   336,   337,   338,     0,   339,   340,   341,
      342,     0,   343,   344,   345,     0,     0,     0,     0,   346,
@@ -8965,7 +9105,7 @@ static const yytype_int16 yytable[] =
      354,     0,   355,     0,   356,   357,   358,   359,   360,   361,
      362,   363,   364,   365,     0,     0,   366,     0,     0,   367,
      368,   369,   370,     0,     0,     0,   371,   372,     0,     0,
-    3196,   373,     0,   374,   375,   376,     0,   377,   378,   379,
+       0,   373,     0,   374,   375,   376,     0,   377,   378,   379,
      380,     0,   381,   382,     0,     0,     0,     0,     0,     0,
        0,     0,   383,   384,   385,     0,     0,   386,     0,   387,
        0,   388,   389,   390,   391,   392,   393,   394,   395,   396,
@@ -8986,7 +9126,7 @@ static const yytype_int16 yytable[] =
      482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
      489,   490,   491,     0,   156,   492,   493,     0,   494,   495,
      496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
-       0,     0,     0,   501,   502,   503,   504,  3197,   505,   506,
+       0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
        0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
        0,   512,     0,   513,     0,   514,   515,     0,     0,     0,
        0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
@@ -8995,14 +9135,14 @@ static const yytype_int16 yytable[] =
      160,   530,   161,   162,   163,   164,   165,   166,     0,     0,
      167,     0,     0,     0,   168,     0,     0,   169,     0,   170,
      171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
-       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
+       0,     0,     0,   180,  1086,     0,     0,   181,     0,     0,
      182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
      188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
      194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
      202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
      211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
-       0,   225,     0,   226,  1124,   876,   227,     0,   228,     0,
+       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
        0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
@@ -9013,13 +9153,13 @@ static const yytype_int16 yytable[] =
        0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
      271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
        0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
-       0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
+       0,     0,   284,   285,   286,     0,   287,  1087,  1088,     0,
      288,   289,     0,     0,     0,   290,   291,   292,   293,   294,
        0,     0,     0,   295,   296,   297,     0,     0,   298,     0,
        0,     0,     0,   299,   300,     0,     0,     0,   301,     0,
      302,   303,     0,   304,   305,     0,     0,     0,   306,     0,
        0,   307,   308,   309,     0,     0,   310,     0,     0,   311,
-     312,   666,     0,     0,     0,     0,   313,   314,     0,   315,
+     312,     0,     0,     0,     0,     0,   313,   314,     0,   315,
        0,   316,     0,   317,   318,     0,     0,     0,     0,     0,
        0,   319,   320,   321,   322,   323,   324,   325,   326,   327,
      328,   329,   330,   331,   332,   333,   334,     0,   335,   336,
@@ -9048,7 +9188,7 @@ static const yytype_int16 yytable[] =
        0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
      478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
        0,   486,   487,     0,     0,   488,   489,   490,   491,     0,
-     156,   492,   493,     0,   494,   495,   496,   497,     0,     0,
+    1089,   492,   493,     0,   494,   495,   496,   497,     0,     0,
        0,     0,     0,   498,   499,   500,     0,     0,     0,   501,
      502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
      509,   510,     0,     0,   511,     0,     0,   512,     0,   513,
@@ -9058,7 +9198,7 @@ static const yytype_int16 yytable[] =
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
      168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,  1544,   180,
+     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
      185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
      190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
@@ -9068,7 +9208,7 @@ static const yytype_int16 yytable[] =
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
      231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,  1545,   235,     0,   236,     0,     0,     0,
+       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
        0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
        0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
@@ -9082,9 +9222,9 @@ static const yytype_int16 yytable[] =
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
      305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,   666,     0,     0,
+       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
+     318,     0,     0,  2085,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
@@ -9092,9 +9232,9 @@ static const yytype_int16 yytable[] =
      353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
      360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
        0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
-       0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
+       0,     0,  2086,   373,     0,   374,   375,   376,     0,   377,
      378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
+       0,     0,     0,     0,   383,   384,   385,     0,   785,   386,
        0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
      395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
        0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
@@ -9102,7 +9242,7 @@ static const yytype_int16 yytable[] =
      415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
      422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
        0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
+       0,     0,   434,   435,   436,   437,  2087,   439,   440,   441,
      442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
      448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
        0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
@@ -9111,9 +9251,9 @@ static const yytype_int16 yytable[] =
        0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,   156,   492,   493,     0,
+       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
      494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
+     499,   500,     0,     0,     0,   501,   502,   503,   504,  2088,
      505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
      511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
@@ -9122,7 +9262,7 @@ static const yytype_int16 yytable[] =
      529,     0,   160,   530,   161,   162,   163,   164,   165,   166,
        0,     0,   167,     0,     0,     0,   168,     0,     0,   169,
        0,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-       0,   179,     0,     0,     0,   180,  1086,     0,     0,   181,
+       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
        0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
        0,     0,   188,     0,     0,   189,   190,     0,   191,   192,
        0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
@@ -9140,14 +9280,14 @@ static const yytype_int16 yytable[] =
      264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
        0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
        0,   275,     0,   276,   277,   278,   279,   280,   281,   282,
-       0,   283,     0,     0,   284,   285,   286,     0,   287,  1087,
-    1088,     0,   288,   289,     0,     0,     0,   290,   291,   292,
+       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
+       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
      293,   294,     0,     0,     0,   295,   296,   297,     0,     0,
      298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
      301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
      306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
        0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
-       0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
+       0,   315,     0,   316,     0,   317,   318,     0,     0,  2085,
        0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
      326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
      335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
@@ -9155,10 +9295,10 @@ static const yytype_int16 yytable[] =
      349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
      355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
      364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
-     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
+     370,     0,     0,     0,   371,   372,     0,     0,  2086,   373,
        0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
      381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
-     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
+     383,   384,   385,     0,   785,   386,     0,   387,     0,   388,
      389,   390,   391,   392,   393,   394,   395,   396,   397,     0,
        0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
      405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
@@ -9175,9 +9315,9 @@ static const yytype_int16 yytable[] =
      472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
      476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
      484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,  1089,   492,   493,     0,   494,   495,   496,   497,
+     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
        0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
-       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
+       0,   501,   502,   503,   504,  2088,   505,   506,     0,   507,
      508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
        0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
        0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
@@ -9186,7 +9326,7 @@ static const yytype_int16 yytable[] =
      161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
        0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
      173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
-       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
+    1529,   180,     0,     0,     0,   181,     0,     0,   182,   183,
      184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
        0,   189,   190,     0,   191,   192,     0,   193,   194,     0,
      195,   196,   197,   198,   199,   200,     0,   201,   202,   203,
@@ -9195,7 +9335,7 @@ static const yytype_int16 yytable[] =
      221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
        0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
      229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
+     233,   234,     0,     0,     0,  1530,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
        0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
@@ -9209,9 +9349,9 @@ static const yytype_int16 yytable[] =
        0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
        0,   299,   300,     0,     0,     0,   301,     0,   302,   303,
        0,   304,   305,     0,     0,     0,   306,     0,     0,   307,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
+     308,   309,     0,     0,   310,     0,     0,   311,   312,   666,
        0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,  2085,     0,     0,     0,   319,
+       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
      330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
        0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
@@ -9219,17 +9359,17 @@ static const yytype_int16 yytable[] =
        0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
      358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
      366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-     371,   372,     0,     0,  2086,   373,     0,   374,   375,   376,
+     371,   372,     0,     0,     0,   373,     0,   374,   375,   376,
        0,   377,   378,   379,   380,     0,   381,   382,     0,     0,
        0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
-     785,   386,     0,   387,     0,   388,   389,   390,   391,   392,
+       0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
      393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
        0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
      408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
      413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
        0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
        0,   427,     0,   428,   429,     0,   430,   431,     0,   432,
-       0,   433,     0,     0,   434,   435,   436,   437,  2087,   439,
+       0,   433,     0,     0,   434,   435,   436,   437,   438,   439,
      440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
        0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
        0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
@@ -9238,10 +9378,10 @@ static const yytype_int16 yytable[] =
      469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
      473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
      480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
+     487,     0,     0,   488,   489,   490,   491,     0,   156,   492,
      493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
        0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
-     504,  2088,   505,   506,     0,   507,   508,     0,   509,   510,
+     504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
        0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
      515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
      517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
@@ -9293,7 +9433,7 @@ static const yytype_int16 yytable[] =
        0,   416,   417,   418,   419,   420,     0,   421,   422,     0,
      423,   424,   425,     0,     0,   426,     0,   427,     0,   428,
      429,     0,   430,   431,     0,   432,     0,   433,     0,     0,
-     434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
+     434,   435,   436,   437,  4268,   439,   440,   441,   442,   443,
      444,   445,     0,   446,   447,     0,     0,     0,   448,   449,
      450,   451,     0,     0,     0,   452,     0,     0,     0,   453,
        0,   454,   455,   456,   457,   458,   459,     0,   460,   461,
@@ -9313,16 +9453,16 @@ static const yytype_int16 yytable[] =
      160,   530,   161,   162,   163,   164,   165,   166,     0,     0,
      167,     0,     0,     0,   168,     0,     0,   169,     0,   170,
      171,   172,   173,   174,   175,   176,   177,   178,     0,   179,
-       0,     0,  1529,   180,     0,     0,     0,   181,     0,     0,
+       0,     0,     0,   180,     0,     0,     0,   181,     0,     0,
      182,   183,   184,     0,   185,     0,   186,   187,     0,     0,
      188,     0,     0,   189,   190,     0,   191,   192,     0,   193,
      194,     0,   195,   196,   197,   198,   199,   200,     0,   201,
      202,   203,   204,   205,   206,   207,     0,   208,   209,   210,
      211,   212,   213,   214,   215,     0,   216,   217,     0,   218,
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
-       0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
+       0,   225,     0,   226,  1124,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,  1530,   235,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
@@ -9374,7 +9514,7 @@ static const yytype_int16 yytable[] =
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
-     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
+     163,   164,   165,   166,  1567,     0,   167,     0,     0,     0,
      168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
      175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
@@ -9400,9 +9540,9 @@ static const yytype_int16 yytable[] =
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
      305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
+       0,     0,   310,     0,     0,   311,   312,   666,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,  2085,     0,     0,     0,   319,   320,   321,
+     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
@@ -9410,9 +9550,9 @@ static const yytype_int16 yytable[] =
      353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
      360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
        0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
-       0,     0,  2086,   373,     0,   374,   375,   376,     0,   377,
+       0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
      378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,   785,   386,
+       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
        0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
      395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
        0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
@@ -9420,7 +9560,7 @@ static const yytype_int16 yytable[] =
      415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
      422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
        0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,  4268,   439,   440,   441,
+       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
      442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
      448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
        0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
@@ -9429,9 +9569,9 @@ static const yytype_int16 yytable[] =
        0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
+       0,   488,   489,   490,   491,     0,   156,   492,   493,     0,
      494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,  2088,
+     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
      505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
      511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
@@ -9447,7 +9587,7 @@ static const yytype_int16 yytable[] =
        0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
      209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
        0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
-     224,     0,     0,   225,     0,   226,  1124,     0,   227,     0,
+     224,     0,     0,   225,     0,   226,     0,   876,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
        0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
@@ -9501,7 +9641,7 @@ static const yytype_int16 yytable[] =
        0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
      520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
        0,   525,   526,     0,   527,   528,   529,     0,   160,   530,
-     161,   162,   163,   164,   165,   166,  1567,     0,   167,     0,
+     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
        0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
      173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
        0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
@@ -9513,7 +9653,7 @@ static const yytype_int16 yytable[] =
      221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
        0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
      229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
+     233,   234,     0,     0,     0,  2659,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
        0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
@@ -9567,14 +9707,14 @@ static const yytype_int16 yytable[] =
      527,   528,   529,     0,   160,   530,   161,   162,   163,   164,
      165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
        0,   169,     0,   170,   171,   172,   173,   174,   175,   176,
-     177,   178,     0,   179,     0,     0,     0,   180,     0,     0,
+     177,   178,     0,   179,     0,     0,  1529,   180,     0,     0,
        0,   181,     0,     0,   182,   183,   184,     0,   185,     0,
      186,   187,     0,     0,   188,     0,     0,   189,   190,     0,
      191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
      199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
        0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
      216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
-       0,     0,   224,     0,     0,   225,     0,   226,     0,   876,
+       0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
        0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
        0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
@@ -9640,7 +9780,7 @@ static const yytype_int16 yytable[] =
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
        0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,  2659,   235,     0,
+       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
@@ -9693,8 +9833,8 @@ static const yytype_int16 yytable[] =
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,  1529,   180,
+     168,  3120,     0,   169,     0,   170,   171,   172,   173,   174,
+     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
      185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
      190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
@@ -9718,7 +9858,7 @@ static const yytype_int16 yytable[] =
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
      300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
      305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,   666,     0,     0,
+       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
      318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
@@ -9764,7 +9904,7 @@ static const yytype_int16 yytable[] =
        0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
        0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
      209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
-       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
+       0,   218,   219,   220,   221,   222,  3304,   223,     0,     0,
      224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
        0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
@@ -9772,7 +9912,7 @@ static const yytype_int16 yytable[] =
      239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
        0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
      249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
+     256,   257,   258,   259,   260,   261,     0,  3305,   262,   263,
      264,   265,     0,     0,   266,   267,     0,   268,   269,   270,
        0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
        0,   275,     0,   276,   277,   278,   279,   280,   281,   282,
@@ -9782,7 +9922,7 @@ static const yytype_int16 yytable[] =
      298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
      301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
      306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
-       0,   311,   312,   666,     0,     0,     0,     0,   313,   314,
+       0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
        0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
        0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
      326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
@@ -9811,7 +9951,7 @@ static const yytype_int16 yytable[] =
      472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
      476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
      484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,   156,   492,   493,     0,   494,   495,   496,   497,
+     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
        0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
        0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
      508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
@@ -9820,7 +9960,7 @@ static const yytype_int16 yytable[] =
      520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
        0,   525,   526,     0,   527,   528,   529,     0,   160,   530,
      161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,  3120,     0,   169,     0,   170,   171,   172,
+       0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
      173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
        0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
      184,     0,   185,     0,   186,   187,     0,     0,   188,     0,
@@ -9870,11 +10010,11 @@ static const yytype_int16 yytable[] =
        0,     0,   448,   449,   450,   451,     0,     0,     0,   452,
        0,     0,     0,   453,     0,   454,   455,   456,   457,   458,
      459,     0,   460,   461,   462,   463,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
+       0,   596,     0,     0,   466,   467,     0,   468,     0,     0,
      469,     0,     0,     0,   470,   471,   472,     0,     0,     0,
      473,     0,     0,   474,   475,     0,   476,   477,   478,   479,
      480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,   156,   492,
+     487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
      493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
        0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
      504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
@@ -9891,7 +10031,7 @@ static const yytype_int16 yytable[] =
      191,   192,     0,   193,   194,     0,   195,   196,   197,   198,
      199,   200,     0,   201,   202,   203,   204,   205,   206,   207,
        0,   208,   209,   210,   211,   212,   213,   214,   215,     0,
-     216,   217,     0,   218,   219,   220,   221,   222,  3304,   223,
+     216,   217,     0,   218,   219,   220,   221,   222,     0,   223,
        0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
        0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
@@ -9899,10 +10039,10 @@ static const yytype_int16 yytable[] =
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
      243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
        0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
-       0,   255,   256,   257,   258,   259,   260,   261,     0,  3305,
+       0,   255,   256,   257,   258,   259,   260,   261,     0,     0,
      262,   263,   264,   265,     0,     0,   266,   267,     0,   268,
      269,   270,     0,     0,   271,     0,     0,     0,   272,   273,
-       0,   274,     0,   275,     0,   276,   277,   278,   279,   280,
+    1184,   274,     0,   275,     0,   276,   277,   278,   279,   280,
      281,   282,     0,   283,     0,     0,   284,   285,   286,     0,
      287,     0,     0,     0,   288,   289,     0,     0,     0,   290,
      291,   292,   293,   294,     0,     0,     0,   295,   296,   297,
@@ -9958,7 +10098,7 @@ static const yytype_int16 yytable[] =
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
        0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+       0,     0,   233,   234,     0,     0,     0,  1522,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
@@ -9997,7 +10137,7 @@ static const yytype_int16 yytable[] =
      447,     0,     0,     0,   448,   449,   450,   451,     0,     0,
        0,   452,     0,     0,     0,   453,     0,   454,   455,   456,
      457,   458,   459,     0,   460,   461,   462,   463,   464,   465,
-       0,     0,     0,   596,     0,     0,   466,   467,     0,   468,
+       0,     0,     0,     0,     0,     0,   466,   467,     0,   468,
        0,     0,   469,     0,     0,     0,   470,   471,   472,     0,
        0,     0,   473,     0,     0,   474,   475,     0,   476,   477,
      478,   479,   480,   481,     0,     0,   482,   483,   484,   485,
@@ -10022,14 +10162,14 @@ static const yytype_int16 yytable[] =
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
      231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
-       0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
+       0,     0,     0,  1522,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
        0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
        0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
      253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
        0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     272,   273,  1184,   274,     0,   275,     0,   276,   277,   278,
+     272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
      279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
      286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
        0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
@@ -10066,7 +10206,7 @@ static const yytype_int16 yytable[] =
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
        0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
-     494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
+     494,   495,   496,   497,     0,     0,     0,     0,     0,  2139,
      499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
      505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
      511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
@@ -10085,7 +10225,7 @@ static const yytype_int16 yytable[] =
        0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
      224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,  1522,
+       0,     0,     0,     0,   233,   234,     0,     0,     0,  2278,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
      239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
        0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
@@ -10149,7 +10289,7 @@ static const yytype_int16 yytable[] =
      221,   222,     0,   223,     0,     0,   224,     0,     0,   225,
        0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
      229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,   234,     0,     0,     0,  1522,   235,     0,   236,     0,
+     233,   234,     0,     0,     0,     0,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,   243,     0,     0,   244,   245,   246,
        0,     0,     0,   247,     0,   248,   249,     0,   250,   251,
@@ -10178,7 +10318,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
        0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
      393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
+    3313,   401,     0,   402,   403,   404,   405,   406,     0,   407,
      408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
      413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
        0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
@@ -10194,7 +10334,7 @@ static const yytype_int16 yytable[] =
      480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
      487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
      493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
-       0,  2139,   499,   500,     0,     0,     0,   501,   502,   503,
+       0,   498,   499,   500,     0,     0,     0,   501,   502,   503,
      504,     0,   505,   506,     0,   507,   508,     0,   509,   510,
        0,     0,   511,     0,     0,   512,     0,   513,     0,   514,
      515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
@@ -10213,7 +10353,7 @@ static const yytype_int16 yytable[] =
        0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
        0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
-       0,  2278,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
      243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
        0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
@@ -10256,7 +10396,7 @@ static const yytype_int16 yytable[] =
      470,   471,   472,     0,     0,     0,   473,     0,     0,   474,
      475,     0,   476,   477,   478,   479,   480,   481,     0,     0,
      482,   483,   484,   485,     0,   486,   487,     0,     0,   488,
-     489,   490,   491,     0,     0,   492,   493,     0,   494,   495,
+     489,   490,   491,     0,   156,   492,   493,     0,   494,   495,
      496,   497,     0,     0,     0,     0,     0,   498,   499,   500,
        0,     0,     0,   501,   502,   503,   504,     0,   505,   506,
        0,   507,   508,     0,   509,   510,     0,     0,   511,     0,
@@ -10276,7 +10416,7 @@ static const yytype_int16 yytable[] =
      219,   220,   221,   222,     0,   223,     0,     0,   224,     0,
        0,   225,     0,   226,     0,     0,   227,     0,   228,     0,
        0,     0,   229,   230,   231,     0,     0,   232,     0,     0,
-       0,     0,   233,   234,     0,     0,     0,     0,   235,     0,
+       0,     0,   233,   234,     0,     0,     0,  3626,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,   243,     0,     0,   244,
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
@@ -10305,7 +10445,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
      385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
      391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
-     399,   400,  3313,   401,     0,   402,   403,   404,   405,   406,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
        0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
      411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
      419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
@@ -10328,7 +10468,7 @@ static const yytype_int16 yytable[] =
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
-     163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
+     163,   164,   165,   166,  3634,     0,   167,     0,     0,     0,
      168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
      175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
@@ -10383,7 +10523,7 @@ static const yytype_int16 yytable[] =
        0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
        0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
-       0,   488,   489,   490,   491,     0,   156,   492,   493,     0,
+       0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
      494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
      499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
      505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
@@ -10403,7 +10543,7 @@ static const yytype_int16 yytable[] =
        0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
      224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,  3626,
+       0,     0,     0,     0,   233,   234,     0,     0,     0,  3658,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
      239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
        0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
@@ -10455,7 +10595,7 @@ static const yytype_int16 yytable[] =
        0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
      520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
        0,   525,   526,     0,   527,   528,   529,     0,   160,   530,
-     161,   162,   163,   164,   165,   166,  3634,     0,   167,     0,
+     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
        0,     0,   168,     0,     0,   169,     0,   170,   171,   172,
      173,   174,   175,   176,   177,   178,     0,   179,     0,     0,
        0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
@@ -10496,7 +10636,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,     0,     0,   383,   384,   385,     0,
        0,   386,     0,   387,     0,   388,   389,   390,   391,   392,
      393,   394,   395,   396,   397,     0,     0,   398,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
+    4579,   401,     0,   402,   403,   404,   405,   406,     0,   407,
      408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
      413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
        0,   421,   422,     0,   423,   424,   425,     0,     0,   426,
@@ -10531,7 +10671,7 @@ static const yytype_int16 yytable[] =
        0,     0,   224,     0,     0,   225,     0,   226,     0,     0,
      227,     0,   228,     0,     0,     0,   229,   230,   231,     0,
        0,   232,     0,     0,     0,     0,   233,   234,     0,     0,
-       0,  3658,   235,     0,   236,     0,     0,     0,     0,   237,
+       0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
      243,     0,     0,   244,   245,   246,     0,     0,     0,   247,
        0,   248,   249,     0,   250,   251,   252,     0,   253,   254,
@@ -10600,7 +10740,7 @@ static const yytype_int16 yytable[] =
      245,   246,     0,     0,     0,   247,     0,   248,   249,     0,
      250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
      258,   259,   260,   261,     0,     0,   262,   263,   264,   265,
-       0,     0,   266,   267,     0,   268,   269,   270,     0,     0,
+       0,     0,   266,   267,     0,   268,  2004,   270,     0,     0,
      271,     0,     0,     0,   272,   273,     0,   274,     0,   275,
        0,   276,   277,   278,   279,   280,   281,   282,     0,   283,
        0,     0,   284,   285,   286,     0,   287,     0,     0,     0,
@@ -10617,13 +10757,13 @@ static const yytype_int16 yytable[] =
      345,     0,     0,     0,     0,   346,   347,   348,   349,   350,
      351,     0,     0,   352,   353,     0,   354,     0,   355,     0,
      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
-       0,     0,   366,     0,     0,   367,   368,   369,   370,     0,
+       0,     0,   366,     0,     0,   367,  2005,   369,   370,     0,
        0,     0,   371,   372,     0,     0,     0,   373,     0,   374,
      375,   376,     0,   377,   378,   379,   380,     0,   381,   382,
        0,     0,     0,     0,     0,     0,     0,     0,   383,   384,
      385,     0,     0,   386,     0,   387,     0,   388,   389,   390,
      391,   392,   393,   394,   395,   396,   397,     0,     0,   398,
-     399,   400,  4579,   401,     0,   402,   403,   404,   405,   406,
+     399,   400,     0,   401,     0,   402,   403,   404,   405,   406,
        0,   407,   408,   409,     0,     0,   410,     0,     0,     0,
      411,   412,   413,   414,   415,     0,     0,   416,   417,   418,
      419,   420,     0,   421,   422,     0,   423,   424,   425,     0,
@@ -10647,132 +10787,132 @@ static const yytype_int16 yytable[] =
      522,   523,   524,     0,     0,     0,     0,     0,     0,   525,
      526,     0,   527,   528,   529,     0,   160,   530,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
-     168,     0,     0,   169,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,   178,     0,   179,     0,     0,     0,   180,
+     168,     0,     0,     0,     0,   170,   171,   172,   173,   174,
+     175,   176,   177,     0,     0,   925,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
-     185,     0,   186,   187,     0,     0,   188,     0,     0,   189,
-     190,     0,   191,   192,     0,   193,   194,     0,   195,   196,
-     197,   198,   199,   200,     0,   201,   202,   203,   204,   205,
-     206,   207,     0,   208,   209,   210,   211,   212,   213,   214,
-     215,     0,   216,   217,     0,   218,   219,   220,   221,   222,
+     185,     0,     0,     0,     0,     0,   188,     7,     0,   189,
+     190,     0,   191,     0,     0,     0,     0,     0,   195,   196,
+     197,   926,   199,   200,     0,   201,   202,     0,     0,     0,
+       0,     0,     0,   208,     0,   210,     0,   212,   213,   214,
+     215,     0,   216,   217,     0,   218,   219,   220,     0,   222,
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
        0,     0,   227,     0,   228,     0,     0,     0,   229,   230,
-     231,     0,     0,   232,     0,     0,     0,     0,   233,   234,
+     231,     0,     0,   232,     0,     0,     0,     0,   233,     0,
        0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
-       0,     0,   243,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,   248,   249,     0,   250,   251,   252,     0,
-     253,   254,     0,   255,   256,   257,   258,   259,   260,   261,
+       0,     0,     0,     0,     0,   244,   245,   246,     0,  -338,
+    -338,   247,     0,  -338,   249,     0,   250,   251,   252,     0,
+     253,   254,     0,   255,   256,   257,   258,   259,     0,     0,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
-       0,   268,   269,   270,     0,     0,   271,     0,     0,     0,
-     272,   273,     0,   274,     0,   275,     0,   276,   277,   278,
-     279,   280,   281,   282,     0,   283,     0,     0,   284,   285,
-     286,     0,   287,     0,     0,     0,   288,   289,     0,     0,
-       0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
+     927,   268,   269,   270,     0,     0,     0,     0,     0,     0,
+       0,   273,     0,   274,     0,   275,     0,   276,   277,   278,
+     279,   280,     0,   282,     0,   283,     0,     0,     0,   285,
+     286,     0,     0,     0,     0,     0,     0,   289,     0,     0,
+       0,   290,   291,   292,   293,   294,    26,     0,     0,   295,
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
-     300,     0,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,     0,     0,     0,   306,     0,     0,   307,   308,   309,
-       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
+       0,     0,     0,     0,   301,     0,   302,   303,     0,   304,
+     305,   928,     0,     0,   306,     0,     0,     0,   308,   309,
+       0,     0,   310,   929,     0,   311,   312,     0,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
+     318,     0,     0,     0,     0,    32,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
        0,   346,   347,   348,   349,   350,   351,     0,     0,   352,
      353,     0,   354,     0,   355,     0,   356,   357,   358,   359,
      360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
-       0,   367,   368,   369,   370,     0,     0,     0,   371,   372,
+       0,   367,   368,   369,   370,     0,     0,     0,     0,   372,
        0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
-     378,   379,   380,     0,   381,   382,     0,     0,     0,     0,
-       0,     0,     0,     0,   383,   384,   385,     0,     0,   386,
+     378,   379,   930,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   384,   385,     0,     0,     0,
        0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,     0,     0,   398,   399,   400,     0,   401,
+     395,   396,     0,     0,     0,     0,   399,   400,     0,   401,
        0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
        0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
      415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-     422,     0,   423,   424,   425,     0,     0,   426,     0,   427,
-       0,   428,   429,     0,   430,   431,     0,   432,     0,   433,
-       0,     0,   434,   435,   436,   437,   438,   439,   440,   441,
-     442,   443,   444,   445,     0,   446,   447,     0,     0,     0,
-     448,   449,   450,   451,     0,     0,     0,   452,     0,     0,
-       0,   453,     0,   454,   455,   456,   457,   458,   459,     0,
-     460,   461,   462,   463,   464,   465,     0,     0,     0,     0,
+       0,     0,   423,     0,   425,    41,     0,   426,     0,     0,
+       0,   428,     0,     0,   430,   431,     0,   432,   931,   433,
+       0,     0,   434,     0,   436,   437,   438,   439,   440,   441,
+     442,     0,   444,   445,     0,   446,     0,     0,     0,     0,
+     448,   449,   450,     0,     0,     0,     0,   452,     0,     0,
+       0,     0,     0,     0,   455,     0,     0,   458,   459,     0,
+     460,     0,   462,     0,   464,   465,     0,     0,     0,     0,
        0,     0,   466,   467,     0,   468,     0,     0,   469,     0,
-       0,     0,   470,   471,   472,     0,     0,     0,   473,     0,
-       0,   474,   475,     0,   476,   477,   478,   479,   480,   481,
+       0,     0,   470,     0,   472,     0,     0,     0,   473,     0,
+       0,     0,   475,     0,   476,   477,   478,   479,   480,   481,
        0,     0,   482,   483,   484,   485,     0,   486,   487,     0,
        0,   488,   489,   490,   491,     0,     0,   492,   493,     0,
      494,   495,   496,   497,     0,     0,     0,     0,     0,   498,
-     499,   500,     0,     0,     0,   501,   502,   503,   504,     0,
-     505,   506,     0,   507,   508,     0,   509,   510,     0,     0,
-     511,     0,     0,   512,     0,   513,     0,   514,   515,     0,
+     499,   500,     0,     0,     0,     0,   502,   503,   504,     0,
+     505,   506,     0,   507,   508,     0,     0,     0,     0,     0,
+     511,     0,     0,   512,     0,     0,     0,   514,   515,     0,
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
        0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
-       0,     0,     0,     0,     0,   525,   526,     0,   527,   528,
+       0,    60,     0,     0,     0,   525,     0,     0,   527,     0,
      529,     0,   160,   530,   161,   162,   163,   164,   165,   166,
-       0,     0,   167,     0,     0,     0,   168,     0,     0,   169,
-       0,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-       0,   179,     0,     0,     0,   180,     0,     0,     0,   181,
-       0,     0,   182,   183,   184,     0,   185,     0,   186,   187,
-       0,     0,   188,     0,     0,   189,   190,     0,   191,   192,
-       0,   193,   194,     0,   195,   196,   197,   198,   199,   200,
-       0,   201,   202,   203,   204,   205,   206,   207,     0,   208,
-     209,   210,   211,   212,   213,   214,   215,     0,   216,   217,
-       0,   218,   219,   220,   221,   222,     0,   223,     0,     0,
+       0,     0,   167,     0,     0,     0,   168,     0,     0,     0,
+       0,   170,   171,   172,   173,   174,   175,   176,   177,     0,
+       0,   925,     0,     0,     0,   180,     0,     0,     0,   181,
+       0,     0,   182,   183,   184,     0,   185,     0,     0,     0,
+       0,     0,   188,     7,     0,   189,   190,     0,   191,     0,
+       0,     0,     0,     0,   195,   196,   197,   926,   199,   200,
+       0,   201,   202,     0,     0,     0,     0,     0,     0,   208,
+       0,   210,     0,   212,   213,   214,   215,     0,   216,   217,
+       0,   218,   219,   220,     0,   222,     0,   223,     0,     0,
      224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
      228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
+       0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
-     239,   240,   241,   242,     0,     0,     0,     0,   243,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,   248,
+     239,   240,   241,   242,     0,     0,     0,     0,     0,     0,
+       0,   244,   245,   246,     0,  -358,     0,   247,     0,  -358,
      249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,   260,   261,     0,     0,   262,   263,
-     264,   265,     0,     0,   266,   267,     0,   268,  2004,   270,
-       0,     0,   271,     0,     0,     0,   272,   273,     0,   274,
-       0,   275,     0,   276,   277,   278,   279,   280,   281,   282,
-       0,   283,     0,     0,   284,   285,   286,     0,   287,     0,
-       0,     0,   288,   289,     0,     0,     0,   290,   291,   292,
-     293,   294,     0,     0,     0,   295,   296,   297,     0,     0,
-     298,     0,     0,     0,     0,   299,   300,     0,     0,     0,
-     301,     0,   302,   303,     0,   304,   305,     0,     0,     0,
-     306,     0,     0,   307,   308,   309,     0,     0,   310,     0,
+     256,   257,   258,   259,     0,     0,     0,     0,   262,   263,
+     264,   265,     0,     0,   266,   267,   927,   268,   269,   270,
+       0,     0,     0,     0,     0,     0,     0,   273,     0,   274,
+       0,   275,     0,   276,   277,   278,   279,   280,     0,   282,
+       0,   283,     0,     0,     0,   285,   286,     0,     0,     0,
+       0,     0,     0,   289,     0,     0,     0,   290,   291,   292,
+     293,   294,    26,     0,     0,   295,   296,   297,     0,     0,
+     298,     0,     0,     0,     0,   299,     0,     0,     0,     0,
+     301,     0,   302,   303,     0,   304,   305,   928,     0,     0,
+     306,     0,     0,     0,   308,   309,     0,     0,   310,   929,
        0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
        0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
-       0,     0,     0,   319,   320,   321,   322,   323,   324,   325,
+       0,    32,     0,   319,   320,   321,   322,   323,   324,   325,
      326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
      335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
      343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
      349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
      355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
-     364,   365,     0,     0,   366,     0,     0,   367,  2005,   369,
-     370,     0,     0,     0,   371,   372,     0,     0,     0,   373,
-       0,   374,   375,   376,     0,   377,   378,   379,   380,     0,
-     381,   382,     0,     0,     0,     0,     0,     0,     0,     0,
-     383,   384,   385,     0,     0,   386,     0,   387,     0,   388,
-     389,   390,   391,   392,   393,   394,   395,   396,   397,     0,
-       0,   398,   399,   400,     0,   401,     0,   402,   403,   404,
+     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
+     370,     0,     0,     0,     0,   372,     0,     0,     0,   373,
+       0,   374,   375,   376,     0,   377,   378,   379,   930,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,   384,   385,     0,     0,     0,     0,   387,     0,   388,
+     389,   390,   391,   392,   393,   394,   395,   396,     0,     0,
+       0,     0,   399,   400,     0,   401,     0,   402,   403,   404,
      405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
        0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
-     417,   418,   419,   420,     0,   421,   422,     0,   423,   424,
-     425,     0,     0,   426,     0,   427,     0,   428,   429,     0,
-     430,   431,     0,   432,     0,   433,     0,     0,   434,   435,
-     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
-       0,   446,   447,     0,     0,     0,   448,   449,   450,   451,
-       0,     0,     0,   452,     0,     0,     0,   453,     0,   454,
-     455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
+     417,   418,   419,   420,     0,   421,     0,     0,   423,     0,
+     425,    41,     0,   426,     0,     0,     0,   428,     0,     0,
+     430,   431,     0,   432,   931,   433,     0,     0,   434,     0,
+     436,   437,   438,   439,   440,   441,   442,     0,   444,   445,
+       0,   446,     0,     0,     0,     0,   448,   449,   450,     0,
+       0,     0,     0,   452,     0,     0,     0,     0,     0,     0,
+     455,     0,     0,   458,   459,     0,   460,     0,   462,     0,
      464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
-       0,   468,     0,     0,   469,     0,     0,     0,   470,   471,
-     472,     0,     0,     0,   473,     0,     0,   474,   475,     0,
+       0,   468,     0,     0,   469,     0,     0,     0,   470,     0,
+     472,     0,     0,     0,   473,     0,     0,     0,   475,     0,
      476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
      484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
      491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
        0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
-       0,   501,   502,   503,   504,     0,   505,   506,     0,   507,
-     508,     0,   509,   510,     0,     0,   511,     0,     0,   512,
-       0,   513,     0,   514,   515,     0,     0,     0,     0,     0,
+       0,     0,   502,   503,   504,     0,   505,   506,     0,   507,
+     508,     0,     0,     0,     0,     0,   511,     0,     0,   512,
+       0,     0,     0,   514,   515,     0,     0,     0,     0,     0,
        0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
-     520,   521,   522,   523,   524,     0,     0,     0,     0,     0,
-       0,   525,   526,     0,   527,   528,   529,     0,   160,   530,
+     520,   521,   522,   523,   524,  -358,     0,    60,     0,     0,
+       0,   525,     0,     0,   527,     0,   529,     0,   160,   530,
      161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
        0,     0,   168,     0,     0,     0,     0,   170,   171,   172,
      173,   174,   175,   176,   177,     0,     0,   925,     0,     0,
@@ -10788,7 +10928,7 @@ static const yytype_int16 yytable[] =
      233,     0,     0,     0,     0,     0,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,     0,     0,     0,   244,   245,   246,
-       0,  -338,  -338,   247,     0,  -338,   249,     0,   250,   251,
+       0,  -355,     0,   247,     0,  -355,   249,     0,   250,   251,
      252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
        0,     0,     0,     0,   262,   263,   264,   265,     0,     0,
      266,   267,   927,   268,   269,   270,     0,     0,     0,     0,
@@ -10835,7 +10975,7 @@ static const yytype_int16 yytable[] =
        0,     0,   511,     0,     0,   512,     0,     0,     0,   514,
      515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
      517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
-     524,     0,     0,    60,     0,     0,     0,   525,     0,     0,
+     524,  -355,     0,    60,     0,     0,     0,   525,     0,     0,
      527,     0,   529,     0,   160,   530,   161,   162,   163,   164,
      165,   166,     0,     0,   167,     0,     0,     0,   168,     0,
        0,     0,     0,   170,   171,   172,   173,   174,   175,   176,
@@ -10851,8 +10991,8 @@ static const yytype_int16 yytable[] =
        0,   232,     0,     0,     0,     0,   233,     0,     0,     0,
        0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
-       0,     0,     0,   244,   245,   246,     0,  -358,     0,   247,
-       0,  -358,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,     0,     0,   244,   245,   246,     0,     0,     0,   247,
+       0,  1442,   249,     0,   250,   251,   252,     0,   253,   254,
        0,   255,   256,   257,   258,   259,     0,     0,     0,     0,
      262,   263,   264,   265,     0,     0,   266,   267,   927,   268,
      269,   270,     0,     0,     0,     0,     0,     0,     0,   273,
@@ -10898,7 +11038,7 @@ static const yytype_int16 yytable[] =
        0,   507,   508,     0,     0,     0,     0,     0,   511,     0,
        0,   512,     0,     0,     0,   514,   515,     0,     0,     0,
        0,     0,     0,   516,     0,     0,   517,     0,     0,     0,
-     518,   519,   520,   521,   522,   523,   524,  -358,     0,    60,
+     518,   519,   520,   521,   522,   523,   524,     0,     0,    60,
        0,     0,     0,   525,     0,     0,   527,     0,   529,     0,
      160,   530,   161,   162,   163,   164,   165,   166,     0,     0,
      167,     0,     0,     0,   168,     0,     0,     0,     0,   170,
@@ -10915,7 +11055,7 @@ static const yytype_int16 yytable[] =
        0,     0,   233,     0,     0,     0,     0,     0,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,     0,     0,     0,   244,
-     245,   246,     0,  -355,     0,   247,     0,  -355,   249,     0,
+     245,   246,     0,     0,     0,   247,     0,  -360,   249,     0,
      250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
      258,   259,     0,     0,     0,     0,   262,   263,   264,   265,
        0,     0,   266,   267,   927,   268,   269,   270,     0,     0,
@@ -10962,7 +11102,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   511,     0,     0,   512,     0,     0,
        0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
-     522,   523,   524,  -355,     0,    60,     0,     0,     0,   525,
+     522,   523,   524,     0,     0,    60,     0,     0,     0,   525,
        0,     0,   527,     0,   529,     0,   160,   530,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
      168,     0,     0,     0,     0,   170,   171,   172,   173,   174,
@@ -10979,7 +11119,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   235,     0,   236,     0,     0,     0,
        0,   237,     0,   238,   239,   240,   241,   242,     0,     0,
        0,     0,     0,     0,     0,   244,   245,   246,     0,     0,
-       0,   247,     0,  1442,   249,     0,   250,   251,   252,     0,
+       0,   247,     0,  3162,   249,     0,   250,   251,   252,     0,
      253,   254,     0,   255,   256,   257,   258,   259,     0,     0,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
      927,   268,   269,   270,     0,     0,     0,     0,     0,     0,
@@ -11042,7 +11182,7 @@ static const yytype_int16 yytable[] =
        0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
      235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
      239,   240,   241,   242,     0,     0,     0,     0,     0,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,  -360,
+       0,   244,   245,   246,     0,     0,     0,   247,     0,  3309,
      249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
      256,   257,   258,   259,     0,     0,     0,     0,   262,   263,
      264,   265,     0,     0,   266,   267,   927,   268,   269,   270,
@@ -11106,7 +11246,7 @@ static const yytype_int16 yytable[] =
      233,     0,     0,     0,     0,     0,   235,     0,   236,     0,
        0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
        0,     0,     0,     0,     0,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,  3162,   249,     0,   250,   251,
+       0,     0,     0,   247,     0,  -342,   249,     0,   250,   251,
      252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
        0,     0,     0,     0,   262,   263,   264,   265,     0,     0,
      266,   267,   927,   268,   269,   270,     0,     0,     0,     0,
@@ -11170,7 +11310,7 @@ static const yytype_int16 yytable[] =
        0,     0,   235,     0,   236,     0,     0,     0,     0,   237,
        0,   238,   239,   240,   241,   242,     0,     0,     0,     0,
        0,     0,     0,   244,   245,   246,     0,     0,     0,   247,
-       0,  3309,   249,     0,   250,   251,   252,     0,   253,   254,
+       0,     0,   249,     0,   250,   251,   252,     0,   253,   254,
        0,   255,   256,   257,   258,   259,     0,     0,     0,     0,
      262,   263,   264,   265,     0,     0,   266,   267,   927,   268,
      269,   270,     0,     0,     0,     0,     0,     0,     0,   273,
@@ -11233,7 +11373,7 @@ static const yytype_int16 yytable[] =
        0,     0,   233,     0,     0,     0,     0,     0,   235,     0,
      236,     0,     0,     0,     0,   237,     0,   238,   239,   240,
      241,   242,     0,     0,     0,     0,     0,     0,     0,   244,
-     245,   246,     0,     0,     0,   247,     0,  -342,   249,     0,
+     245,   246,     0,     0,     0,   247,     0,     0,   249,     0,
      250,   251,   252,     0,   253,   254,     0,   255,   256,   257,
      258,   259,     0,     0,     0,     0,   262,   263,   264,   265,
        0,     0,   266,   267,   927,   268,   269,   270,     0,     0,
@@ -11277,18 +11417,18 @@ static const yytype_int16 yytable[] =
        0,   492,   493,     0,   494,   495,   496,   497,     0,     0,
        0,     0,     0,   498,   499,   500,     0,     0,     0,     0,
      502,   503,   504,     0,   505,   506,     0,   507,   508,     0,
-       0,     0,     0,     0,   511,     0,     0,   512,     0,     0,
+       0,     0,     0,     0,   511,     0,     0,  1469,     0,     0,
        0,   514,   515,     0,     0,     0,     0,     0,     0,   516,
        0,     0,   517,     0,     0,     0,   518,   519,   520,   521,
      522,   523,   524,     0,     0,    60,     0,     0,     0,   525,
        0,     0,   527,     0,   529,     0,   160,   530,   161,   162,
      163,   164,   165,   166,     0,     0,   167,     0,     0,     0,
      168,     0,     0,     0,     0,   170,   171,   172,   173,   174,
-     175,   176,   177,     0,     0,   925,     0,     0,     0,   180,
+     175,   176,   177,     0,     0,     0,     0,     0,     0,   180,
        0,     0,     0,   181,     0,     0,   182,   183,   184,     0,
-     185,     0,     0,     0,     0,     0,   188,     7,     0,   189,
+     185,     0,     0,     0,     0,     0,   188,     0,     0,   189,
      190,     0,   191,     0,     0,     0,     0,     0,   195,   196,
-     197,   926,   199,   200,     0,   201,   202,     0,     0,     0,
+     197,     0,   199,   200,     0,   201,   202,     0,     0,     0,
        0,     0,     0,   208,     0,   210,     0,   212,   213,   214,
      215,     0,   216,   217,     0,   218,   219,   220,     0,   222,
        0,   223,     0,     0,   224,     0,     0,   225,     0,   226,
@@ -11300,17 +11440,17 @@ static const yytype_int16 yytable[] =
        0,   247,     0,     0,   249,     0,   250,   251,   252,     0,
      253,   254,     0,   255,   256,   257,   258,   259,     0,     0,
        0,     0,   262,   263,   264,   265,     0,     0,   266,   267,
-     927,   268,   269,   270,     0,     0,     0,     0,     0,     0,
+       0,   268,   269,   270,     0,     0,     0,     0,     0,     0,
        0,   273,     0,   274,     0,   275,     0,   276,   277,   278,
      279,   280,     0,   282,     0,   283,     0,     0,     0,   285,
      286,     0,     0,     0,     0,     0,     0,   289,     0,     0,
-       0,   290,   291,   292,   293,   294,    26,     0,     0,   295,
+       0,   290,   291,   292,   293,   294,     0,     0,     0,   295,
      296,   297,     0,     0,   298,     0,     0,     0,     0,   299,
        0,     0,     0,     0,   301,     0,   302,   303,     0,   304,
-     305,   928,     0,     0,   306,     0,     0,     0,   308,   309,
-       0,     0,   310,   929,     0,   311,   312,     0,     0,     0,
+     305,     0,     0,     0,   306,     0,     0,     0,   308,   309,
+       0,     0,   310,     0,     0,   311,   312,     0,     0,     0,
        0,     0,   313,   314,     0,   315,     0,   316,     0,   317,
-     318,     0,     0,     0,     0,    32,     0,   319,   320,   321,
+     318,     0,     0,     0,     0,     0,     0,   319,   320,   321,
      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
      332,   333,   334,     0,   335,   336,   337,   338,     0,   339,
      340,   341,   342,     0,   343,   344,   345,     0,     0,     0,
@@ -11319,15 +11459,15 @@ static const yytype_int16 yytable[] =
      360,   361,   362,   363,   364,   365,     0,     0,   366,     0,
        0,   367,   368,   369,   370,     0,     0,     0,     0,   372,
        0,     0,     0,   373,     0,   374,   375,   376,     0,   377,
-     378,   379,   930,     0,     0,     0,     0,     0,     0,     0,
+     378,   379,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   384,   385,     0,     0,     0,
        0,   387,     0,   388,   389,   390,   391,   392,   393,   394,
      395,   396,     0,     0,     0,     0,   399,   400,     0,   401,
        0,   402,   403,   404,   405,   406,     0,   407,   408,   409,
        0,     0,   410,     0,     0,     0,   411,   412,   413,   414,
      415,     0,     0,   416,   417,   418,   419,   420,     0,   421,
-       0,     0,   423,     0,   425,    41,     0,   426,     0,     0,
-       0,   428,     0,     0,   430,   431,     0,   432,   931,   433,
+       0,     0,   423,     0,   425,     0,     0,   426,     0,     0,
+       0,   428,     0,     0,   430,   431,     0,   432,     0,   433,
        0,     0,   434,     0,   436,   437,   438,   439,   440,   441,
      442,     0,   444,   445,     0,   446,     0,     0,     0,     0,
      448,   449,   450,     0,     0,     0,     0,   452,     0,     0,
@@ -11344,135 +11484,8 @@ static const yytype_int16 yytable[] =
      511,     0,     0,   512,     0,     0,     0,   514,   515,     0,
        0,     0,     0,     0,     0,   516,     0,     0,   517,     0,
        0,     0,   518,   519,   520,   521,   522,   523,   524,     0,
-       0,    60,     0,     0,     0,   525,     0,     0,   527,     0,
-     529,     0,   160,   530,   161,   162,   163,   164,   165,   166,
-       0,     0,   167,     0,     0,     0,   168,     0,     0,     0,
-       0,   170,   171,   172,   173,   174,   175,   176,   177,     0,
-       0,   925,     0,     0,     0,   180,     0,     0,     0,   181,
-       0,     0,   182,   183,   184,     0,   185,     0,     0,     0,
-       0,     0,   188,     7,     0,   189,   190,     0,   191,     0,
-       0,     0,     0,     0,   195,   196,   197,   926,   199,   200,
-       0,   201,   202,     0,     0,     0,     0,     0,     0,   208,
-       0,   210,     0,   212,   213,   214,   215,     0,   216,   217,
-       0,   218,   219,   220,     0,   222,     0,   223,     0,     0,
-     224,     0,     0,   225,     0,   226,     0,     0,   227,     0,
-     228,     0,     0,     0,   229,   230,   231,     0,     0,   232,
-       0,     0,     0,     0,   233,     0,     0,     0,     0,     0,
-     235,     0,   236,     0,     0,     0,     0,   237,     0,   238,
-     239,   240,   241,   242,     0,     0,     0,     0,     0,     0,
-       0,   244,   245,   246,     0,     0,     0,   247,     0,     0,
-     249,     0,   250,   251,   252,     0,   253,   254,     0,   255,
-     256,   257,   258,   259,     0,     0,     0,     0,   262,   263,
-     264,   265,     0,     0,   266,   267,   927,   268,   269,   270,
-       0,     0,     0,     0,     0,     0,     0,   273,     0,   274,
-       0,   275,     0,   276,   277,   278,   279,   280,     0,   282,
-       0,   283,     0,     0,     0,   285,   286,     0,     0,     0,
-       0,     0,     0,   289,     0,     0,     0,   290,   291,   292,
-     293,   294,    26,     0,     0,   295,   296,   297,     0,     0,
-     298,     0,     0,     0,     0,   299,     0,     0,     0,     0,
-     301,     0,   302,   303,     0,   304,   305,   928,     0,     0,
-     306,     0,     0,     0,   308,   309,     0,     0,   310,   929,
-       0,   311,   312,     0,     0,     0,     0,     0,   313,   314,
-       0,   315,     0,   316,     0,   317,   318,     0,     0,     0,
-       0,    32,     0,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,   329,   330,   331,   332,   333,   334,     0,
-     335,   336,   337,   338,     0,   339,   340,   341,   342,     0,
-     343,   344,   345,     0,     0,     0,     0,   346,   347,   348,
-     349,   350,   351,     0,     0,   352,   353,     0,   354,     0,
-     355,     0,   356,   357,   358,   359,   360,   361,   362,   363,
-     364,   365,     0,     0,   366,     0,     0,   367,   368,   369,
-     370,     0,     0,     0,     0,   372,     0,     0,     0,   373,
-       0,   374,   375,   376,     0,   377,   378,   379,   930,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   384,   385,     0,     0,     0,     0,   387,     0,   388,
-     389,   390,   391,   392,   393,   394,   395,   396,     0,     0,
-       0,     0,   399,   400,     0,   401,     0,   402,   403,   404,
-     405,   406,     0,   407,   408,   409,     0,     0,   410,     0,
-       0,     0,   411,   412,   413,   414,   415,     0,     0,   416,
-     417,   418,   419,   420,     0,   421,     0,     0,   423,     0,
-     425,    41,     0,   426,     0,     0,     0,   428,     0,     0,
-     430,   431,     0,   432,   931,   433,     0,     0,   434,     0,
-     436,   437,   438,   439,   440,   441,   442,     0,   444,   445,
-       0,   446,     0,     0,     0,     0,   448,   449,   450,     0,
-       0,     0,     0,   452,     0,     0,     0,     0,     0,     0,
-     455,     0,     0,   458,   459,     0,   460,     0,   462,     0,
-     464,   465,     0,     0,     0,     0,     0,     0,   466,   467,
-       0,   468,     0,     0,   469,     0,     0,     0,   470,     0,
-     472,     0,     0,     0,   473,     0,     0,     0,   475,     0,
-     476,   477,   478,   479,   480,   481,     0,     0,   482,   483,
-     484,   485,     0,   486,   487,     0,     0,   488,   489,   490,
-     491,     0,     0,   492,   493,     0,   494,   495,   496,   497,
-       0,     0,     0,     0,     0,   498,   499,   500,     0,     0,
-       0,     0,   502,   503,   504,     0,   505,   506,     0,   507,
-     508,     0,     0,     0,     0,     0,   511,     0,     0,  1469,
-       0,     0,     0,   514,   515,     0,     0,     0,     0,     0,
-       0,   516,     0,     0,   517,     0,     0,     0,   518,   519,
-     520,   521,   522,   523,   524,     0,     0,    60,     0,     0,
-       0,   525,     0,     0,   527,     0,   529,     0,   160,   530,
-     161,   162,   163,   164,   165,   166,     0,     0,   167,     0,
-       0,     0,   168,     0,     0,     0,     0,   170,   171,   172,
-     173,   174,   175,   176,   177,     0,     0,     0,     0,     0,
-       0,   180,     0,     0,     0,   181,     0,     0,   182,   183,
-     184,     0,   185,     0,     0,     0,     0,     0,   188,     0,
-       0,   189,   190,     0,   191,     0,     0,     0,     0,     0,
-     195,   196,   197,     0,   199,   200,     0,   201,   202,     0,
-       0,     0,     0,     0,     0,   208,     0,   210,     0,   212,
-     213,   214,   215,     0,   216,   217,     0,   218,   219,   220,
-       0,   222,     0,   223,     0,     0,   224,     0,     0,   225,
-       0,   226,     0,     0,   227,     0,   228,     0,     0,     0,
-     229,   230,   231,     0,     0,   232,     0,     0,     0,     0,
-     233,     0,     0,     0,     0,     0,   235,     0,   236,     0,
-       0,     0,     0,   237,     0,   238,   239,   240,   241,   242,
-       0,     0,     0,     0,     0,     0,     0,   244,   245,   246,
-       0,     0,     0,   247,     0,     0,   249,     0,   250,   251,
-     252,     0,   253,   254,     0,   255,   256,   257,   258,   259,
-       0,     0,     0,     0,   262,   263,   264,   265,     0,     0,
-     266,   267,     0,   268,   269,   270,     0,     0,     0,     0,
-       0,     0,     0,   273,     0,   274,     0,   275,     0,   276,
-     277,   278,   279,   280,     0,   282,     0,   283,     0,     0,
-       0,   285,   286,     0,     0,     0,     0,     0,     0,   289,
-       0,     0,     0,   290,   291,   292,   293,   294,     0,     0,
-       0,   295,   296,   297,     0,     0,   298,     0,     0,     0,
-       0,   299,     0,     0,     0,     0,   301,     0,   302,   303,
-       0,   304,   305,     0,     0,     0,   306,     0,     0,     0,
-     308,   309,     0,     0,   310,     0,     0,   311,   312,     0,
-       0,     0,     0,     0,   313,   314,     0,   315,     0,   316,
-       0,   317,   318,     0,     0,     0,     0,     0,     0,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
-     330,   331,   332,   333,   334,     0,   335,   336,   337,   338,
-       0,   339,   340,   341,   342,     0,   343,   344,   345,     0,
-       0,     0,     0,   346,   347,   348,   349,   350,   351,     0,
-       0,   352,   353,     0,   354,     0,   355,     0,   356,   357,
-     358,   359,   360,   361,   362,   363,   364,   365,     0,     0,
-     366,     0,     0,   367,   368,   369,   370,     0,     0,     0,
-       0,   372,     0,     0,     0,   373,     0,   374,   375,   376,
-       0,   377,   378,   379,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   384,   385,     0,
-       0,     0,     0,   387,     0,   388,   389,   390,   391,   392,
-     393,   394,   395,   396,     0,     0,     0,     0,   399,   400,
-       0,   401,     0,   402,   403,   404,   405,   406,     0,   407,
-     408,   409,     0,     0,   410,     0,     0,     0,   411,   412,
-     413,   414,   415,     0,     0,   416,   417,   418,   419,   420,
-       0,   421,     0,     0,   423,     0,   425,     0,     0,   426,
-       0,     0,     0,   428,     0,     0,   430,   431,     0,   432,
-       0,   433,     0,     0,   434,     0,   436,   437,   438,   439,
-     440,   441,   442,     0,   444,   445,     0,   446,     0,     0,
-       0,     0,   448,   449,   450,     0,     0,     0,     0,   452,
-       0,     0,     0,     0,     0,     0,   455,     0,     0,   458,
-     459,     0,   460,     0,   462,     0,   464,   465,     0,     0,
-       0,     0,     0,     0,   466,   467,     0,   468,     0,     0,
-     469,     0,     0,     0,   470,     0,   472,     0,     0,     0,
-     473,     0,     0,     0,   475,     0,   476,   477,   478,   479,
-     480,   481,     0,     0,   482,   483,   484,   485,     0,   486,
-     487,     0,     0,   488,   489,   490,   491,     0,     0,   492,
-     493,     0,   494,   495,   496,   497,     0,     0,     0,     0,
-       0,   498,   499,   500,     0,     0,     0,     0,   502,   503,
-     504,     0,   505,   506,     0,   507,   508,     0,     0,     0,
-       0,     0,   511,     0,     0,   512,     0,     0,     0,   514,
-     515,     0,     0,     0,     0,     0,     0,   516,     0,     0,
-     517,     0,     0,     0,   518,   519,   520,   521,   522,   523,
-     524,     0,     0,     0,     0,     0,     0,   525,     0,     0,
-     527,     0,   529,     0,     0,   530
+       0,     0,     0,     0,     0,   525,     0,     0,   527,     0,
+     529,     0,     0,   530
 };
 
 static const yytype_int16 yycheck[] =
@@ -11486,502 +11499,502 @@ static const yytype_int16 yycheck[] =
     1288,   550,   551,   768,  1382,   554,   555,   556,   583,  2366,
      559,   560,   561,  2791,  3075,   928,   929,  1711,   593,  2736,
     2719,  2378,   720,  1122,   567,  1310,   567,  3295,  1354,  2859,
-    3249,  2748,  2749,  1318,   109,  1646,   865,  2507,  1122,  2974,
+    2507,  2748,  2749,  1318,   109,  1646,   865,  3089,  1122,  2974,
     1319,  1320,  3581,   109,  1323,  1324,  1325,  1326,  1623,  1328,
-    1329,  1330,  1331,  1332,  1333,  1334,  1335,   961,   601,  3089,
-     601,  1225,   702,  1453,  1079,   705,  1688,  1433,  2266,   135,
+    1329,  1330,  1331,  1332,  1333,  1334,  1335,   961,   601,   702,
+     601,  1225,   705,  1453,  3116,  1433,  1688,  1079,  2065,   135,
     2266,   137,  2468,   139,   140,   141,   613,  1971,  2268,   616,
-    1579,  2065,  1678,  2903,  2379,   146,  3116,  3118,  2342,  2757,
-    2725,   157,   151,   151,  2116,   151,   151,   137,  2699,   139,
-    1599,  3861,  3543,    18,  2900,  2901,  2342,  3448,  1607,  1608,
-    2906,  2634,  2908,  3108,  3447,    13,  1738,    17,    18,  3560,
-    2643,    20,  3250,    13,    17,    18,   824,   825,   826,  1035,
-    2759,    17,    18,    54,  2763,    20,  3373,    20,   836,  1154,
-      21,  1194,  1195,  1196,  2342,  2774,  2342,  3381,    27,  2866,
-    2867,    75,  1061,   132,  1060,  3720,  3914,  2786,  1211,    13,
-      63,    31,   116,   132,    37,    18,    83,  2748,  2749,    39,
-      17,    18,    20,    20,    33,    66,    17,    18,    17,    18,
-     201,    27,  1108,  1109,   183,   164,    66,   152,   132,  2332,
-     130,  1244,    17,    18,  1247,   164,    83,    69,    17,    18,
-     326,  2105,    17,    18,    22,  2079,   118,   111,  3620,   196,
-      54,    39,    13,  2873,   277,  1268,  1269,  3225,    73,  1272,
-     164,  2464,    35,    17,    18,  3666,  1152,    34,    17,    18,
-      39,  3662,    17,    18,   204,    37,  1289,  1290,    17,    18,
-      46,    22,    73,   278,    62,    63,   371,   288,  4145,   164,
-     237,  2258,   387,   212,   381,    59,    37,   138,    22,  3218,
-    4354,  2248,    17,    18,  3646,   164,   132,   375,   471,  3228,
-      51,   201,   405,    37,   258,   261,    17,    18,     9,    89,
-     150,    62,    63,    17,    18,  2866,  2867,    51,    17,    18,
-     404,    67,   201,    17,    18,   218,    61,    84,    62,    63,
-      17,    18,   237,   402,   280,   708,   197,    50,   201,   376,
-     457,   486,   252,   846,    12,   201,    13,   172,  3857,   368,
-     869,   251,   278,  2978,    12,   284,  3357,    22,   278,   241,
-      83,   164,   408,   437,   133,   565,   408,   404,   565,    17,
-      18,   284,    37,    17,    18,   232,   158,   234,   389,    13,
-     201,   446,   387,   928,   929,   597,    51,   932,   432,    17,
-      18,    21,  1688,  2681,   243,   530,  2752,    62,    63,  3062,
-      17,    18,  1136,  1137,   781,    37,   263,   144,   136,   453,
-     556,    62,    63,   559,   585,    90,   313,    72,   556,   964,
-     657,   559,    73,   160,   222,   223,   803,   243,   665,   564,
-     567,    63,  4160,   254,   237,   572,  4166,   112,   183,   816,
-     817,    75,  1738,   222,   223,   489,   658,   151,   183,  1183,
-      21,  3114,   187,   634,    72,   136,   369,   657,   275,   428,
-     657,   387,   527,   198,   601,   133,   512,   387,   613,   614,
-     512,   254,   321,   976,  3099,   380,   622,   295,   432,   419,
-     147,   565,   361,  1357,   253,    17,    18,   387,   861,  1224,
-     191,  1626,   665,   367,   277,  1111,  1525,  1113,  1114,  1115,
-    1116,   198,  3068,  2060,  1239,   321,   170,   463,   138,   232,
-     546,   234,   657,   259,  1543,   295,   386,   294,   592,   389,
-     623,   557,   164,   386,   434,   198,   389,  1401,   565,   475,
-     386,   567,   568,   389,   370,  3936,   572,   537,  2640,   575,
-     263,   313,   659,   680,   153,  3927,   557,  1054,  3930,  3931,
-    3187,  1350,   368,   589,   659,   650,   417,  2845,  1166,   494,
-     590,   657,   491,   388,  1174,   601,   247,   138,   665,   386,
-     198,   462,   389,   609,   164,   386,   576,   386,   389,   355,
-     389,   659,    87,   619,  2752,  3550,  2752,   388,   657,  3554,
-     440,  2114,   597,   367,   196,   330,   629,   386,  4662,  4108,
-     389,   386,  3954,   639,   389,   624,    17,    18,  3295,  1678,
-    3182,    17,    18,   613,   432,  3520,   616,   468,   511,   559,
-     620,  1166,   386,  1497,  1678,   389,   662,   386,   664,   287,
-     389,   386,   506,   543,   389,   237,   278,   386,   607,  3617,
-     389,  3082,  3083,  3084,   680,  1941,   691,  1382,   462,  2873,
-    2810,   608,   455,  3558,  1322,   691,  2248,   693,   441,  1201,
-    1202,   386,   504,  1537,   389,  3352,   702,  2873,   659,   705,
-    1919,  1339,   708,  2065,  2266,   386,   183,   454,   389,   715,
-     504,  1930,   386,   428,  1933,   389,  1228,   386,   278,    70,
-     389,  3620,   386,   428,  1236,   389,  1238,  1573,   622,   386,
-    1576,   541,   389,  3632,  1580,  2873,  1582,  2873,  1250,  1251,
-    1252,   598,    11,  2557,   663,  2694,  1258,  2065,  2187,  3648,
-    3649,   576,   562,  3353,   663,   541,  1605,   864,  4139,  1752,
-      17,    18,   768,   504,  1610,  1611,  1612,   598,   386,  1724,
-    2332,   389,   386,   616,   584,   389,   631,   576,  1358,   663,
-    2342,  4162,  1409,   576,   578,  2868,   609,   639,   386,  2633,
-    4627,   389,  2975,   657,    17,    18,  1718,   565,   659,   386,
-     640,  1667,   389,  2750,   631,  3979,   645,   640,   663,  1913,
-    2737,   621,    17,    18,   640,  3533,   565,    17,    18,   657,
-     645,  4173,   662,   829,   663,   831,   659,   657,   609,   650,
-     546,  3352,   658,   835,  2349,  4012,  4341,   595,   624,  4537,
-     659,  4539,  4540,  2040,   657,  1838,  4127,  4120,   636,  1842,
-     856,   857,   858,   640,   860,   861,   862,   645,   864,   640,
-     866,   640,   589,   863,  1498,  4138,   872,   867,  1448,  1352,
-    3938,  1498,   659,  1866,   595,   640,   628,   857,   659,   658,
-     659,   640,   862,   630,   386,   640,   866,   389,  1468,  3215,
-     663,   595,    75,   586,    17,    18,  4277,  1374,   619,   658,
-     659,    17,    18,   909,   659,   603,   640,   486,  1015,   924,
-    1017,   640,   537,  1020,  1021,   640,   609,  3887,   924,  1688,
-     926,   640,  2556,   925,   930,   659,  2645,   468,  3899,  1036,
-     659,  2458,  2995,   658,   659,   204,   657,  2886,   621,  2888,
-     659,  3876,  3877,  1577,   659,   640,   136,   962,   631,   537,
-    1577,   428,   603,   968,   659,   961,   962,  4655,  4656,   640,
-     595,  4659,   968,   658,   659,  3540,   640,  1108,  1109,  1738,
-    1117,   640,  3230,  1559,    54,  2526,   640,   658,   659,  4679,
-     615,   616,  2248,   640,  3526,   955,  3049,   198,   631,   658,
-     659,   625,   659,  3529,   658,   659,    17,    18,  3256,  3257,
-    3607,  1478,   659,  1009,   295,   386,   481,  3767,   389,  1015,
-     386,  1017,   277,   389,  1020,  1021,  4135,   629,   154,  1646,
-      17,    18,   640,   237,  2973,   204,   640,    67,  3927,  3765,
-    1036,  3930,  3931,   379,  3106,  3107,   608,  3578,  3774,  4628,
-     658,   659,   640,  3942,  1527,   659,  1527,  4747,   377,    17,
-      18,   663,  4750,   640,    17,    18,    49,   247,    17,    18,
-     658,   871,  1648,  1649,  3285,   161,  2332,  3642,  3285,   629,
-     432,   658,   659,  1079,  1660,   171,  2342,  3215,   657,  3215,
-    1682,   432,   661,   204,  1054,   377,  1056,  3550,  3696,    17,
-      18,  3554,    91,   258,    17,    18,   377,   254,  1104,  4069,
-      27,  1103,    24,   663,   332,  1105,  1106,  3940,   401,  1110,
-     202,   148,  1118,  1699,   226,  2774,  4087,   274,  1117,  1117,
-     486,  1117,  1117,  2122,   134,  3536,   466,  1142,  3697,   386,
-     607,  1836,   389,    17,    18,  3948,  1142,   377,   640,   199,
-     119,   432,  4523,   122,   379,  1151,    17,    18,  1154,  3384,
-     419,    17,    18,   963,  3078,  3285,   449,   659,  2629,  3353,
-    2631,  2632,  1645,   386,  2631,  2632,   389,  2182,  1174,  1184,
-    2014,  1151,  2708,  2212,  3136,  2737,  2703,  3353,  1184,   133,
-    3014,   386,   659,   241,   389,  2404,   386,   486,  2212,   389,
-    2752,   186,   377,  2208,  1301,    17,    18,  4030,   372,   377,
-    2351,  3961,  3962,  1718,  2048,  2049,    27,  4588,  3968,  3545,
-     355,  3971,  3972,  4692,  4055,  3353,  2743,  3353,  1224,   259,
-      17,    18,    17,    18,   284,  3436,   219,  3963,  3988,  3440,
-    3966,  1338,   377,  1239,    17,    18,    17,    18,   421,   166,
-     419,   455,  4002,  2573,  4833,  1352,  4006,  4007,  4008,  4009,
-    4010,    17,    18,   175,  2479,   391,  2695,   526,  2564,   640,
-    3996,  3997,  3998,   386,   640,   455,   389,   432,  4004,   631,
-     386,  2485,  2486,   389,  4173,  4011,  1383,  4144,   659,   495,
-      17,    18,  1288,   659,   495,   295,  4153,   367,   377,   385,
-     636,   657,   129,   146,  1932,  1301,   486,   289,   419,   253,
-     565,    17,    18,    13,   478,    13,  2868,   344,   400,   369,
-    1312,  2873,   581,    17,    18,  2842,   243,   486,  2273,   486,
-    2847,    17,    18,   363,   232,   665,   234,  2173,  2855,  2856,
-     659,    55,  1338,  3232,  2861,   563,   108,  1343,  2594,   166,
-    2186,   657,    66,  2189,  2190,   636,  1352,  3246,  3247,  1456,
-    2569,  1357,  1358,   622,    17,    18,   193,   349,   657,  3258,
-    2065,  4569,   590,   495,   629,   386,   659,   659,   389,   243,
-    2885,  4184,  1952,   556,  2478,   370,  1382,  1383,   659,  4498,
-     559,  4500,   462,   640,  2488,   222,    17,    18,   129,   386,
-      17,    18,   389,  4234,   321,  1401,  4237,   580,  4606,  4607,
-    3034,   636,   659,  1409,  1374,   526,  1421,  3356,  1414,   480,
-    1416,   503,   219,   603,   494,  1421,   243,   640,   386,   659,
-    1527,   389,   243,   386,  4903,   537,   389,   386,   427,   645,
-     389,  1437,    17,    18,   645,   640,   659,   147,  4646,   147,
-     640,   368,  1448,   186,   651,  2701,   129,    17,    18,   665,
-    1456,   658,  1422,   565,   659,   292,  1471,   264,   386,   659,
-     581,   389,  1468,   386,   609,  1471,   389,   657,   564,    17,
-      18,  2737,  2052,  2701,   659,  3026,  3027,  3028,   331,  2248,
-    4450,   659,    17,    18,  1961,   486,   479,   533,   657,   529,
-     657,  1497,  1498,   965,   368,  1501,   556,    17,    18,   559,
-     321,   622,   386,   559,  1510,   389,   546,  2145,  1478,  1650,
-     193,    17,    18,   645,  1520,   386,   224,   640,   389,   657,
-     386,  1527,  1528,   389,   640,  4295,    17,    18,    17,    18,
-    4531,  1537,  4525,  2548,   371,  3945,   659,  4176,  1645,  4178,
-     245,   368,   658,  1549,  1550,   537,   134,   565,  1563,   254,
-    1565,   292,  2136,  4712,  1560,  1561,  1562,  1563,  1564,  1565,
-     284,  1668,   486,  2332,   386,  3224,  3225,   389,  1574,  1575,
-     659,  1577,  4447,  2342,   367,  1581,    17,    18,  1685,   237,
-    1560,  1561,  1562,  2066,  1564,  2066,    46,  1602,   583,   386,
+    2342,  1579,  1678,  2903,  2379,   146,  2116,  3118,  2266,  2757,
+    2725,   157,   151,   151,  3543,   151,   151,   137,  2759,   139,
+    2699,  1599,  2763,  2342,    13,  3861,  2900,  2901,  3447,  1607,
+    1608,  3560,  2906,  2774,  2908,  2634,  1738,  3108,  3448,    20,
+    3218,    18,  3250,    13,  2643,  2786,   824,   825,   826,  1035,
+    3228,    17,    18,  3914,    17,    18,  3373,    54,   836,    17,
+      18,    21,  1154,    17,    18,    75,  2342,  3620,    20,  2866,
+    2867,    18,    50,    22,  1060,    37,  4145,    17,    18,    22,
+      20,    31,    20,  3720,  2342,  2105,  2873,  2748,  2749,    39,
+    1194,  1195,  1196,  1061,    37,   118,    33,    39,    63,  2248,
+    1108,  1109,   116,  2258,    21,  2332,   136,  1211,    51,    34,
+      67,    91,    83,    62,    63,  3381,    17,    18,  3068,    62,
+      63,   198,    27,   201,    39,  2464,   196,    49,   132,   204,
+    3225,    27,  4135,   158,    87,    17,    18,  3666,    66,    70,
+    1244,   204,   243,  1247,  1152,   326,    73,    73,    17,    18,
+     277,    20,    17,    18,    37,   278,    59,   212,    17,    18,
+     164,  4354,   379,    84,  1268,  1269,    46,   237,  1272,    12,
+      17,    18,   381,   152,   218,   377,    13,   402,   138,   371,
+     201,   277,   375,   164,  3646,  1289,  1290,   164,  3948,   237,
+      66,  2681,   405,   261,  4628,    89,    17,    18,   457,   379,
+     150,   313,    83,    17,    18,  2866,  2867,    20,    17,    18,
+     471,    61,    22,    17,    18,   437,   376,   247,   241,   280,
+     846,   138,   237,   146,    13,   377,   132,    37,   495,   284,
+     251,     9,    17,    18,    13,    21,   408,    13,  3857,   132,
+     869,    51,    17,    18,   404,   172,  3357,   202,   965,    17,
+      18,   278,    62,    63,   367,   408,   372,    13,   164,    17,
+      18,   446,   502,    13,   387,   258,   537,   368,   586,   151,
+     166,   164,   530,   928,   929,    17,    18,   932,   597,  3062,
+     222,   223,  1688,   631,   136,   241,    17,    18,   632,   633,
+      55,    17,    18,    17,    18,   313,   631,   219,  2079,  4160,
+     241,    66,   259,   198,   585,     9,   564,   222,   223,   964,
+     634,   164,  3436,   661,   659,   427,  3440,   661,    17,    18,
+     567,   197,   667,   264,   198,   572,   661,    17,    18,    33,
+    4166,  3114,  1738,   183,   447,   275,   201,   187,   243,    72,
+     512,   660,   527,    72,   419,   170,   617,   243,   198,   667,
+     976,   232,   138,   234,   601,  2845,   419,  2752,   147,   512,
+     387,   601,   478,    17,    18,   380,   387,  1084,   147,   294,
+     592,   147,   164,  1357,  3927,    17,    18,  3930,  3931,  1224,
+     647,  1626,   263,    69,   237,  1111,  1525,  1113,  1114,  1115,
+    1116,   147,   504,  2060,  1239,   463,  3082,  3083,  3084,  4833,
+     546,   295,   661,   643,  1543,   565,   667,   455,   331,    54,
+     623,   557,  3187,   191,   475,    75,   321,  1401,   495,   636,
+     386,   567,   568,   389,  4184,   321,   572,   537,   386,   575,
+     313,   389,   386,   680,   659,   389,   491,  1054,   565,   432,
+     541,  1350,  3620,   589,   287,   400,   386,   427,  1166,   389,
+     590,  1174,    17,    18,  3632,   601,   636,   153,   667,   661,
+     652,   388,   388,   609,   367,   462,   576,   511,   661,  4662,
+    3648,  3649,   368,   619,   597,   355,  2752,   201,   659,  3550,
+     330,  2114,   295,  3554,   559,   386,   278,  2640,   389,  4108,
+      17,    18,  3954,   639,  2752,  4498,   559,  4500,  3295,  1678,
+    3182,   432,   629,   613,   386,  3520,   616,   389,   468,   661,
+     620,  1166,   440,  1497,  1678,   494,   662,   386,   664,   284,
+     389,   386,  3617,   624,   389,    17,    18,   386,   481,   454,
+     389,  2873,   183,   629,   680,  1941,   691,  1382,   608,   386,
+    2810,   417,   389,  3558,  1322,   691,  2248,   693,   503,  1201,
+    1202,   468,    22,  1537,  2873,  3352,   702,   479,  4627,   705,
+    1919,  1339,   708,  2065,  2266,   386,  3353,    37,   389,   715,
+     647,  1930,   386,   603,  1933,   389,  1228,   386,   428,  3529,
+     389,    51,   386,   661,  1236,   389,  1238,  1573,  2737,   546,
+    1576,   541,    62,    63,  1580,  2750,  1582,  2873,  1250,  1251,
+    1252,   386,   455,   628,   389,  2694,  1258,  2065,   622,  2187,
+    4139,   386,   562,  2633,   389,  2873,   639,   864,   386,   432,
+    4173,   389,   768,   565,  1610,  1611,  1612,   598,   386,   576,
+    2332,   389,  1724,  4162,   584,  1358,  2975,  1605,   576,   576,
+    2342,  2868,  1409,   621,   386,   541,   595,   389,  1752,   659,
+     565,   616,   595,   631,   631,   386,  1718,   609,   389,  1667,
+     386,   665,   386,   389,   661,   389,   647,   504,   589,  1913,
+     659,   621,    17,    18,   640,  3533,  4537,   640,  4539,  4540,
+      17,    18,   640,   829,   665,   831,   640,   386,   665,   659,
+     389,  3352,   652,   835,  2349,  4012,   386,   659,   664,   389,
+     640,  4120,   660,  2040,  4341,   630,   660,   661,   609,   647,
+     856,   857,   858,  3979,   860,   861,   862,  4127,   864,  4138,
+     866,   661,   598,   863,  1498,  1448,   872,   867,   624,  1352,
+    3938,  1498,   386,   148,  1838,   389,   631,   857,  1842,   640,
+    3230,   578,   862,    27,   386,  1468,   866,   389,  4277,  3927,
+     631,   603,  3930,  3931,   504,  3887,   661,  1374,   640,   665,
+     661,   421,  1866,   909,  3942,   661,  3256,  3257,  1015,   924,
+    1017,   640,   665,  1020,  1021,   640,  2557,   428,   924,  1688,
+     926,   640,  2556,   925,   930,   595,  2645,   661,  3899,  1036,
+     486,  2458,  2995,   640,  4655,  4656,   661,  2886,  4659,  2888,
+     625,   660,   661,  1577,   537,  3876,  3877,   962,   537,   619,
+    1577,   661,   665,   968,   661,   961,   962,   462,   504,   640,
+    3215,   386,   968,   636,   389,  3540,   640,  1108,  1109,  1738,
+    1117,   640,  3607,  1559,   647,  2526,   640,   629,   226,   660,
+     661,   466,  2248,  4679,  3526,   955,  3049,   661,    54,   659,
+    3536,   660,   661,    17,    18,   640,   660,   661,     6,   386,
+     295,  1478,   389,  1009,    11,   640,   132,  3767,   130,  1015,
+     183,  1017,   640,   665,  1020,  1021,   661,   387,   134,  1646,
+      17,    18,   640,    20,  2973,   660,   661,    67,   164,  4750,
+    1036,  3765,   660,   661,   386,    12,   556,   389,   640,  3578,
+    3774,   111,   660,   661,  1527,   708,  1527,    17,    18,   640,
+    3662,  4747,    60,   288,   640,   377,   640,   108,   660,   661,
+     580,   871,  1648,  1649,  3285,   404,  2332,  3642,  3285,   344,
+     661,   154,   377,  1079,  1660,   661,  2342,  4069,   659,  3215,
+    1682,   640,    17,    18,  1054,   401,  1056,   377,  3696,   377,
+     640,  3550,   480,  3106,  3107,  3554,  3697,  3215,  1104,   243,
+     432,  1103,   661,   659,   533,  1105,  1106,   663,   183,  1110,
+      83,   661,  1118,  1699,  4055,  2774,  4087,    24,  1117,  1117,
+     559,  1117,  1117,  2122,   258,   377,   640,  1142,    17,    18,
+     252,  1836,   659,   449,  4523,  4173,  1142,   432,   640,    27,
+     119,  3078,   278,   122,   152,  1151,   289,   661,  1154,  3384,
+     661,  3353,   486,   963,   389,  3285,   133,   368,  2629,   661,
+    2631,  2632,  1645,   129,  2631,  2632,  3136,  2182,  1174,  1184,
+    2014,  1151,  2708,  2212,  3353,  2737,  2703,   321,  1184,   295,
+    3014,   386,   667,  4665,   389,  2404,   332,    83,  2212,   386,
+    2752,   136,   389,  2208,  1301,    17,    18,   204,   861,  4588,
+    2351,  3961,  3962,  1718,  2048,  2049,   349,    13,  3968,  3545,
+     486,  3971,  3972,  4692,   134,   640,  2743,  3353,  1224,   259,
+      17,    18,    17,    18,   368,   201,   565,   193,  3988,  3963,
+     166,  1338,  3966,  1239,   196,  3353,   661,    17,    18,    17,
+      18,   486,  4002,  2573,   370,  1352,  4006,  4007,  4008,  4009,
+    4010,    17,    18,   640,  2479,   428,  2564,  2695,   133,   232,
+       0,   234,  3996,  3997,  3998,   595,    17,    18,   175,    75,
+    4004,  2485,  2486,   631,   661,   237,  1383,  4011,    17,    18,
+      17,    18,  1288,   186,   486,   615,   616,   292,   640,   537,
+     263,   661,    13,  4234,  1932,  1301,  4237,   367,   432,   631,
+     164,   367,   247,   661,   224,    35,  2868,   243,   391,   661,
+    1312,  2873,   434,    17,    18,  2842,  3232,   565,    17,    18,
+    2847,  2273,   557,   363,  3936,   659,   292,  2173,  2855,  2856,
+    3246,  3247,  1338,   186,  2861,   237,   115,  1343,  2594,   661,
+    2186,   636,  3258,  2189,  2190,   661,  1352,   243,   136,  1456,
+    2569,  1357,  1358,   428,   245,   243,   661,   365,  4840,  4841,
+    2065,  4569,   386,   254,    44,   389,   371,   136,   495,  1952,
+    2885,   661,    52,   661,  2478,   295,  1382,  1383,   253,   654,
+     655,   656,   657,   659,  2488,   361,    17,    18,   129,   386,
+      17,    18,   389,   295,   537,  1401,   462,   541,  4606,  4607,
+    3034,    17,    18,  1409,  1374,   371,  1421,  3356,  1414,   661,
+    1416,   284,   419,   624,   659,  1421,   386,   563,   663,   389,
+    1527,   543,   414,   431,  4903,   433,   147,   647,   494,    17,
+      18,  1437,   368,   321,   607,   640,   506,   161,  4646,    17,
+      18,   129,  1448,   640,   590,  2701,   225,   171,    17,    18,
+    1456,   386,  1422,   278,   389,   660,  1471,   659,  4450,   247,
+      17,    18,  1468,   647,   661,  1471,   362,   370,   486,  2052,
+    4525,  2737,   368,  2701,   174,  3026,  3027,  3028,   247,  2248,
+     624,   129,    17,    18,  1961,   740,   741,    17,    18,   529,
+     586,  1497,  1498,   629,   198,  1501,   369,   386,    17,    18,
+     389,   392,   201,   224,  1510,   193,   546,  2145,  1478,  1650,
+     455,   364,   365,   609,  1520,    17,    18,   370,   215,   526,
+     647,  1527,  1528,    37,   254,  4295,   428,   486,  3945,   665,
+    4531,  1537,   607,  2548,   222,  2978,   129,  4176,  1645,  4178,
+     667,   486,   438,  1549,  1550,   193,   133,   277,  1563,    63,
+    1565,   292,  2136,   565,  1560,  1561,  1562,  1563,  1564,  1565,
+     815,  1668,   387,  2332,   386,  3224,  3225,   389,  1574,  1575,
+    3940,  1577,  4447,  2342,   581,  1581,    17,    18,  1685,  4634,
+    1560,  1561,  1562,  2066,  1564,  2066,   661,  1602,   647,   386,
      569,   386,   389,   572,   389,  1575,  1602,   637,  4368,  4369,
-    1707,  1581,  2868,   386,   599,   386,   389,  2873,   389,   292,
-    1580,   313,  1084,   129,   541,   652,   653,   654,   655,   640,
-     386,   364,   365,   389,  3095,   537,  2204,   370,  4170,  2215,
-     371,  3580,   191,  2219,  2220,   129,   224,   295,   659,  1645,
-    1646,  4634,     0,   640,    13,   568,   664,   129,   241,   386,
-     495,  4665,   389,  3215,   447,  4373,   657,  1672,   414,  2503,
-     661,   658,  1668,  1669,  1670,  1671,  1672,   541,  2865,  2708,
-     386,   264,   640,   389,  1380,  2674,   215,   640,   164,  1685,
-     645,   640,   386,   279,  2708,   389,   282,   392,   371,  2204,
-     386,   659,    13,   389,  1709,   155,   659,   624,   645,   193,
-     659,  1707,  1708,  1709,  3231,   617,  3233,   295,   267,    17,
-      18,   193,   640,  3240,   541,   215,  3078,   640,  1724,   133,
-    4359,  1691,   261,   386,    45,   427,   389,  3254,   222,   586,
-     565,   659,   659,   657,  3261,  3262,  2887,  3112,   232,  1745,
-     234,  1747,    17,    18,   586,   631,  3645,  3274,  3275,  3276,
-     624,   588,   609,  3280,  3281,   386,   640,  4054,   389,   386,
-    3078,   565,   389,    17,    18,     9,  2991,   174,  2612,   640,
-     428,    17,    18,   659,   640,   659,   292,    98,   147,    13,
-    2702,    13,   103,   645,    17,    18,    17,    18,   659,    33,
-     245,  3353,   658,  3320,  3321,  3322,  1937,   624,   292,   254,
-     645,   386,   504,    25,   389,    17,    18,  3063,   367,  4351,
-     292,   502,   520,   521,  2658,   523,   386,   525,   640,   389,
-     665,   658,   657,   665,  2823,    27,  4840,  4841,    17,    18,
-    1836,  1837,   659,   429,   542,  3063,   665,   659,   386,  4697,
-     583,   389,  4700,   640,  2482,   640,  1953,   588,   387,  1555,
-    1556,   386,    17,    18,   389,   371,   599,   640,  3055,   640,
-     664,  3495,   659,  2375,   659,   628,   386,    13,  2380,   389,
-     609,   565,    17,    18,   640,    20,   659,   371,   659,   495,
-     386,    83,  2394,   389,    18,    17,    18,     6,   657,   371,
-     616,  1897,   658,   619,  2035,   386,   665,   386,   389,  2526,
-     389,   198,  2529,   640,   201,   588,   215,    17,    18,  2831,
-     601,   455,  4569,   147,  3441,   147,  2428,    17,    18,   658,
-     659,   658,    17,    18,   640,  1940,    17,    18,    17,    18,
-      17,    18,   235,  1939,  1940,   256,   640,   392,    17,    18,
-    3767,    60,   658,   136,   640,   386,  1952,  1953,   389,  4606,
-    4607,   586,   643,   658,   658,    17,    18,   495,  3617,  2066,
-    1966,   142,   658,  4821,   235,  1971,    17,    18,  2737,    13,
-    1976,  2549,   115,  1979,  2081,  1990,  1991,   640,  1993,  2613,
-      17,    18,   184,  2495,  1990,  1991,  2613,  1993,  2566,  4646,
-     287,  1961,   219,  4632,  4633,   658,  3282,    17,    18,    17,
-      18,   147,  2017,   546,  3260,   215,  2021,   129,  2014,   640,
-     331,  2017,  2119,   640,   557,  2021,   381,  2500,   292,  2500,
-      17,    18,   251,   198,    83,   556,  3312,   658,   559,   645,
-     665,   658,  3260,   152,  2549,  2050,  2051,   264,  3697,    17,
-      18,   243,  2048,  2049,  2050,  2051,  2052,    17,    18,   665,
-    2565,  2566,    17,    18,   247,   640,  2071,  2072,  2073,  2065,
-    2066,    17,    18,    17,    18,  2071,  2072,  2073,    17,    18,
-     640,   193,   588,   658,   395,  2081,  2046,  2679,   386,    50,
-    3573,   389,   225,   201,   740,   741,   609,  3353,   658,  2104,
-    2096,   622,   640,  3075,   588,  2679,   105,   371,  2104,  2868,
-     222,    17,    18,   147,  2873,   640,   588,   645,  2114,  3031,
-     658,   386,   287,  2119,   389,   614,    44,    17,    18,   321,
-     640,   632,   633,   658,    52,   364,   365,   665,   658,   659,
-    2136,    83,   386,  3148,   640,   389,   659,   494,   658,   505,
-     386,  3968,   665,   389,  3971,  3972,  3360,   295,   659,   640,
-    2156,   640,   658,   386,   556,   386,   389,   559,   389,   815,
-     362,  3988,  3161,    17,    18,   658,   368,   658,   631,   658,
-     292,  3546,  2172,  2188,   386,  3389,  3390,   389,   631,  4006,
-     224,  2151,  2188,  2153,   243,   651,   505,  2702,  3041,  3042,
-    3043,  3044,   658,   514,   658,   659,   659,   386,  3412,   640,
-     389,   486,   136,  4344,   606,   244,   659,  4348,    17,    18,
-     609,  2217,  2218,  3057,    81,  2221,   663,   658,   658,   659,
-     876,   386,   261,   201,   389,  1402,    17,    18,  1405,    20,
-     235,  1408,   553,  3430,   273,   244,    17,    18,  2218,    20,
-     492,   386,   658,   659,   389,   241,   365,    17,    18,   371,
-     393,   213,   261,   241,   386,   241,  2271,   389,  2836,  2366,
-     659,   404,   455,  2233,   273,  2271,   665,  2273,   411,   299,
-     300,  2378,  2242,  2243,  3530,    34,   386,  1071,   559,   389,
-     232,   665,   234,  1077,  1078,   315,   386,   627,   628,   389,
-     630,   386,   632,   486,   389,   386,   559,   386,   389,   386,
-     389,   201,   389,   362,    18,   658,   659,   386,  3154,   368,
-     389,   263,   431,   247,   433,   604,  2831,   658,   659,   658,
-     659,  2836,   526,  3579,   386,   174,    85,   389,    18,   659,
-     197,   657,   640,   658,   659,   386,   158,  2343,   389,   541,
-    2346,   658,   659,  3629,    20,     6,   355,   201,   576,   386,
-     658,  3579,   389,   162,   658,   659,   318,   319,    17,    18,
-    2366,   323,   324,   325,  2471,   640,   386,   510,   386,   389,
-     657,   389,  2378,  3078,   241,   658,   659,  3663,  4519,   438,
-     658,   659,   659,   658,   657,  4526,   640,   657,  3674,   386,
-     657,  3677,   389,  2500,   640,  2502,  3318,   264,    27,  3026,
-    3027,  3028,   657,   162,   658,  4468,   657,   640,   386,   640,
-     603,   389,   658,   179,   444,   445,   386,   658,   659,   389,
-      61,   386,   624,  4644,   389,   658,  4643,   658,   640,   105,
-     386,   470,   386,   389,   148,   389,   568,   386,   658,   659,
-     389,   657,  3639,   658,   659,   565,   658,   665,  3082,  3083,
-    3084,   640,   658,   659,    83,  3082,  3083,  3084,   148,   658,
-     659,   470,   657,   606,   657,  2471,   588,   657,  1124,   658,
-     386,   658,   659,   389,  2986,   640,   520,   521,   522,   523,
-     524,   525,   541,   657,  3086,   657,   386,   657,   164,   389,
-    2496,    62,    63,   658,  2500,   640,  2502,  2503,   542,   658,
-     659,   158,   159,   542,   658,   659,   658,   659,   640,   658,
-     659,  4038,   179,  4040,  2621,  4042,  3031,   568,   658,   659,
-    2526,   455,   198,  2529,  3523,   556,  3041,  3042,  3043,  3044,
-     640,  3165,   386,   542,   593,   389,   658,   166,  3165,   215,
-     640,   657,   183,   657,   220,   640,   187,  3562,   658,   640,
-     417,   640,   486,   640,   657,   184,   148,   198,   658,  4086,
-    3575,   640,  2568,   658,   657,   624,   541,   658,   244,   658,
-     418,   658,  4043,   657,    39,   251,  4043,   386,   640,   658,
-     389,   658,   659,   657,  3353,   261,   657,  4751,  2594,   640,
-     658,   659,  2598,   127,   657,   386,   658,   273,   389,  3750,
-    3856,   657,   278,   640,   657,   386,  2612,  2613,   389,   658,
-     659,   287,  4753,  4754,   243,  2621,   386,  2724,  2725,   389,
-     640,   658,   640,  2629,   657,  2631,  2632,   148,  3856,   474,
-     344,   658,   659,  3219,   658,   659,  3238,  3223,   658,  4803,
-     658,   657,  4806,   640,   657,    66,  2652,    12,  2654,   609,
-     658,   659,  2658,   662,   344,   414,   129,   122,   657,   132,
-      81,   658,   640,   657,   129,  4324,  4325,   658,   659,   603,
-     640,   474,    93,  2679,  4838,   640,   657,   436,   657,   355,
-    3785,   657,  2652,   657,   640,  2656,   640,   384,   658,   330,
-     657,   640,   321,   658,  3950,  2701,   230,   658,   659,   658,
-     659,   377,   658,   377,   658,  2711,  2721,  2722,   576,   658,
-    2716,   387,   557,   472,   657,  2721,  2722,   562,  2724,  2725,
-     193,   186,  3950,   657,   640,   658,   659,   657,   193,   377,
-    4793,   657,   129,   362,   657,   132,  2716,    35,   657,   368,
-     640,   659,   658,   419,   658,   659,   658,   659,  4467,   222,
-     115,   657,   344,    37,   657,  3244,   657,   222,   223,   657,
-     297,   606,   299,   300,   657,  4292,  4293,  4294,   133,  2739,
-    2740,  2741,  2742,   532,  2744,  2745,   197,   622,   315,    63,
-     658,   659,   203,   497,   498,   657,   640,   428,   658,   659,
-     162,    20,   658,   659,   470,   657,   193,  2803,   657,    28,
-     334,   658,   659,  3318,   338,  4019,   657,   497,   498,   174,
-     657,   345,  2818,   237,   658,   659,  4207,  4208,   494,   292,
-     241,  4183,   129,   344,  2830,   222,   657,   292,  2834,  4220,
-     657,   640,   657,  4331,   657,   119,  4227,   657,   122,   204,
-     657,  4904,   657,   264,    73,   657,   130,  4238,  4239,   640,
-     148,   658,   659,   657,    83,   657,  2997,   148,   115,   640,
-     658,   659,   657,    63,   657,   149,   542,   657,    83,   657,
-     640,   658,   659,  2843,  2844,   657,  2846,   657,  2848,  2849,
-    2850,  2851,  2852,  2853,  2854,   486,   193,  2857,  3400,   657,
-    2860,   356,   426,   494,  2864,   292,   658,   659,   371,  3043,
-    3044,   366,  3536,   132,   657,   370,   371,   444,   445,  3536,
-     658,   659,   541,   657,  3021,   222,   657,   174,  1991,   119,
-    1993,   597,   122,   288,   657,  3978,  3979,   658,   659,  3982,
-     130,   658,   659,   609,   648,   649,   650,   651,   652,   653,
-     654,   655,   657,  3455,   512,   658,   659,   204,  4001,   149,
-     484,   166,   657,   629,  4007,   631,   254,   657,   648,   649,
-     650,   651,   652,   653,   654,   655,   658,   659,   252,   645,
-    3572,   658,   659,   657,   371,   657,   497,   498,   207,   277,
-     401,  3088,   658,   659,   657,   292,   662,   663,  3572,   658,
-     659,   657,   168,   657,   194,   624,   417,   657,  2071,  2072,
-    2073,  3488,  3489,   232,    52,   234,   658,   659,  3014,   663,
-    3016,  4064,   613,   614,   658,  3021,   129,   666,  3033,  3025,
-    3026,  3027,  3028,   658,   659,   658,   659,  3033,   243,   205,
-     659,   658,   659,  3619,  3040,   264,  3622,  3623,   289,  4401,
-    1276,  1277,  3831,  3832,    52,   659,   344,   384,   377,   201,
-    3056,  3057,   252,   344,   419,   377,   657,  3063,   650,   651,
-     652,   653,   654,   655,   371,   480,   364,   365,   597,    50,
-     278,    66,  3078,   357,   129,   201,  3082,  3083,  3084,   652,
-     193,   257,  3088,  4302,   494,   665,    81,    17,    18,  3095,
-     173,  4589,   626,   269,   515,   657,   505,   198,    93,   537,
-     565,  4206,   556,   537,   569,   512,   289,   572,   642,   222,
-     198,   165,   659,  4640,  3120,   588,  4221,    92,   583,   659,
-     378,   552,   658,   588,   164,   132,   591,   492,   649,   650,
-     651,   652,   653,   654,   655,   364,   365,   664,   193,   118,
-     129,   370,  3249,   441,     6,   383,   117,   362,   377,   129,
-    3120,     4,   132,   368,   354,   485,  4353,   357,   622,  3165,
-    4213,   526,   419,  3178,  3170,   664,  3181,   222,   254,  4222,
-     659,   401,  3178,    59,   162,  3181,  3182,   598,  4231,   292,
-     447,   659,   358,  4236,   665,   650,   651,  4109,   417,    73,
-    3170,   588,   557,   123,   124,   125,   126,   127,    13,   497,
-     498,   628,   197,   658,   193,   658,   497,   498,   203,   147,
-    4466,   518,  3218,   193,   659,   513,    10,   665,   502,   658,
-    3229,  3227,  3228,   438,   665,   658,  3235,   657,  3234,   658,
-     277,   377,    28,   222,   434,   166,   664,   292,  4466,   665,
-      39,   115,   222,  3249,  3250,   289,   241,   289,   289,  3255,
-    3259,   289,    52,   289,  3260,  3270,  3265,   622,   371,  3837,
-     289,   490,  3271,  3272,  3270,   659,  3236,  3237,  4283,   264,
-     659,   645,  4469,   556,   657,   235,  3282,    73,   231,   284,
-     659,   588,   201,  3289,  3290,   294,   663,    83,   572,  3295,
-     402,   659,   659,   666,  3264,   576,   576,   227,   228,   229,
-     230,   401,   559,   292,   576,   659,  3312,   645,   198,   659,
-     629,   603,   292,   254,   659,   659,   371,   601,   665,    73,
-     659,   537,  3837,   122,   581,  3295,   541,   191,   129,   203,
-     129,   132,   254,   554,   652,   255,   132,   188,  3924,   105,
-     198,   205,  4264,   659,   173,  3351,   537,   509,   406,  3355,
-     648,   649,   650,   651,   652,   653,   654,   655,   179,   650,
-     651,   652,   653,   654,   655,   622,   115,   241,   129,   598,
-     204,   132,   572,   143,   659,   657,   174,   405,   593,   658,
-      56,   659,   371,  4488,  4489,   628,  4491,   186,   105,   608,
-     604,   371,   193,   659,   193,   201,   658,   658,   658,   658,
-     652,   601,   658,   267,   334,   269,   336,   337,   338,   624,
-     658,  4608,   658,   658,   201,   345,  4415,   659,    83,   651,
-     657,   222,   417,   222,   223,   174,    91,   658,   597,   495,
-     658,   658,   193,  3540,   658,  4691,   232,   659,   234,   659,
-     658,   658,   137,  3449,   659,   658,   658,  2229,  2230,  4554,
-     657,  3457,    86,   118,    88,   204,   386,   655,  4036,   389,
-     657,   222,   148,  4691,  2246,   657,   659,    83,   264,   645,
-     646,   647,  4669,  2255,  2256,   588,   657,   659,   244,   658,
-     565,    97,   659,   565,   565,   576,   233,  3457,   233,   242,
-     657,   292,   241,   292,   251,   261,   426,   361,   132,   659,
-    4553,   166,  4555,  3509,    12,   548,   657,   273,    13,  4431,
-     213,  4616,   201,  4618,  4619,  4437,   659,    81,   177,   565,
-     515,  4036,   156,  4522,  3530,  3531,   475,   244,  3534,   659,
-    3536,   292,   215,   588,  3540,  3642,   665,   496,   198,   288,
-     198,   657,   657,   275,   261,  2327,  2328,  2329,  2330,  4531,
-     659,   659,   416,   483,   484,   665,   273,   356,   192,  3565,
-    4779,   665,    20,   665,   201,   658,  3572,  3573,   364,   365,
-     371,   370,   371,  3579,   370,   427,   241,   602,  3584,   659,
-     494,   377,   659,  3598,   198,   659,   377,   377,   353,   355,
-     526,   526,  3598,   526,  4109,  4594,   485,   471,   526,   588,
-     526,   377,   198,   598,  3613,   131,   657,  3577,   588,   659,
-     371,   377,   568,   645,  3620,   645,   288,   604,   492,   645,
-     665,   417,  3624,  3629,  4880,   645,  3632,   645,   645,  4848,
-     645,   645,   105,   197,   645,  4891,  3642,   609,   355,  4895,
-    3646,   515,  3648,  3649,  4900,   645,   645,   105,   645,   645,
-     266,   645,  4880,   645,   645,   320,  3662,  3663,   344,   645,
-     377,   645,   645,  4891,   162,   414,   250,  4895,  3674,   645,
-     419,  3677,  4900,  3643,   339,   645,   645,   241,   645,   250,
-     658,   658,  3652,   665,    14,   559,   659,   645,   562,  3704,
-     658,   486,   658,   658,   490,  3701,   626,   362,  3704,  4306,
-     264,   658,   645,  3709,   470,   659,   164,   658,  3714,     7,
-     640,   641,   642,   658,   658,  3721,   576,   665,   665,   576,
-     576,   636,   471,  3729,   598,   659,   342,   284,    89,    50,
-    3736,   576,   606,   657,   657,   645,   657,   148,   196,   657,
-     198,  3721,   645,   492,   384,   201,   201,   201,   659,  4264,
-     659,   367,   177,   470,   261,   261,    50,   215,   390,   220,
-     341,   395,   220,   565,   258,   432,   565,  4872,   565,   371,
-     569,   244,   659,   572,   104,   335,   542,     7,   657,   237,
-     197,   645,   646,   647,   583,   377,   244,   588,   261,   588,
-     118,   118,   591,   251,    81,   401,   401,   401,   576,  4427,
-     273,   143,   598,   261,  3911,   439,   136,   557,   557,  4731,
-     262,   497,   498,   562,   430,   273,   262,   557,   401,   143,
-     278,   401,   152,    50,   401,   542,   450,   588,   403,   287,
-     663,   401,   581,   401,   401,   657,   215,   401,   657,   657,
-    3846,   657,   665,   254,   174,  3851,   657,   652,   178,   657,
-    3856,   650,   651,   417,   252,   252,   659,   606,  3828,   432,
-     190,   665,   384,   377,   237,   658,   658,   279,   652,   658,
-     658,   657,   401,   622,   659,   658,   541,   658,  4485,   658,
-     350,   658,   355,   213,   657,   657,   123,   124,   125,   126,
-     127,   658,   557,   454,   665,   659,   659,   355,   658,  4898,
-     201,   261,   261,   387,    58,  3911,   658,  3913,  3914,   432,
-     526,   241,  3918,   659,    68,   658,  4431,   247,   645,   377,
-     659,  3927,  4437,   630,  3930,  3931,   466,   657,    82,   387,
-    3936,  4853,  3938,   344,   118,  3905,  3942,   401,   235,   148,
-      94,    95,    96,   665,  3950,   264,   264,  4054,  3954,   657,
-    3956,   576,   217,   659,   663,   659,  4878,   287,   658,   113,
-     657,   419,   648,   649,   650,   651,   652,   653,   654,   655,
-     658,    50,   488,  4114,    83,   631,  2758,   658,   658,  2761,
-    2762,   468,  2764,   275,   182,  2767,  2768,   287,    97,  2771,
-     227,   228,   229,   230,  2776,   213,   565,   470,   155,  2781,
-    2782,  2783,  2784,  2785,   271,   659,   658,  2789,  2790,   658,
-    2792,   659,   470,   261,   486,   261,  2798,  2799,  2800,  2801,
-    4026,   512,  2804,  2805,   377,  2807,   635,   657,   657,   264,
-     658,   658,   141,   659,   657,   264,   494,  4043,   659,   659,
-     631,   658,   657,    58,    20,   254,   415,    83,  4054,   240,
-     198,   377,   377,    68,  4024,   198,   198,   658,    28,   568,
-      30,   278,   371,   658,   658,   658,    63,    82,   658,   542,
-     252,   658,   658,   658,   266,   341,   658,   427,    18,    94,
-      95,    96,   658,   631,   542,   659,   497,   498,   384,  2871,
-     420,  4693,    62,    63,   657,    65,   251,   334,   113,   336,
-     337,   338,   658,    73,   659,   609,   665,    75,   345,   609,
-     440,   657,   419,    83,   658,   481,  4263,   659,   448,   657,
-      20,    91,   658,   609,   179,   132,   456,   132,   559,  4135,
-     657,   413,   657,   657,  4140,   344,    87,   665,  4144,   597,
-     504,   151,   132,    37,   659,    37,   371,  4153,   118,   181,
-     608,   609,   341,   144,  4160,   658,   486,   266,   565,   565,
-     565,   264,   132,   559,   657,   135,   613,  4173,   280,   499,
-     500,   629,   609,   631,   609,  4190,   251,   658,   377,   333,
-     659,   383,   657,  4192,  4190,   317,   619,   645,   528,   426,
-     658,   619,  4198,   177,   475,   465,   166,   351,   658,  4340,
-     658,   659,   659,    64,   662,   663,   384,   658,   603,   547,
-      50,    50,   161,    50,   657,   657,  4731,   466,   657,  4826,
-     371,   551,   251,   657,   377,   657,  4228,   657,    15,   603,
-     132,   264,    20,   342,  4240,   370,  4242,   648,   649,   650,
-     651,   652,   653,   654,   655,   264,   483,   484,   140,  4255,
-     631,   581,   645,  4255,   531,   364,   365,   200,   367,   177,
-     143,   567,   232,   143,   234,   657,    50,   166,    28,    50,
-      30,   241,    50,   603,   166,   605,   198,   169,   248,   657,
-     398,   658,   658,   366,   371,   657,  4301,   657,   497,   498,
-     657,   614,  4399,   263,   657,  4301,   658,   163,  4304,   657,
-     657,   657,    62,    63,   659,    65,   548,   658,   548,   658,
-     464,    12,   287,    73,   206,    66,   657,   384,   333,    66,
-     657,   430,    50,    83,    50,   657,   657,   141,   482,   658,
-     198,    91,   151,     5,   226,   377,   351,   659,  4853,  4345,
-     232,   583,   234,   377,   658,   658,   384,   384,   440,   603,
-     320,   593,   475,   136,   659,   658,   233,   157,   118,   658,
-     264,    50,   477,  4878,   237,   371,   657,   494,   610,   339,
-     659,   936,   132,  2509,  2656,   135,  4042,  2862,  4038,  4040,
-    4513,  1056,   624,    37,  1109,  3211,  4158,  4511,  4630,   626,
-     544,  4800,  1133,  4399,  4796,  4338,  4583,   289,   611,  4032,
-      52,  2064,  1976,  3014,   641,   642,   166,   561,  3838,  4411,
-    2294,   697,  3041,  2566,  2565,  1941,  4529,   526,  1694,  4350,
-    2567,   313,  2817,  1182,   394,  2268,   396,  4433,  4434,  3672,
-    4400,  3051,  3850,  3056,   404,  3509,  4599,  1453,  4695,   648,
-     649,   650,   651,   652,   653,   654,   655,  3853,  4302,  4848,
-    4787,  4826,  4485,  4167,   696,  2212,  2810,  3239,  3289,  3918,
-    4466,  4861,  2818,  4673,  3292,  3381,  3708,   482,  3979,  4386,
-    3252,  4411,   232,  4012,   234,  4693,  4399,  2724,   720,  3437,
-    4051,   241,  2961,   725,  3440,  4626,   140,  3432,   248,  4802,
-      84,    84,  4498,  4753,  4500,  4754,  4174,  4635,  4526,  4519,
-    4345,  4221,  4609,   263,  2817,  3285,   476,  1146,  1619,  4196,
-    2698,  1083,   166,  2588,  4687,   169,  3937,   277,  2273,  2050,
-    1709,   763,  2556,  3033,  1735,  3496,   418,  2617,  2465,   544,
-     993,  4537,  4673,  4539,  4540,   427,  3457,  4426,   780,  1006,
-    4546,  2110,  1100,  4671,  2374,  4515,   561,  2997,  1239,  2370,
-     442,  2979,   206,  2639,  3548,  4503,  2644,  4327,  4791,  3812,
-     320,  3736,  4792,  4569,   534,   535,   536,  1211,   460,  2489,
-    3442,   541,   226,  3950,  1639,  1639,  3095,  4583,   232,   339,
-     234,  4583,   824,   825,   826,   827,  4142,   557,  3281,  4454,
-     560,  4795,  3088,  4599,   836,  4141,  4141,  2343,    84,  4569,
-    1471,  1421,  2550,  4609,  2593,  4712,  3856,  3525,  4691,   579,
-    3524,   622,   504,  3579,  4629,   507,   716,  1745,  2183,  2692,
-    2184,   610,  1568,  4629,   610,  1117,   109,   597,  1964,   871,
-    3956,  1479,  4602,  4603,   394,   289,   396,  4090,  3499,  4312,
-    4646,  4846,  4864,  4895,   404,   537,  4900,  4495,   813,  4655,
-    4656,  3530,  1520,  4659,  4795,  2677,  4401,  3572,  4799,   313,
-    1894,   609,   609,  2139,   556,  2021,  2670,   559,  2669,  1499,
-     912,  1645,   601,  1411,  4290,  4297,  4646,  2612,  4785,  2529,
-    3016,  4687,  3297,   602,   646,  4691,   928,   929,   646,   659,
-     932,   646,   980,  1109,   987,  1647,  1109,    -1,    -1,  1109,
-      -1,    -1,    -1,    -1,    -1,    -1,  4712,    -1,    -1,    -1,
-     952,    -1,    -1,    -1,    -1,    -1,   476,    -1,    -1,    -1,
+    1707,  1581,  2868,    46,   292,   541,   386,  2873,   386,   389,
+    1580,   389,   133,   586,   393,   622,   640,   486,    13,   115,
+     386,   876,   588,   389,  3095,   404,  2204,    13,  4170,  2215,
+     371,  3580,   411,  2219,  2220,   386,   609,   661,   389,  1645,
+    1646,   659,   201,   640,   292,   541,   608,   386,    25,   386,
+     389,   495,   389,  3215,   666,  4373,  3099,  1672,   603,  2503,
+    4030,   385,  1668,  1669,  1670,  1671,  1672,   455,  2865,  2708,
+     640,   201,   667,  4697,   191,  2674,  4700,    83,   174,  1685,
+     583,   565,   386,   371,  2708,   389,   455,   386,   624,  2204,
+     389,   661,    17,    18,  1709,   254,   599,   593,   486,   292,
+     659,  1707,  1708,  1709,  3231,   640,  3233,   659,   204,    17,
+      18,   441,   155,  3240,   659,   667,  3078,   486,  1724,   628,
+    4359,  1691,  1380,   371,   144,   661,   661,  3254,   624,  3645,
+     583,   510,   253,   215,  3261,  3262,  2887,  3112,   219,  1745,
+     160,  1747,    17,    18,   613,   614,   599,  3274,  3275,  3276,
+     267,   640,   147,  3280,  3281,   386,   565,  4054,   389,   386,
+    3078,   147,   389,    17,    18,   432,  2991,   219,  2612,   660,
+     386,   565,   661,   389,   586,    17,    18,    18,   371,   261,
+    2702,   215,   666,   264,    17,    18,   453,   455,    17,    18,
+     659,  3353,   495,  3320,  3321,  3322,  1937,  4821,   386,   520,
+     521,   389,   523,   647,   525,    17,    18,  3063,   386,  4351,
+     565,   389,   264,   279,  2658,   603,   282,   386,   640,    13,
+     389,   542,   489,   667,  2823,   235,   232,   606,   234,   386,
+    1836,  1837,   389,   235,   603,  3063,    17,    18,   495,   661,
+     564,   215,   129,   640,  2482,   640,  1953,   588,    17,    18,
+     367,   386,    17,    18,   389,   667,   386,   263,  3055,   389,
+     640,  3495,   640,  2375,   661,   659,   661,   386,  2380,  1124,
+     389,   659,   565,   142,   640,    17,    18,    17,    18,    17,
+      18,   661,  2394,   661,   386,    17,    18,   389,   198,   640,
+     659,  1897,   204,    90,  2035,   661,   381,  1555,  1556,  2526,
+     588,   640,  2529,   640,   659,   387,   193,    17,    18,  2831,
+     661,    34,  4569,   251,  3441,   112,  2428,   254,    17,    18,
+      17,    18,   661,   419,   661,  1940,    17,    18,    17,    18,
+      17,    18,  1071,  1939,  1940,   222,   640,   274,  1077,  1078,
+     588,   640,    17,    18,   647,   386,  1952,  1953,   389,  4606,
+    4607,   198,   568,   147,   201,   232,   660,   234,  3617,  2066,
+    1966,   660,    85,   429,   667,  1971,   659,    12,  2737,   546,
+    1976,  2549,   660,  1979,  2081,  1990,  1991,   287,  1993,  2613,
+     557,    17,    18,  2495,  1990,  1991,  2613,  1993,  2566,  4646,
+     647,  1961,   245,  4632,  4633,   588,    50,    17,    18,    17,
+      18,   254,  2017,   201,  3260,   292,  2021,  4144,  2014,   640,
+     667,  2017,  2119,   640,   614,  2021,  4153,  2500,   653,  2500,
+      17,    18,   162,   494,   640,   660,    81,   199,   556,   660,
+     224,   559,  3260,   660,  2549,  2050,  2051,   505,  3697,   162,
+     287,   505,  2048,  2049,  2050,  2051,  2052,    17,    18,   660,
+    2565,  2566,   640,    17,    18,   295,  2071,  2072,  2073,  2065,
+    2066,   386,   640,   559,   389,  2071,  2072,  2073,    17,    18,
+     115,   640,   660,   364,   365,  2081,  2046,  2679,   386,   653,
+    3573,   389,   660,   640,   371,   581,   660,  3353,   133,  2104,
+    2096,   660,   486,  3075,   622,  2679,   105,  4751,  2104,  2868,
+      17,    18,   665,   660,  2873,   640,   235,   419,  2114,  3031,
+     640,   386,   284,  2119,   389,   241,    17,    18,   609,   492,
+    1991,   640,  1993,   241,   556,   660,   622,   559,   556,   174,
+    2136,   559,   386,  3148,    81,   389,   127,  3767,   640,   392,
+     616,   660,   197,   619,   386,  1402,  3360,   389,  1405,  4803,
+    2156,  1408,  4806,   386,   660,   661,   389,   386,   660,   204,
+     389,   559,  3161,    17,    18,    17,    18,    17,    18,   660,
+     661,  3546,  2172,  2188,   386,  3389,  3390,   389,   606,  1136,
+    1137,  2151,  2188,  2153,  4838,   241,   241,  2702,  3041,  3042,
+    3043,  3044,    62,    63,   148,    17,    18,   369,  3412,   640,
+    2071,  2072,  2073,    73,   667,   386,    17,    18,   389,   264,
+     609,  2217,  2218,  3057,   526,  2221,   129,   386,   174,   660,
+     389,   386,    17,    18,   389,   604,  1183,   660,   661,    17,
+      18,   518,   559,  3430,   526,   244,    17,    18,  2218,   230,
+     661,    17,    18,   288,   386,   659,   386,   389,   386,   389,
+     197,   389,   261,   158,   386,   576,  2271,   389,  2836,  2366,
+     609,     6,   661,  2233,   273,  2271,   659,  2273,   667,   581,
+     659,  2378,  2242,  2243,  3530,   659,   386,   660,   661,   389,
+     193,    17,    18,    18,    20,   660,   661,   386,   179,   386,
+     389,   414,   389,   556,   241,   386,   559,   386,   389,   386,
+     389,   588,   389,    18,   660,   661,   659,    66,  3154,   222,
+     622,   386,   661,   436,   389,   640,  2831,   264,   667,   660,
+     661,  2836,    81,  3579,   660,   661,   520,   521,   522,   523,
+     524,   525,   640,   659,    93,   660,   486,  2343,  3968,   659,
+    2346,  3971,  3972,   334,   494,  3282,   355,   338,   542,   472,
+     386,  3579,   660,   389,   345,   659,   568,   659,  3988,   622,
+    2366,   659,   417,   659,  2471,   640,   386,   661,   386,   389,
+     659,   389,  2378,  3078,   419,  3312,  4006,   627,   628,   292,
+     630,   659,   632,   659,   556,   660,   640,   559,   659,   386,
+     344,   659,   389,  2500,   659,  2502,  3318,   659,   640,  3026,
+    3027,  3028,   660,   661,  4344,  4468,   660,   640,  4348,   532,
+     781,   640,   565,   148,   660,   661,   386,   179,   660,   389,
+     201,   659,   386,  4644,   659,   389,  4643,   660,   640,   660,
+     661,   660,   803,   148,   659,   426,   568,   386,   197,   659,
+     389,   659,  3639,   659,   203,   816,   817,   492,  3082,  3083,
+    3084,   244,    17,    18,   401,  3082,  3083,  3084,   371,   640,
+     659,   470,   667,   613,   614,  2471,    62,    63,   261,   386,
+     417,   640,   389,   659,  2986,   640,   660,   661,   541,   660,
+     273,   526,   241,   659,  3086,   386,   660,   661,   389,   659,
+    2496,   660,   191,   484,  2500,   660,  2502,  2503,   640,   474,
+     640,   659,   640,   660,   661,   264,   205,   659,   640,   659,
+     659,  4038,   557,  4040,  2621,  4042,  3031,   609,   660,   384,
+    2526,   418,   660,  2529,  3523,   659,  3041,  3042,  3043,  3044,
+     640,  3165,   386,   542,   386,   389,   386,   389,  3165,   389,
+     659,   640,   659,   640,   660,   661,   659,  3562,   659,   640,
+     660,   640,   659,   640,   660,   661,   660,   661,   659,  4086,
+    3575,   660,  2568,   660,   386,   640,   659,   389,   267,   660,
+     269,   660,  4043,   660,   659,   386,  4043,   622,   389,  4519,
+     660,   661,   557,   659,  3353,   660,  4526,   562,  2594,   659,
+     129,   386,  2598,   132,   389,   660,   661,   659,   386,  3750,
+    3856,   389,   660,   661,   640,   386,  2612,  2613,   389,   344,
+     386,    27,   659,   389,    86,  2621,    88,  2724,  2725,   659,
+     640,   659,   640,  2629,   660,  2631,  2632,   659,  3856,   344,
+     659,   606,   659,  3219,   659,   626,  3238,  3223,   158,   159,
+     660,   474,   660,   640,   660,   661,  2652,   622,  2654,   659,
+     386,   642,  2658,   389,   193,   664,   660,   661,   417,   659,
+     132,   659,   361,   660,   659,  4324,  4325,    83,   129,   659,
+     640,   132,   659,  2679,    83,   588,   640,   470,   660,   661,
+    3785,   659,  2652,   222,   156,  2656,    17,    18,   659,    61,
+     660,   640,  3629,   659,  3950,  2701,   660,   659,   652,   653,
+     654,   655,   656,   657,   659,  2711,  2721,  2722,   299,   300,
+    2716,   660,   660,   661,   659,  2721,  2722,   416,  2724,  2725,
+     192,   659,  3950,   640,   315,   659,  3663,   659,    83,   659,
+    4793,   659,   193,   660,   661,    35,  2716,  3674,   659,   640,
+    3677,   659,    97,   660,    27,   660,   661,   660,  4467,   542,
+     166,   659,    13,   292,   168,  3244,   515,   166,    66,   660,
+     659,   222,   497,   498,   659,  4292,  4293,  4294,   184,  2739,
+    2740,  2741,  2742,    81,  2744,  2745,   660,   661,   660,   661,
+     660,   661,   497,   498,    45,    93,   640,   659,   640,   556,
+     640,   205,   123,   124,   125,   126,   127,  2803,   660,   661,
+      83,    20,   659,  3318,   659,  4019,   660,   377,   660,   377,
+     660,   183,  2818,  4753,  4754,   187,   659,   297,   640,   299,
+     300,  4183,   660,   661,  2830,   659,   198,   243,  2834,   640,
+     659,   292,   371,  4331,   243,   315,   105,    98,   660,   598,
+     661,  4904,   103,   257,   162,   640,  3978,  3979,   148,   660,
+    3982,   576,   640,   444,   445,   269,  2997,   660,   661,   640,
+     660,   661,   660,   661,   640,   660,   660,   661,   237,  4001,
+     660,   661,   660,  2843,  2844,  4007,  2846,   512,  2848,  2849,
+    2850,  2851,  2852,  2853,  2854,    52,   105,  2857,  3400,   197,
+    2860,   148,   660,   661,  2864,   203,   227,   228,   229,   230,
+     665,   184,  3536,   660,   640,   321,   660,   661,   668,  3536,
+     371,   266,   660,   661,  3021,   650,   651,   652,   653,   654,
+     655,   656,   657,   395,  1276,  1277,   660,   661,   660,   661,
+     660,   661,  4064,   241,    52,   650,   651,   652,   653,   654,
+     655,   656,   657,  3455,   358,   164,   362,   289,   647,   648,
+     649,   661,   368,   362,   254,   384,   264,   377,   330,   368,
+     243,   201,   660,   661,   444,   445,   377,   439,   660,   661,
+    3572,   660,   661,   660,   661,   244,   480,   277,   597,   198,
+      50,  3088,   660,   661,   148,   660,   661,   342,  3572,   660,
+     661,   278,   261,   660,   661,   256,   215,   254,   660,   661,
+     201,   220,   654,   334,   273,   336,   337,   338,  3014,   494,
+    3016,   667,   367,   505,   345,  3021,   660,   661,  3033,  3025,
+    3026,  3027,  3028,   660,   661,   244,   173,  3033,   659,   438,
+     660,   661,   251,  3619,  3040,   198,  3622,  3623,   321,  4401,
+     660,   661,   261,   537,   344,   556,   129,   660,   661,   588,
+    3056,  3057,  3043,  3044,   273,   386,   428,  3063,   389,   278,
+    3488,  3489,   512,   537,   364,   365,  3831,  3832,   287,   289,
+     331,   165,  3078,   198,    92,   430,  3082,  3083,  3084,   362,
+     661,  4213,  3088,  4302,   661,   368,   355,   344,   378,  3095,
+    4222,  4589,   552,   401,   660,   426,   164,   132,   118,  4231,
+       6,  4206,   666,   383,  4236,   117,     4,   485,   377,   417,
+     193,    37,   622,  4640,  3120,   666,  4221,   254,   661,   401,
+     162,    59,   447,   661,    73,   541,   667,   588,    13,   628,
+     660,   660,   541,   147,   395,    83,   355,    63,   129,   222,
+      10,   441,  3249,    91,   661,   667,   660,  4207,  4208,   232,
+    3120,   234,   483,   484,   660,   660,  4353,   277,   377,  3165,
+    4220,   659,   377,  3178,  3170,   667,  3181,  4227,   387,   166,
+     118,   526,  3178,   289,   667,  3181,  3182,   666,  4238,  4239,
+     344,   289,   289,   289,   593,    52,   289,  4109,   289,   647,
+    3170,   661,   661,   119,   556,   659,   122,   497,   498,   235,
+     419,   470,   193,   231,   130,   284,   661,   515,   624,   292,
+    4466,   201,  3218,   513,   294,   624,    28,   665,   166,   402,
+    3229,  3227,  3228,   149,   661,   213,  3235,   576,  3234,   661,
+     576,   222,   668,   647,   648,   649,   401,   576,  4466,   661,
+     497,   498,   647,  3249,  3250,   661,   198,   629,   661,  3255,
+    3259,   470,   661,   514,  3260,  3270,  3265,   661,   541,  3837,
+     603,    73,  3271,  3272,  3270,   254,  3236,  3237,  4283,   667,
+     661,    83,  4469,   542,    73,   494,  3282,   661,   537,   254,
+     654,   255,   554,  3289,  3290,   188,   198,   173,   371,  3295,
+     598,   661,   553,   241,  3264,   626,   537,   509,   179,   129,
+     204,   292,   132,   174,   406,   143,  3312,   659,   661,   640,
+     641,   642,   405,   129,   661,   660,   132,    56,   628,   604,
+     132,   661,  3837,   542,   608,  3295,   252,   201,   660,   201,
+     318,   319,   660,   497,   498,   323,   324,   325,  3924,   129,
+     609,   624,  4264,   660,   660,  3351,   660,   654,   660,  3355,
+     650,   651,   652,   653,   654,   655,   656,   657,   660,   660,
+     148,   653,   661,   193,   659,   661,   129,   660,   597,   132,
+     661,   660,   320,   659,    20,   129,   495,   193,   597,   660,
+     371,   660,    28,  4488,  4489,   660,  4491,   660,   659,   148,
+     609,   339,   222,   650,   651,   652,   653,   654,   655,   656,
+     657,   657,   660,   193,    14,   660,   222,   659,   659,   137,
+     629,  4608,   631,   660,   362,   661,  4415,   661,   661,   565,
+     232,  4553,   234,  4555,   565,   565,   576,    73,   647,   233,
+     193,   357,   222,  3540,   242,  4691,   233,    83,   251,   193,
+     661,   660,   661,  3449,   548,   664,   665,  2229,  2230,  4554,
+     659,  3457,   264,    12,   659,    13,   213,   201,  4036,   222,
+     565,   661,   292,  4691,  2246,   177,   254,   475,   222,   661,
+     215,   496,  4669,  2255,  2256,   198,   292,   105,   667,   198,
+     659,   659,   275,   667,   661,   661,   132,  3457,   652,   653,
+     654,   655,   656,   657,   104,   667,   667,   201,   660,   427,
+     661,    39,   292,  3509,   602,   588,   661,   494,   198,  4431,
+     661,  4616,   377,  4618,  4619,  4437,    20,   377,   353,   526,
+     526,  4036,   526,  4522,  3530,  3531,   136,   526,  3534,   292,
+    3536,   526,   485,   377,  3540,  3642,   198,   131,   292,   568,
+     661,   371,   152,   604,   105,  2327,  2328,  2329,  2330,  4531,
+     659,   647,   364,   365,   288,   371,   344,   647,   370,  3565,
+    4779,   207,   647,   647,   174,   377,  3572,  3573,   178,   148,
+     647,   647,   647,  3579,   647,   647,   502,   162,  3584,   609,
+     190,   371,   647,  3598,   122,   344,   232,   647,   234,   647,
+     647,   129,  3598,   541,  4109,  4594,   647,   588,   647,   647,
+     647,   105,   647,   213,  3613,   417,   647,  3577,   371,   557,
+     647,   667,   250,   647,  3620,   647,   244,   371,   264,   250,
+     647,   660,  3624,  3629,  4880,   486,  3632,   660,   647,  4848,
+     661,   241,   647,   261,     7,  4891,  3642,   247,    39,  4895,
+    3646,   667,  3648,  3649,  4900,   273,   572,   660,   186,   660,
+     660,   660,  4880,   576,   576,   193,  3662,  3663,   660,   660,
+     164,   105,   660,  4891,   667,   661,   576,  4895,  3674,   661,
+      63,  3677,  4900,  3643,   667,   601,   636,   287,   490,   284,
+      89,    50,  3652,   244,   222,   223,   659,   659,   647,  3704,
+     659,   659,   196,   576,   198,  3701,   647,   384,  3704,  4306,
+     261,   201,   201,  3709,   201,   661,   661,   177,  3714,   497,
+     498,   215,   273,   261,   261,  3721,   220,   390,   364,   365,
+      50,   122,   220,  3729,   370,   341,   119,   355,   129,   122,
+    3736,   377,   565,   237,   565,   258,   432,   130,   497,   498,
+     244,  3721,   661,   335,   371,     7,   659,   251,   197,  4264,
+     118,   377,   118,    58,   292,    81,   149,   261,   588,   401,
+     401,   401,   576,    68,   143,   344,   262,  4872,   557,   273,
+     262,   417,   588,   557,   278,    50,   401,    82,   143,   401,
+     401,   401,   450,   287,   403,   186,   598,   401,   401,    94,
+      95,    96,   193,   659,   355,   659,   665,   659,   588,  4427,
+     244,   194,   659,   215,  3911,   654,   659,   659,   113,  4731,
+     420,   667,   252,   252,   660,   660,   377,   261,   356,   660,
+     660,   222,   223,   659,   661,   588,   432,   661,   366,   273,
+     440,   660,   370,   371,   588,   667,   660,   660,   448,   660,
+    3846,   115,   470,   384,   490,  3851,   456,   654,   659,   659,
+    3856,   355,   377,   237,   660,   279,   661,   401,  3828,   252,
+     350,   454,   650,   651,   652,   653,   654,   655,   656,   657,
+     661,   667,   201,   377,   660,   261,   486,   387,  4485,   261,
+     660,   660,   432,   387,   661,   647,   661,   630,   466,   499,
+     500,   292,   651,   652,   653,   654,   655,   656,   657,  4898,
+     118,   659,   235,   264,   264,  3911,   401,  3913,  3914,   470,
+     659,   355,  3918,   576,   542,   419,  4431,   667,   497,   498,
+     217,  3927,  4437,   661,  3930,  3931,   661,   660,   665,   203,
+    3936,  4853,  3938,   377,   659,  3905,  3942,    50,   660,   488,
+     660,   551,   631,   660,  3950,   182,   468,  4054,  3954,   287,
+    3956,   275,   598,   213,   565,   356,  4878,   155,   271,   661,
+     660,   354,   660,   261,   357,   486,   470,   241,   661,   370,
+     371,   581,   261,  4114,   377,   512,  2758,   635,   659,  2761,
+    2762,   542,  2764,   659,   661,  2767,  2768,   264,   660,  2771,
+     494,   660,   659,   603,  2776,   605,   264,   115,   631,  2781,
+    2782,  2783,  2784,  2785,   661,   661,   659,  2789,  2790,   660,
+    2792,    20,    83,   415,   377,   377,  2798,  2799,  2800,  2801,
+    4026,   240,  2804,  2805,   198,  2807,   470,   565,   333,   198,
+     198,   569,   568,   278,   572,   371,   660,  4043,   542,    63,
+     252,   434,   660,   660,   266,   583,   351,   341,  4054,   427,
+     588,   660,   660,   591,  4024,    18,   174,   660,    28,   660,
+      30,   660,   660,   660,   384,   661,   631,   251,   659,    75,
+     660,   650,   651,   652,   653,   654,   655,   656,   657,   661,
+     667,   609,   609,   659,   419,   660,   204,   661,   659,  2871,
+     481,  4693,   660,   597,    20,    65,   609,   179,   542,   132,
+     132,   559,   659,   413,   608,   609,   659,   123,   124,   125,
+     126,   127,   667,    83,   652,   653,  4263,   659,    87,   504,
+     151,    91,   132,   241,    37,   629,   661,   631,   371,  4135,
+      83,   341,   181,   144,  4140,   565,   660,   565,  4144,   565,
+     264,   559,   659,   647,    97,    37,   613,  4153,   118,   280,
+     609,   251,   609,   660,  4160,   661,   660,   661,   383,   464,
+     664,   665,   132,   377,   565,   135,   659,  4173,   569,   660,
+     288,   572,   317,   619,   619,  4190,   528,   482,   177,   572,
+     475,   465,   583,  4192,  4190,   660,   660,   588,   141,   661,
+     591,    64,  4198,   384,   547,   603,   166,   471,    50,  4340,
+      50,   161,    50,   659,   659,   466,   659,   371,   601,   659,
+     251,   227,   228,   229,   230,   377,  4731,   659,   492,  4826,
+      15,   659,   603,   132,   264,   264,  4228,    20,   370,   531,
+     647,   631,   200,   177,  4240,   567,  4242,   143,   143,   544,
+     659,   515,   166,    50,    50,    28,    50,    30,   140,  4255,
+     198,   652,   653,  4255,   659,   398,   561,   366,   614,   371,
+     163,   660,   232,   660,   234,   659,   661,   659,   548,   659,
+     659,   241,   659,   287,   166,    12,   659,   169,   248,    62,
+      63,    66,    65,   660,   660,   559,  4301,   659,   562,   660,
+      73,   384,  4399,   263,    66,  4301,   414,    50,  4304,    50,
+      83,   419,   659,   661,   659,   659,   548,   141,    91,   659,
+     198,   660,   151,   266,   206,     5,   377,   377,   334,   660,
+     336,   337,   338,    58,   598,   384,   660,   384,   136,   345,
+     440,   603,   606,    68,   226,   118,   475,   660,  4853,  4345,
+     232,   583,   234,   661,   233,   660,   157,    82,   264,   132,
+     320,   593,   135,   471,    50,   477,   237,   494,   371,    94,
+      95,    96,   661,  4878,   936,  2509,   659,  2862,   610,   339,
+    2656,  4042,  4038,  4040,   492,  4513,  1056,  3211,   113,  1109,
+    4158,  4511,   624,   166,  4630,  4800,  1133,  4796,  4338,   342,
+    4583,  4032,    52,  4399,   611,  2064,  1976,   289,  3838,  3014,
+    2294,   697,  3041,  2565,  2567,  2566,  1182,  1941,  4350,  4411,
+     426,   364,   365,  4529,   367,  2268,  1694,  2817,  3672,  3051,
+    3850,   313,  3056,  3509,   394,  4599,   396,  4433,  4434,  1453,
+    4400,  4695,  3853,  4302,   404,  4848,  4787,  4826,  4485,   557,
+    2212,  4167,  2810,  4712,   562,  3918,  3289,  3292,  2818,   232,
+    4861,   234,  4673,  3381,   696,  3708,  3979,  3239,   241,  4386,
+    4466,  4012,  4411,   581,  4693,   248,  4399,   483,   484,  2724,
+    3252,  4051,  2961,  3437,  3432,  3440,  4802,   430,   720,    84,
+     263,    84,  4753,   725,  4754,  4626,  4174,  4635,   606,  4526,
+    4519,  4345,  4498,  4221,  4500,  2817,  3285,  1083,  1146,  2273,
+    4196,  4687,  4609,  2698,   622,    37,   476,  1619,  1735,  2588,
+    3937,  1709,  2556,  2050,  3496,  3033,  4426,  2617,  1006,  2465,
+    1100,   763,   993,  2110,  3457,  4671,   418,  2374,  2370,  1239,
+    2997,  4537,  4673,  4539,  4540,   427,  2644,   320,   780,  3548,
+    4546,  2639,  2979,  4503,  4791,  4515,  3736,  4327,  4792,  3812,
+     442,  1211,  2489,  3950,  3095,  3442,   339,  1639,  1639,  4142,
+    4454,  3281,  4795,  4569,   534,   535,   536,  4141,   460,  4141,
+    2343,   541,  3088,   526,    84,  1471,  2550,  4583,  1421,  2593,
+    3524,  4583,   824,   825,   826,   827,  3856,   557,  3525,  3579,
+     560,  1745,  4691,  4599,   836,   622,   716,  2183,   333,  4569,
+    2184,  1568,   610,  4609,  2692,  4712,  1117,   610,   140,   579,
+     626,   394,   504,   396,  4629,   507,   351,   109,  3956,  4090,
+    1964,   404,  3499,  4629,  1479,   641,   642,   597,  4846,   871,
+    4312,   813,  4602,  4603,   166,  4495,  4864,   169,  4895,  4900,
+    4646,  4401,  1520,  2677,  3530,   537,  3572,   609,   609,  4655,
+    4656,  2139,  1894,  4659,  4795,  2670,  2669,  2021,  4799,  1645,
+    1499,   601,  2612,   980,   556,  1411,  4290,   559,  2529,  3016,
+     912,  4297,  3297,   602,   206,   987,  4646,  1109,  4785,   150,
+     646,  4687,   646,  1647,  1109,  4691,   928,   929,   646,  1109,
+     932,    -1,    -1,   476,   226,    -1,    -1,    -1,    -1,    -1,
+     232,    -1,   234,    -1,    -1,    -1,  4712,    -1,    -1,    -1,
+     952,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,   964,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,  4703,  4704,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,  4750,    -1,    -1,    -1,    -1,    -1,
-     150,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    4901,    -1,    -1,    -1,   418,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   427,   534,   535,   536,    -1,    -1,  4785,
-    4887,   541,    -1,    -1,    -1,  4791,  4792,    -1,   442,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   557,    -1,    -1,
-     560,    -1,    -1,    -1,    -1,    -1,   460,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   579,
+      -1,    -1,    -1,    -1,  4750,    -1,    -1,   482,    -1,    -1,
+      -1,   534,   535,   536,    -1,    -1,    -1,   289,   541,    -1,
+    4901,    -1,    -1,    -1,    -1,   236,    -1,   238,    -1,    -1,
+      -1,    -1,    -1,    -1,   557,    -1,    -1,   560,    -1,  4785,
+    4887,   313,    -1,    -1,    -1,  4791,  4792,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   579,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   544,
+      -1,    -1,    -1,    -1,   597,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   296,   561,   298,   299,   300,
+     301,   302,    -1,   304,   305,   306,   307,   308,   309,   310,
+     311,   312,    -1,   314,   315,   316,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   236,   597,   238,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     504,    -1,    -1,   507,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,  4880,    -1,    -1,    -1,   661,    -1,
+      -1,  4887,    -1,    -1,    -1,  4891,   418,    -1,  4858,  4895,
+      -1,    -1,    -1,    -1,  4900,   427,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,  4880,    -1,    -1,    -1,    -1,    -1,
-      -1,  4887,    -1,   537,    -1,  4891,    -1,    -1,  4858,  4895,
-      -1,    -1,    -1,    -1,  4900,    -1,   296,   657,   298,   299,
-     300,   301,   302,    -1,   304,   305,   306,   307,   308,   309,
-     310,   311,   312,    -1,   314,   315,   316,    -1,    -1,    -1,
-    1162,    -1,    -1,  1165,  1166,    -1,    -1,    -1,    -1,    -1,
+     442,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    1162,    -1,    -1,  1165,  1166,    -1,    -1,    -1,   460,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1190,  1191,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1199,  1200,  1201,
     1202,  1203,  1204,  1205,  1206,  1207,  1208,  1209,  1210,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1219,  1220,    -1,
+      -1,    -1,   504,   444,   445,   507,    -1,  1219,  1220,    -1,
     1222,  1223,    -1,    -1,    -1,  1227,  1228,    -1,    -1,  1231,
     1232,  1233,  1234,    -1,  1236,  1237,  1238,    -1,    -1,    -1,
-      -1,    -1,    -1,  1245,  1246,    -1,  1248,  1249,  1250,  1251,
+      -1,    -1,    -1,  1245,  1246,   537,  1248,  1249,  1250,  1251,
     1252,    -1,    -1,  1255,  1256,  1257,  1258,  1259,  1260,  1261,
     1262,  1263,  1264,  1265,    -1,  1267,    -1,    -1,  1270,  1271,
       -1,    -1,    -1,  1275,    -1,    -1,    -1,  1279,  1280,  1281,
-      -1,    -1,    -1,    -1,   444,   445,    -1,    -1,    -1,  1291,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1291,
     1292,  1293,    -1,    -1,    -1,    -1,    -1,    -1,  1300,    -1,
       -1,    -1,    -1,    -1,    -1,  1307,  1308,  1309,  1310,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,  1318,  1319,  1320,    -1,
@@ -11993,120 +12006,120 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    60,
-      -1,    -1,    -1,    -1,    65,    66,    -1,    -1,    -1,    -1,
+      28,    -1,    30,    -1,    65,    66,    -1,    -1,    -1,    -1,
       71,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    83,  1425,    -1,    -1,    -1,    -1,    -1,    -1,
-      91,    -1,    -1,    -1,    -1,    -1,    13,    -1,    -1,  1441,
-     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    26,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   118,    -1,    -1,
-      37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      91,    -1,    -1,    -1,    62,    63,    -1,    65,    -1,  1441,
+     101,    -1,    -1,    -1,    -1,    73,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    83,    -1,   118,    -1,    -1,
+      -1,    -1,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,   132,    -1,    -1,   135,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   144,   145,    62,    63,    -1,    -1,    -1,
-      -1,   152,    -1,    -1,    -1,    -1,    -1,    74,    -1,   160,
-      -1,    -1,    -1,   164,    -1,   166,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   144,   145,    -1,    -1,    -1,    -1,    -1,
+     118,   152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   160,
+      -1,    -1,    -1,   164,   132,   166,    -1,   135,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,   176,    -1,    -1,  1520,    -1,
-      -1,    -1,    -1,   100,    -1,   102,    -1,   104,    -1,    -1,
-      -1,    -1,    -1,  1535,    -1,   196,    -1,    -1,    -1,   116,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    1552,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   138,   139,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   232,    -1,   234,    -1,    -1,    -1,    -1,   239,    -1,
-     241,    -1,    -1,    -1,    -1,    -1,    -1,   248,   165,   166,
-      -1,    -1,    -1,   170,    -1,    -1,   173,    -1,    -1,    -1,
-      -1,    -1,   263,    -1,    -1,    -1,    -1,  1609,    -1,    -1,
+      -1,    -1,    -1,  1535,    -1,   196,    -1,    -1,   166,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   202,   287,   204,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   212,    -1,   214,    -1,    -1,
+    1552,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   232,    -1,   234,    -1,   320,
-      -1,    -1,    -1,   240,   241,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   339,    -1,
-      -1,    -1,   343,    -1,    -1,   262,    -1,    -1,    -1,    -1,
+      -1,   232,    -1,   234,    -1,    -1,    -1,    -1,   239,    -1,
+     241,    -1,    -1,    -1,    -1,    -1,    -1,   248,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   284,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,  1718,    -1,    -1,    -1,
-      -1,   382,    -1,     6,    -1,    -1,   387,    -1,    -1,    12,
-      -1,    14,    -1,   394,    -1,   396,   313,    -1,    -1,    -1,
-     401,    -1,    -1,   404,    -1,    28,    -1,    30,    -1,    -1,
+      -1,    -1,   263,    -1,   232,    -1,   234,  1609,    -1,    -1,
+      -1,    -1,    13,   241,    -1,    -1,    -1,    -1,    -1,    -1,
+     248,    -1,    -1,    -1,    -1,    26,   287,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   263,    37,    38,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   277,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   320,
+      -1,    62,    63,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    74,    -1,    -1,    -1,    -1,   339,    -1,
+      -1,    -1,   343,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   320,    -1,    -1,    -1,    -1,    -1,    -1,   100,
+      -1,   102,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   339,    -1,    -1,    -1,   116,  1718,    -1,    -1,    -1,
+      -1,   382,    -1,    -1,    -1,    -1,   387,    -1,    -1,    -1,
+      -1,    -1,    -1,   394,    -1,   396,    -1,   138,   139,    -1,
+     401,    -1,    -1,   404,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,  1758,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   435,    -1,    -1,    60,    -1,    -1,
-      -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,   449,   450,
+      -1,    -1,    -1,    -1,   165,   166,   394,    -1,   396,   170,
+      -1,    -1,   173,    -1,   435,    -1,   404,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   449,   450,
      451,   452,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      83,    -1,    -1,    -1,   381,    -1,    -1,    -1,    91,    -1,
-      -1,    -1,    -1,    -1,    -1,   476,    -1,    -1,   101,    -1,
+      -1,   202,    -1,   204,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   212,    -1,   214,    -1,   476,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     407,    -1,    -1,    -1,    -1,   118,    -1,    -1,    -1,    -1,
-      -1,   418,   419,    -1,    -1,   422,   423,    -1,    -1,   132,
-      -1,    -1,   135,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   144,    -1,    -1,    -1,    -1,   443,    -1,    -1,   152,
-    1872,  1873,  1874,   534,   535,   536,    -1,   160,    -1,    -1,
-     541,    -1,    -1,   166,    -1,  1887,    -1,    -1,    -1,    -1,
+      -1,   232,    -1,   234,    -1,    -1,    -1,    -1,    -1,   240,
+     241,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   476,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   262,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    1872,  1873,  1874,   534,   535,   536,    -1,    -1,    -1,    -1,
+     541,    -1,    -1,   284,    -1,  1887,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,   557,    -1,    -1,   560,
+      -1,    -1,    -1,    -1,    -1,    -1,   534,   535,   536,    -1,
+      -1,  1913,   313,   541,    -1,    -1,    -1,  1919,   579,    -1,
+    1922,    -1,  1924,   584,    -1,    -1,    -1,    -1,  1930,   557,
+    1932,  1933,   560,    -1,  4476,  4477,   597,    -1,  4480,  4481,
+    4482,  4483,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   579,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,  1964,    -1,    -1,    -1,    -1,    -1,    -1,   597,
+      -1,    -1,    -1,   624,  4516,    -1,    -1,    -1,    -1,    -1,
+     381,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  1913,    -1,   196,   491,    -1,    -1,  1919,   579,    -1,
-    1922,    -1,  1924,   584,    -1,    -1,    -1,   504,  1930,    -1,
-    1932,  1933,    -1,    -1,  4476,  4477,   597,    -1,  4480,  4481,
-    4482,  4483,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   232,
-      -1,   234,    -1,    -1,    -1,    -1,    -1,    -1,   241,    -1,
-     537,    -1,  1964,    -1,   541,   248,    -1,    -1,    28,    -1,
-      30,    -1,    -1,   624,  4516,    -1,    -1,    -1,    -1,    -1,
-     263,    -1,   559,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   665,    -1,   407,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,   418,   419,    -1,
+      -1,   422,   423,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   659,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   443,  2045,    -1,   696,    -1,    -1,    -1,    -1,
+      -1,    -1,  2054,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,  4604,  4605,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,  4613,    -1,    -1,   725,    -1,    -1,    -1,    -1,    -1,
+      -1,  2083,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     491,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   504,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   763,    -1,  2116,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   780,
+      -1,    -1,    -1,    -1,    -1,  2137,   537,    -1,    -1,    -1,
+     541,    -1,    -1,  2145,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,  2154,    -1,    -1,    -1,    -1,    -1,   559,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   663,    -1,   287,    65,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   827,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    83,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    91,    -1,    -1,    -1,    -1,    -1,   320,    -1,    -1,
-     617,    -1,    -1,  2045,    -1,   696,    -1,    -1,   625,    -1,
-      -1,    -1,  2054,    -1,    -1,    -1,   339,    -1,   118,    -1,
-     343,    -1,  4604,  4605,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  4613,   132,    -1,   725,   135,    -1,    -1,    -1,    -1,
-      -1,  2083,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   387,    -1,   166,    -1,    -1,    -1,
-      -1,   394,   763,   396,  2116,    -1,    -1,    -1,    -1,    -1,
-      -1,   404,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   780,
-      -1,    -1,    -1,    -1,    -1,  2137,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,  2145,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,  2154,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   450,    -1,    -1,
-      -1,    -1,   232,    -1,   234,    -1,   827,    -1,    -1,    -1,
-      -1,   241,    -1,    -1,    -1,    -1,    -1,    -1,   248,    -1,
-      -1,    -1,    -1,   476,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,  2204,   263,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,  2204,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   617,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   625,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   912,    -1,    -1,    -1,    -1,  2268,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   534,   535,   536,    -1,    -1,    -1,    -1,   541,    -1,
-     320,   912,    -1,    -1,    -1,    -1,  2268,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   557,    -1,    -1,   560,    -1,   339,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2290,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   579,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,   952,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   597,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   394,    -1,   396,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   404,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     2352,    -1,    -1,    -1,  2356,    -1,    -1,    -1,    -1,  2361,
     2362,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2370,    -1,
     2372,    -1,  2374,  2375,  2376,  2377,    -1,    -1,  2380,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2390,  2391,
       -1,  2393,  2394,    -1,  2396,  2397,  2398,  2399,    -1,  2401,
       -1,    -1,  2404,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  2413,    -1,    -1,    -1,    -1,   476,    -1,  2420,    -1,
+      -1,  2413,    -1,    -1,    -1,    -1,    -1,    -1,  2420,    -1,
     2422,    -1,  2424,  2425,    -1,  2427,  2428,    -1,    -1,    -1,
     2432,  2433,  2434,    -1,    -1,    -1,  2438,  2439,  2440,    -1,
     2442,    -1,  2444,    -1,  2446,    -1,  2448,    -1,  2450,    -1,
       -1,    -1,    -1,  2455,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    2472,    -1,    -1,    -1,   534,   535,   536,  2479,    -1,    -1,
-    2482,   541,    -1,    -1,    -1,    -1,  2488,    -1,    -1,  2491,
-      -1,    -1,    -1,  2495,    -1,    -1,    -1,   557,    -1,    -1,
-     560,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  1162,    -1,    -1,  1165,    -1,    -1,    -1,    -1,   579,
+    2472,    -1,    -1,    -1,    -1,    -1,    -1,  2479,    -1,    -1,
+    2482,    -1,    -1,    -1,    -1,    -1,  2488,    -1,    -1,  2491,
+      -1,    -1,    -1,  2495,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,  1162,    -1,    -1,  1165,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   597,    -1,  1190,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1190,
     1191,    -1,    -1,    -1,    -1,    -1,    -1,  2549,  1199,  1200,
       -1,    -1,  1203,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
       -1,    -1,    -1,  2565,  2566,  2567,    -1,  2569,  1219,  1220,
@@ -12183,7 +12196,7 @@ static const yytype_int16 yycheck[] =
       -1,  1922,    -1,  1924,    -1,    -1,    -1,    -1,    -1,    -1,
      630,    -1,    -1,  3285,    -1,    -1,    -1,    -1,   638,    -1,
       -1,    -1,    -1,    -1,   644,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   657,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   659,
      119,    -1,    -1,   122,    -1,    -1,  3318,    -1,    -1,    -1,
       -1,   130,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -12258,7 +12271,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,   630,   104,    -1,    -1,    -1,
       -1,    -1,    -1,   638,  4036,    -1,    -1,    -1,    -1,   644,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     128,    -1,   657,    -1,    -1,    -1,    -1,    -1,   136,    -1,
+     128,    -1,    -1,    -1,   659,    -1,    -1,    -1,   136,    -1,
      138,   139,    -1,    -1,    -1,    -1,    -1,  4069,    -1,    -1,
       -1,  4073,    -1,   151,   152,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -12285,67 +12298,67 @@ static const yytype_int16 yycheck[] =
       -1,    -1,  2943,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     4302,  2952,    -1,  2954,   382,  2956,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,  4317,    -1,  4319,    -1,    -1,
-      -1,   399,    -1,   401,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   414,    -1,    -1,    -1,
+      -1,   399,    -1,   401,    -1,    -1,    -1,    -1,    -1,     6,
+      -1,    -1,    -1,    -1,    -1,    12,   414,    14,    -1,    -1,
       -1,    -1,  4344,    -1,    -1,    -1,  4348,   425,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    28,    -1,    30,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   447,
       -1,    -1,   450,    -1,   452,    -1,    -1,   455,    -1,    -1,
-     458,   459,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     458,   459,    -1,    60,    -1,    -1,    -1,    -1,    65,    -1,
       -1,   469,    -1,    -1,   472,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   480,    -1,    -1,    -1,    -1,    -1,   486,  4411,
-      -1,    -1,    -1,    -1,    -1,    -1,   494,    -1,    -1,    -1,
-      -1,   499,   500,   501,    -1,    -1,    -1,    -1,    -1,  4431,
+      -1,    -1,   480,    -1,    -1,    -1,    83,    -1,   486,  4411,
+      -1,    -1,    -1,    -1,    91,    -1,   494,    -1,    -1,    -1,
+      -1,   499,   500,   501,   101,    -1,    -1,    -1,    -1,  4431,
       -1,    -1,    -1,    -1,    -1,  4437,    -1,    -1,  3089,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4450,    -1,
-      -1,    -1,    -1,    -1,   532,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   540,    -1,    -1,  3116,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,  3136,    -1,    -1,    -1,    -1,
+      -1,   118,    -1,    -1,    -1,    -1,    -1,    -1,  4450,    -1,
+      -1,    -1,    -1,    -1,   532,   132,    -1,    -1,   135,    -1,
+      -1,    -1,   540,    -1,    -1,  3116,    -1,   144,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   152,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   160,    -1,  3136,    -1,    -1,    -1,   166,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,   584,    -1,    -1,    -1,
-      -1,    -1,  4514,    -1,    -1,    -1,    -1,  4519,   596,    -1,
+      -1,    -1,  4514,    -1,    -1,    -1,    -1,  4519,   596,   196,
       -1,    -1,   600,    -1,  4526,   603,    -1,    -1,    -1,    -1,
      608,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     638,    -1,    -1,    -1,    -1,    -1,   644,    -1,    -1,    -1,
-      -1,    -1,    -1,  4575,    -1,    -1,    -1,    -1,    -1,   657,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   232,    -1,   234,    -1,    -1,
+     638,    -1,    -1,    -1,   241,    -1,   644,    -1,    -1,    -1,
+      -1,   248,    -1,  4575,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   659,    -1,    -1,    -1,    -1,   263,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     287,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,  4635,    -1,    -1,    -1,    -1,    -1,  4641,
+      -1,    -1,    -1,   320,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   339,    -1,    -1,    -1,   343,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,  4684,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     4692,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,  3363,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  4723,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4731,
+     387,    -1,  3363,    -1,    -1,    -1,    -1,   394,    -1,   396,
+      -1,  4723,    -1,    -1,    -1,    -1,    -1,   404,    -1,  4731,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,  3393,    -1,    -1,    -1,  3397,  3398,    -1,  4751,
       -1,  4753,  4754,    -1,    -1,    -1,    -1,    -1,  3409,    -1,
       -1,    -1,    -1,  3414,    -1,    -1,  3417,    -1,  3419,  3420,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,  4779,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   450,    -1,    -1,    -1,  4779,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   476,
       -1,  4803,    -1,    -1,  4806,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,  4838,    -1,    -1,  3490,
       -1,    -1,    -1,    -1,    -1,    -1,  4848,    -1,    -1,    -1,
-      -1,  4853,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,  4853,    -1,    -1,    -1,    -1,    -1,   534,   535,   536,
+      -1,    -1,    -1,    -1,   541,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,  3524,    -1,    -1,  4878,    -1,    -1,    -1,
+     557,    -1,    -1,   560,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,  4903,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,  4903,   579,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3561,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     597,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3581,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -12521,75 +12534,208 @@ static const yytype_int16 yycheck[] =
      613,   614,    -1,    -1,   617,   618,    -1,   620,   621,   622,
      623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
       -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,   651,    -1,
-      -1,    -1,    -1,   656,   657,    -1,    -1,   660,   661,    -1,
-      -1,   664,   665,     5,    -1,     7,     8,     9,    10,    11,
-      12,    13,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,
-      22,    -1,    24,    25,    26,    27,    28,    29,    30,    31,
-      32,    -1,    34,    -1,    -1,    37,    38,    39,    40,    41,
-      42,    43,    -1,    45,    46,    47,    -1,    49,    -1,    51,
-      52,    -1,    -1,    55,    56,    57,    58,    59,    -1,    61,
-      62,    63,    64,    65,    -1,    67,    68,    69,    70,    71,
-      72,    -1,    74,    75,    76,    77,    78,    79,    80,    -1,
-      82,    83,    84,    85,    86,    87,    88,    89,    -1,    91,
-      92,    -1,    94,    95,    96,    97,    98,    -1,   100,   101,
-     102,   103,    -1,    -1,   106,   107,   108,   109,   110,   111,
-      -1,   113,   114,   115,    -1,   117,   118,   119,   120,   121,
-     122,    -1,    -1,    -1,    -1,   127,   128,   129,    -1,    -1,
-     132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,
-     142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,
-      -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,
-     162,   163,    -1,   165,   166,   167,    -1,   169,   170,    -1,
-     172,   173,   174,   175,   176,   177,   178,   179,    -1,   181,
-     182,   183,   184,   185,   186,   187,   188,    -1,   190,   191,
-     192,   193,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,
-     202,    -1,   204,    -1,   206,   207,   208,   209,   210,   211,
-     212,    -1,   214,    -1,   216,   217,   218,   219,    -1,   221,
-     222,   223,    -1,   225,   226,    -1,    -1,    -1,   230,   231,
-     232,   233,   234,   235,    -1,    -1,   238,   239,   240,    -1,
-      -1,   243,    -1,    -1,    -1,   247,   248,   249,   250,    -1,
-      -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,
-      -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,
-      -1,   273,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,
-     282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,
-     292,    -1,    -1,    -1,   296,   297,   298,   299,   300,   301,
-     302,   303,   304,   305,   306,   307,   308,   309,   310,   311,
-      -1,   313,   314,   315,   316,   317,   318,   319,   320,   321,
-     322,   323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,
-     332,   333,   334,   335,    -1,    -1,   338,   339,   340,   341,
-      -1,   343,   344,   345,   346,   347,   348,   349,   350,   351,
-     352,   353,   354,    -1,   356,   357,    -1,    -1,   360,   361,
-     362,   363,   364,   365,   366,   367,   368,    -1,   370,   371,
-     372,    -1,   374,   375,   376,   377,   378,   379,   380,   381,
-      -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   393,   394,   395,    -1,   397,   398,    -1,   400,    -1,
-     402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
-     412,    -1,   414,   415,   416,    -1,   418,    -1,   420,   421,
-     422,   423,   424,    -1,   426,   427,   428,    -1,    -1,   431,
-      -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,
-     442,   443,   444,   445,   446,    -1,   448,   449,    -1,   451,
-     452,   453,   454,   455,   456,    -1,   458,    -1,   460,   461,
-      -1,   463,   464,    -1,   466,    -1,   468,    -1,   470,   471,
-     472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
-     482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,
-     492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,
-     502,   503,   504,   505,   506,   507,    -1,   509,   510,   511,
-     512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,
-     522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,
-     532,   533,    -1,    -1,    -1,   537,   538,   539,   540,   541,
-      -1,   543,   544,   545,   546,   547,   548,   549,   550,   551,
-     552,   553,   554,   555,   556,   557,    -1,    -1,   560,   561,
-     562,   563,    -1,   565,   566,   567,    -1,   569,   570,   571,
-     572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,
-     582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
-     592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,
-     602,    -1,   604,    -1,   606,   607,    -1,    -1,   610,   611,
-     612,   613,   614,    -1,    -1,   617,   618,    -1,   620,   621,
-     622,   623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,
-      -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,
-     642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,   651,
-      -1,    -1,    -1,    -1,   656,   657,    -1,    -1,   660,   661,
-      -1,    -1,   664,   665,     5,    -1,     7,     8,     9,    10,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   652,
+     653,    -1,    -1,    -1,    -1,   658,   659,    -1,    -1,   662,
+     663,    -1,    -1,   666,   667,     5,    -1,     7,     8,     9,
+      10,    11,    12,    13,    -1,    15,    -1,    -1,    -1,    19,
+      -1,    -1,    22,    -1,    24,    25,    26,    27,    28,    29,
+      30,    31,    32,    -1,    34,    -1,    -1,    37,    38,    39,
+      40,    41,    42,    43,    -1,    45,    46,    47,    -1,    49,
+      -1,    51,    52,    -1,    -1,    55,    56,    57,    58,    59,
+      -1,    61,    62,    63,    64,    65,    -1,    67,    68,    69,
+      70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
+      80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
+      -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
+     100,   101,   102,   103,    -1,    -1,   106,   107,   108,   109,
+     110,   111,    -1,   113,   114,   115,    -1,   117,   118,   119,
+     120,   121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,
+      -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,
+     140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
+      -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
+     160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
+     170,    -1,   172,   173,   174,   175,   176,   177,   178,   179,
+      -1,   181,   182,   183,   184,   185,   186,   187,   188,    -1,
+     190,   191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,
+     200,    -1,   202,    -1,   204,    -1,   206,   207,   208,   209,
+     210,   211,   212,    -1,   214,    -1,   216,   217,   218,   219,
+      -1,   221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,
+     230,   231,   232,   233,   234,   235,    -1,    -1,   238,   239,
+     240,    -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,
+     250,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
+      -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
+      -1,   271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,
+      -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
+      -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,
+     300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
+     310,   311,    -1,   313,   314,   315,   316,   317,   318,   319,
+     320,   321,   322,   323,   324,   325,    -1,    -1,    -1,    -1,
+     330,   331,   332,   333,   334,   335,    -1,    -1,   338,   339,
+     340,   341,    -1,   343,   344,   345,   346,   347,   348,   349,
+     350,   351,   352,   353,   354,    -1,   356,   357,    -1,    -1,
+     360,   361,   362,   363,   364,   365,   366,   367,   368,    -1,
+     370,   371,   372,    -1,   374,   375,   376,   377,   378,   379,
+     380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,
+     400,    -1,   402,   403,   404,   405,   406,   407,   408,   409,
+     410,   411,   412,    -1,   414,   415,   416,    -1,   418,    -1,
+     420,   421,   422,   423,   424,    -1,   426,   427,   428,    -1,
+      -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,   439,
+      -1,    -1,   442,   443,   444,   445,   446,    -1,   448,   449,
+      -1,   451,   452,   453,   454,   455,   456,    -1,   458,    -1,
+     460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
+     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
+     480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
+     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
+     500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
+     510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
+      -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
+      -1,   531,   532,   533,    -1,    -1,    -1,   537,   538,   539,
+     540,   541,    -1,   543,   544,   545,   546,   547,   548,   549,
+     550,   551,   552,   553,   554,   555,   556,   557,    -1,    -1,
+     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
+     570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
+     580,    -1,   582,   583,   584,   585,   586,   587,   588,   589,
+     590,   591,   592,   593,    -1,   595,   596,    -1,    -1,   599,
+      -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,
+     610,   611,   612,   613,   614,    -1,    -1,   617,   618,    -1,
+     620,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
+      -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
+      -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   652,   653,    -1,    -1,    -1,    -1,   658,   659,
+      -1,    -1,   662,   663,    -1,    -1,   666,   667,     5,    -1,
+       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
+      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
+      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
+      37,    38,    39,    40,    41,    42,    43,    -1,    45,    46,
+      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    56,
+      57,    58,    59,    -1,    61,    62,    63,    64,    65,    -1,
+      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
+      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
+      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
+      97,    98,    -1,   100,   101,   102,   103,    -1,    -1,   106,
+     107,   108,   109,   110,   111,    -1,   113,   114,   115,    -1,
+     117,   118,   119,   120,   121,   122,    -1,    -1,    -1,    -1,
+     127,   128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,
+      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
+      -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
+      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
+     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
+     177,   178,   179,    -1,   181,   182,   183,   184,   185,   186,
+     187,   188,    -1,   190,   191,   192,   193,    -1,   195,    -1,
+      -1,    -1,   199,   200,   201,   202,    -1,   204,    -1,   206,
+     207,   208,   209,   210,   211,   212,    -1,   214,    -1,   216,
+     217,   218,   219,    -1,   221,   222,   223,    -1,   225,   226,
+      -1,    -1,    -1,   230,   231,   232,   233,   234,   235,    -1,
+      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
+     247,   248,   249,   250,    -1,    -1,   253,    -1,   255,   256,
+      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
+     267,   268,    -1,    -1,   271,    -1,   273,   274,   275,    -1,
+      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
+      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
+     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
+     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
+     317,   318,   319,   320,   321,   322,   323,   324,   325,    -1,
+      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
+      -1,   338,   339,   340,   341,    -1,   343,   344,   345,   346,
+     347,   348,   349,   350,   351,   352,   353,   354,    -1,   356,
+     357,    -1,    -1,   360,   361,   362,   363,   364,   365,   366,
+     367,   368,    -1,   370,   371,   372,    -1,   374,   375,   376,
+      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
+     397,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
+     407,   408,   409,   410,   411,   412,    -1,   414,   415,   416,
+      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
+     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
+     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
+      -1,   448,   449,    -1,   451,   452,   453,   454,   455,   456,
+      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
+      -1,   468,    -1,   470,   471,   472,   473,   474,   475,   476,
+     477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
+      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
+      -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
+     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
+      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
+     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
+     537,   538,   539,   540,   541,    -1,   543,   544,   545,   546,
+     547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
+     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
+      -1,   578,   579,   580,    -1,   582,   583,   584,   585,   586,
+     587,   588,   589,   590,   591,   592,   593,    -1,   595,   596,
+      -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
+     607,    -1,    -1,   610,   611,   612,   613,   614,    -1,    -1,
+     617,   618,    -1,   620,   621,   622,   623,   624,   625,   626,
+     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
+     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   652,   653,    -1,    -1,    -1,
+      -1,   658,   659,    -1,    -1,   662,   663,    -1,    -1,   666,
+     667,     5,    -1,     7,     8,     9,    10,    11,    12,    -1,
+      -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,
+      24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
+      34,    -1,    -1,    37,    38,    39,    40,    41,    42,    43,
+      -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
+      -1,    55,    56,    57,    58,    59,    -1,    61,    62,    63,
+      64,    65,    -1,    67,    68,    69,    70,    71,    72,    -1,
+      74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
+      84,    85,    86,    87,    88,    89,    -1,    91,    92,    -1,
+      94,    95,    96,    97,    98,    -1,   100,   101,   102,   103,
+      -1,    -1,   106,   107,   108,   109,   110,   111,    -1,   113,
+     114,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
+      -1,    -1,    -1,   127,   128,   129,    -1,    -1,   132,   133,
+      -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
+     144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,
+     154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,
+      -1,   165,   166,   167,    -1,   169,   170,    -1,   172,   173,
+     174,   175,   176,   177,   178,   179,    -1,   181,   182,   183,
+     184,   185,   186,   187,   188,    -1,   190,   191,   192,   193,
+      -1,   195,    -1,    -1,    -1,   199,   200,   201,   202,    -1,
+     204,    -1,   206,   207,   208,   209,   210,   211,   212,    -1,
+     214,    -1,   216,   217,   218,   219,    -1,   221,   222,   223,
+      -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,   233,
+     234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,   243,
+      -1,    -1,    -1,   247,   248,   249,   250,    -1,    -1,   253,
+      -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
+      -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,   273,
+     274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,
+     284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,    -1,
+      -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
+     304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
+     314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
+     324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,
+     334,   335,    -1,    -1,   338,   339,   340,   341,    -1,   343,
+     344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
+     354,    -1,   356,   357,    -1,    -1,   360,   361,   362,   363,
+     364,   365,   366,   367,   368,    -1,   370,   371,   372,    -1,
+     374,   375,   376,    -1,   378,   379,   380,   381,    -1,   383,
+     384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,
+     394,   395,    -1,   397,   398,    -1,   400,    -1,   402,   403,
+     404,   405,   406,   407,   408,   409,   410,   411,   412,    -1,
+     414,   415,   416,    -1,   418,    -1,   420,   421,   422,   423,
+     424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,
+      -1,   435,   436,   437,   438,   439,    -1,    -1,   442,   443,
+     444,   445,   446,    -1,   448,   449,    -1,   451,   452,   453,
+     454,   455,   456,    -1,   458,    -1,   460,   461,    -1,   463,
+     464,    -1,   466,    -1,   468,    -1,   470,   471,   472,   473,
+     474,   475,   476,   477,   478,   479,   480,   481,   482,    -1,
+     484,   485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,
+      -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,
+     504,   505,   506,   507,    -1,   509,   510,   511,   512,   513,
+     514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,
+     524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,
+      -1,    -1,    -1,   537,   538,   539,   540,   541,    -1,   543,
+     544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
+     554,   555,   556,   557,    -1,    -1,   560,   561,   562,   563,
+      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
+      -1,    -1,    -1,    -1,   578,   579,   580,    -1,   582,   583,
+     584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
+      -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
+     604,    -1,   606,   607,    -1,    -1,   610,   611,   612,   613,
+     614,    -1,    -1,   617,   618,    -1,   620,   621,   622,   623,
+     624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
+     634,   635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   652,   653,
+      -1,    -1,    -1,    -1,   658,   659,    -1,    -1,   662,   663,
+      -1,    -1,   666,   667,     5,    -1,     7,     8,     9,    10,
       11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
       -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
       31,    32,    -1,    34,    -1,    -1,    37,    38,    39,    40,
@@ -12653,141 +12799,9 @@ static const yytype_int16 yycheck[] =
      611,   612,   613,   614,    -1,    -1,   617,   618,    -1,   620,
      621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
       -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,
-     651,    -1,    -1,    -1,    -1,   656,   657,    -1,    -1,   660,
-     661,    -1,    -1,   664,   665,     5,    -1,     7,     8,     9,
-      10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,
-      -1,    -1,    22,    -1,    24,    25,    26,    27,    28,    29,
-      30,    31,    32,    -1,    34,    -1,    -1,    37,    38,    39,
-      40,    41,    42,    43,    -1,    45,    46,    47,    -1,    49,
-      -1,    51,    52,    -1,    -1,    55,    56,    57,    58,    59,
-      -1,    61,    62,    63,    64,    65,    -1,    67,    68,    69,
-      70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
-      80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
-      -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
-     100,   101,   102,   103,    -1,    -1,   106,   107,   108,   109,
-     110,   111,    -1,   113,   114,   115,    -1,   117,   118,   119,
-     120,   121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,
-      -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,
-     140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
-      -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
-     160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
-     170,    -1,   172,   173,   174,   175,   176,   177,   178,   179,
-      -1,   181,   182,   183,   184,   185,   186,   187,   188,    -1,
-     190,   191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,
-     200,   201,   202,    -1,   204,    -1,   206,   207,   208,   209,
-     210,   211,   212,    -1,   214,    -1,   216,   217,   218,   219,
-      -1,   221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,
-     230,   231,   232,   233,   234,   235,    -1,    -1,   238,   239,
-     240,    -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,
-     250,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
-      -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
-      -1,   271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,
-      -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
-      -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,
-     300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
-     310,   311,    -1,   313,   314,   315,   316,   317,   318,   319,
-     320,   321,   322,   323,   324,   325,    -1,    -1,    -1,    -1,
-     330,   331,   332,   333,   334,   335,    -1,    -1,   338,   339,
-     340,   341,    -1,   343,   344,   345,   346,   347,   348,   349,
-     350,   351,   352,   353,   354,    -1,   356,   357,    -1,    -1,
-     360,   361,   362,   363,   364,   365,   366,   367,   368,    -1,
-     370,   371,   372,    -1,   374,   375,   376,    -1,   378,   379,
-     380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,
-     400,    -1,   402,   403,   404,   405,   406,   407,   408,   409,
-     410,   411,   412,    -1,   414,   415,   416,    -1,   418,    -1,
-     420,   421,   422,   423,   424,    -1,   426,   427,   428,    -1,
-      -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,   439,
-      -1,    -1,   442,   443,   444,   445,   446,    -1,   448,   449,
-      -1,   451,   452,   453,   454,   455,   456,    -1,   458,    -1,
-     460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
-     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
-     480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
-     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
-     500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
-     510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
-      -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
-      -1,   531,   532,   533,    -1,    -1,    -1,   537,   538,   539,
-     540,   541,    -1,   543,   544,   545,   546,   547,   548,   549,
-     550,   551,   552,   553,   554,   555,   556,   557,    -1,    -1,
-     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
-     570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
-     580,    -1,   582,   583,   584,   585,   586,   587,   588,   589,
-     590,   591,   592,   593,    -1,   595,   596,    -1,    -1,   599,
-      -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,
-     610,   611,   612,   613,   614,    -1,    -1,   617,   618,    -1,
-     620,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
-      -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
-      -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     650,   651,    -1,    -1,    -1,    -1,   656,   657,    -1,    -1,
-     660,   661,    -1,    -1,   664,   665,     5,    -1,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    37,    38,
-      39,    40,    41,    42,    43,    -1,    45,    46,    47,    -1,
-      49,    -1,    51,    52,    -1,    -1,    55,    56,    57,    58,
-      59,    -1,    61,    62,    63,    64,    65,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
-      79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
-      -1,   100,   101,   102,   103,    -1,    -1,   106,   107,   108,
-     109,   110,   111,    -1,   113,   114,   115,    -1,   117,   118,
-     119,   120,   121,   122,    -1,    -1,    -1,    -1,   127,   128,
-     129,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,
-      -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
-      -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
-      -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
-     169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
-     179,    -1,   181,   182,   183,   184,   185,   186,   187,   188,
-      -1,   190,   191,   192,   193,    -1,   195,    -1,    -1,    -1,
-     199,   200,   201,   202,    -1,   204,    -1,   206,   207,   208,
-     209,   210,   211,   212,    -1,   214,    -1,   216,   217,   218,
-     219,    -1,   221,   222,   223,    -1,   225,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,   235,    -1,    -1,   238,
-     239,   240,    -1,    -1,   243,    -1,    -1,    -1,   247,   248,
-     249,   250,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,   273,   274,   275,    -1,    -1,    -1,
-      -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,
-     299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
-     309,   310,   311,    -1,   313,   314,   315,   316,   317,   318,
-     319,   320,   321,   322,   323,   324,   325,    -1,    -1,    -1,
-      -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
-     339,   340,   341,    -1,   343,   344,   345,   346,   347,   348,
-     349,   350,   351,   352,   353,   354,    -1,   356,   357,    -1,
-      -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
-      -1,   370,   371,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,
-      -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
-     409,   410,   411,   412,    -1,   414,   415,   416,    -1,   418,
-      -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
-      -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
-     439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-     449,    -1,   451,   452,   453,   454,   455,   456,    -1,   458,
-      -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
-      -1,   470,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
-     489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
-      -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
-      -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
-      -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,   538,
-     539,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
-     549,   550,   551,   552,   553,   554,   555,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,   565,   566,   567,    -1,
-     569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,   582,   583,   584,   585,   586,   587,   588,
-     589,   590,   591,   592,   593,    -1,   595,   596,    -1,    -1,
-     599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
-      -1,   610,   611,   612,   613,   614,    -1,    -1,   617,   618,
-      -1,   620,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
-     639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   650,   651,    -1,    -1,    -1,    -1,   656,   657,    -1,
-      -1,   660,   661,    -1,    -1,   664,   665,     5,    -1,     7,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   652,   653,    -1,    -1,    -1,    -1,   658,   659,    -1,
+      -1,   662,   663,    -1,    -1,   666,   667,     5,    -1,     7,
        8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
       -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,    27,
       28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    37,
@@ -12852,140 +12866,8 @@ static const yytype_int16 yycheck[] =
      618,    -1,   620,   621,   622,   623,   624,   625,   626,   627,
       -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
      638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   650,   651,    -1,    -1,    -1,    -1,   656,   657,
-      -1,    -1,   660,   661,    -1,    -1,   664,   665,     5,    -1,
-       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
-      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
-      37,    38,    39,    40,    41,    42,    43,    -1,    45,    46,
-      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    56,
-      57,    58,    59,    -1,    61,    62,    63,    64,    65,    -1,
-      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
-      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
-      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
-      97,    98,    -1,   100,   101,   102,   103,    -1,    -1,   106,
-     107,   108,   109,   110,   111,    -1,   113,   114,   115,    -1,
-     117,   118,   119,   120,   121,   122,    -1,    -1,    -1,    -1,
-     127,   128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,
-      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
-      -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
-      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
-     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
-     177,   178,   179,    -1,   181,   182,   183,   184,   185,   186,
-     187,   188,    -1,   190,   191,   192,   193,    -1,   195,    -1,
-      -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
-     207,   208,   209,   210,   211,   212,    -1,   214,    -1,   216,
-     217,   218,   219,    -1,   221,   222,   223,    -1,   225,   226,
-      -1,    -1,    -1,   230,   231,   232,   233,   234,   235,    -1,
-      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
-     247,   248,   249,   250,    -1,    -1,   253,    -1,   255,   256,
-      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,   273,   274,   275,    -1,
-      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
-     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
-     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
-     317,   318,   319,   320,   321,   322,   323,   324,   325,    -1,
-      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
-      -1,   338,   339,   340,   341,    -1,   343,   344,   345,   346,
-     347,   348,   349,   350,   351,   352,   353,   354,    -1,   356,
-     357,    -1,    -1,   360,   361,   362,   363,   364,   365,   366,
-     367,   368,    -1,   370,   371,   372,    -1,   374,   375,   376,
-      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
-     397,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
-     407,   408,   409,   410,   411,   412,    -1,   414,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
-     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
-     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
-      -1,   448,   449,    -1,   451,   452,   453,   454,   455,   456,
-      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
-      -1,   468,    -1,   470,   471,   472,   473,   474,   475,   476,
-     477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
-      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
-      -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
-     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
-      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
-     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
-     537,   538,   539,   540,   541,    -1,   543,   544,   545,   546,
-     547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
-     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
-      -1,   578,   579,   580,    -1,   582,   583,   584,   585,   586,
-     587,   588,   589,   590,   591,   592,   593,    -1,   595,   596,
-      -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
-     607,    -1,    -1,   610,   611,   612,   613,   614,    -1,    -1,
-     617,   618,    -1,   620,   621,   622,   623,   624,   625,   626,
-     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
-     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   650,   651,    -1,    -1,    -1,    -1,   656,
-     657,    -1,    -1,   660,   661,    -1,    -1,   664,   665,     5,
-      -1,     7,     8,     9,    10,    11,    12,    13,    -1,    15,
-      -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,
-      26,    27,    28,    29,    30,    31,    32,    -1,    34,    -1,
-      -1,    37,    38,    39,    40,    41,    42,    43,    -1,    45,
-      46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,
-      56,    57,    58,    59,    -1,    61,    62,    63,    64,    65,
-      -1,    67,    68,    69,    70,    71,    72,    -1,    74,    75,
-      76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
-      86,    87,    88,    89,    -1,    91,    92,    -1,    94,    95,
-      96,    97,    98,    -1,   100,   101,   102,   103,    -1,    -1,
-     106,   107,   108,   109,   110,   111,    -1,   113,   114,   115,
-      -1,   117,   118,   119,   120,   121,   122,    -1,    -1,    -1,
-      -1,   127,   128,   129,    -1,    -1,   132,   133,    -1,   135,
-      -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,
-     146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,
-     156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,
-     166,   167,    -1,   169,   170,    -1,   172,   173,   174,   175,
-     176,   177,   178,   179,    -1,   181,   182,   183,   184,   185,
-     186,   187,   188,    -1,   190,   191,   192,   193,    -1,   195,
-      -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,
-     206,   207,   208,   209,   210,   211,   212,    -1,   214,    -1,
-     216,   217,   218,   219,    -1,   221,   222,   223,    -1,   225,
-     226,    -1,    -1,    -1,   230,   231,   232,   233,   234,   235,
-      -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,
-      -1,   247,   248,   249,   250,    -1,    -1,   253,    -1,   255,
-     256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,
-     266,   267,   268,    -1,    -1,   271,    -1,   273,   274,   275,
-      -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,
-     286,    -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,
-     296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
-     306,   307,   308,   309,   310,   311,    -1,   313,   314,   315,
-     316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
-      -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,   335,
-      -1,    -1,   338,   339,   340,   341,    -1,   343,   344,   345,
-     346,   347,   348,   349,   350,   351,   352,   353,   354,    -1,
-     356,   357,    -1,    -1,   360,   361,   362,   363,   364,    -1,
-     366,   367,   368,    -1,   370,   371,   372,    -1,   374,   375,
-     376,    -1,   378,   379,   380,   381,    -1,   383,   384,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,
-      -1,   397,   398,    -1,   400,    -1,   402,   403,   404,   405,
-     406,   407,   408,   409,   410,   411,   412,    -1,   414,   415,
-     416,    -1,   418,    -1,   420,   421,   422,   423,   424,    -1,
-     426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,
-     436,   437,   438,   439,    -1,    -1,   442,   443,   444,   445,
-     446,    -1,   448,   449,    -1,   451,   452,   453,   454,   455,
-     456,    -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,
-     466,    -1,   468,    -1,   470,   471,   472,   473,   474,   475,
-     476,   477,   478,   479,   480,   481,   482,    -1,   484,   485,
-      -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,
-     496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,
-     506,   507,    -1,   509,   510,   511,   512,   513,   514,    -1,
-      -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,
-      -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,
-      -1,   537,   538,   539,   540,   541,    -1,   543,   544,   545,
-     546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
-     556,   557,    -1,    -1,   560,   561,   562,   563,    -1,   565,
-     566,   567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,
-      -1,    -1,   578,   579,   580,    -1,   582,   583,   584,   585,
-     586,   587,   588,   589,   590,   591,   592,   593,    -1,   595,
-     596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,
-     606,   607,    -1,    -1,   610,   611,   612,   613,   614,    -1,
-      -1,   617,   618,    -1,   620,   621,   622,   623,   624,   625,
-     626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,
-      -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   650,   651,    -1,    -1,    -1,    -1,
-     656,   657,    -1,    -1,   660,   661,    -1,    -1,   664,   665,
+      -1,    -1,    -1,    -1,   652,   653,    -1,    -1,    -1,    -1,
+     658,   659,    -1,    -1,   662,   663,    -1,    -1,   666,   667,
        5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
       15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
@@ -13050,142 +12932,10 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   617,   618,    -1,   620,   621,   622,   623,   624,
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   650,   651,    -1,    -1,    -1,
-      -1,   656,   657,    -1,    -1,   660,   661,    -1,    -1,   664,
-     665,     5,    -1,     7,     8,     9,    10,    11,    12,    -1,
-      -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,
-      24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
-      34,    -1,    -1,    37,    38,    39,    40,    41,    42,    43,
-      -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
-      -1,    55,    56,    57,    58,    59,    -1,    61,    62,    63,
-      64,    65,    -1,    67,    68,    69,    70,    71,    72,    -1,
-      74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
-      84,    85,    86,    87,    88,    89,    -1,    91,    92,    -1,
-      94,    95,    96,    97,    98,    -1,   100,   101,   102,   103,
-      -1,    -1,   106,   107,   108,   109,   110,   111,    -1,   113,
-     114,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
-      -1,    -1,    -1,   127,   128,   129,    -1,    -1,   132,   133,
-      -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
-     144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,
-     154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,
-      -1,   165,   166,   167,    -1,   169,   170,    -1,   172,   173,
-     174,   175,   176,   177,   178,   179,    -1,   181,   182,   183,
-     184,   185,   186,   187,   188,    -1,   190,   191,   192,   193,
-      -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,
-     204,    -1,   206,   207,   208,   209,   210,   211,   212,    -1,
-     214,    -1,   216,   217,   218,   219,    -1,   221,   222,   223,
-      -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,   233,
-     234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,   243,
-      -1,    -1,    -1,   247,   248,   249,   250,    -1,    -1,   253,
-      -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
-      -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,   273,
-     274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,
-     284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,    -1,
-      -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
-     304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
-     314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
-     324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,
-     334,   335,    -1,    -1,   338,   339,   340,   341,    -1,   343,
-     344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
-     354,    -1,   356,   357,    -1,    -1,   360,   361,   362,   363,
-     364,   365,   366,   367,   368,    -1,   370,   371,   372,    -1,
-     374,   375,   376,    -1,   378,   379,   380,   381,    -1,   383,
-     384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,
-     394,   395,    -1,   397,   398,    -1,   400,    -1,   402,   403,
-     404,   405,   406,   407,   408,   409,   410,   411,   412,    -1,
-     414,   415,   416,    -1,   418,    -1,   420,   421,   422,   423,
-     424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,
-      -1,   435,   436,   437,   438,   439,    -1,    -1,   442,   443,
-     444,   445,   446,    -1,   448,   449,    -1,   451,   452,   453,
-     454,   455,   456,    -1,   458,    -1,   460,   461,    -1,   463,
-     464,    -1,   466,    -1,   468,    -1,   470,   471,   472,   473,
-     474,   475,   476,   477,   478,   479,   480,   481,   482,    -1,
-     484,   485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,
-      -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,
-     504,   505,   506,   507,    -1,   509,   510,   511,   512,   513,
-     514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,
-     524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,
-      -1,    -1,    -1,   537,   538,   539,   540,   541,    -1,   543,
-     544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
-     554,   555,   556,   557,    -1,    -1,   560,   561,   562,   563,
-      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
-      -1,    -1,    -1,    -1,   578,   579,   580,    -1,   582,   583,
-     584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
-      -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
-     604,    -1,   606,   607,    -1,    -1,   610,   611,   612,   613,
-     614,    -1,    -1,   617,   618,    -1,   620,   621,   622,   623,
-     624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
-     634,   635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   650,   651,    -1,    -1,
-      -1,    -1,   656,   657,    -1,    -1,   660,   661,    -1,    -1,
-     664,   665,     5,    -1,     7,     8,     9,    10,    11,    12,
-      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
-      -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
-      -1,    34,    -1,    -1,    37,    38,    39,    40,    41,    42,
-      43,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
-      -1,    -1,    55,    56,    57,    58,    59,    -1,    61,    62,
-      63,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
-      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
-      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    97,    98,    -1,   100,   101,   102,
-     103,    -1,    -1,   106,   107,   108,   109,   110,   111,    -1,
-     113,   114,   115,    -1,   117,   118,   119,   120,   121,   122,
-      -1,    -1,    -1,    -1,   127,   128,   129,    -1,    -1,   132,
-     133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
-     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
-      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
-     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,   179,    -1,   181,   182,
-     183,   184,   185,   186,   187,   188,    -1,   190,   191,   192,
-     193,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
-      -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,   216,   217,   218,   219,    -1,   221,   222,
-     223,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,
-     243,    -1,    -1,    -1,   247,   248,   249,   250,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
-     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
-     273,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,
-      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
-     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
-     313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
-     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
-     333,   334,   335,    -1,    -1,   338,   339,   340,   341,    -1,
-     343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
-     353,   354,    -1,   356,   357,    -1,    -1,   360,   361,   362,
-     363,   364,   365,   366,   367,   368,    -1,   370,   371,   372,
-      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,   397,   398,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
-      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
-     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
-      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
-     453,   454,   455,   456,    -1,   458,    -1,   460,   461,    -1,
-     463,   464,    -1,   466,    -1,   468,    -1,   470,   471,   472,
-     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
-      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
-     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
-     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
-     533,    -1,    -1,    -1,   537,   538,   539,   540,   541,    -1,
-     543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
-     553,   554,   555,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,   565,   566,   567,    -1,   569,   570,   571,   572,
-      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,   582,
-     583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
-     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
-      -1,   604,    -1,   606,   607,    -1,    -1,   610,   611,   612,
-     613,   614,    -1,    -1,   617,   618,    -1,   620,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
-      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,   651,    -1,
-      -1,    -1,    -1,   656,   657,    -1,    -1,   660,   661,    -1,
-      -1,   664,   665,     5,    -1,     7,     8,     9,    10,    11,
-      12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,   652,   653,    -1,
+      -1,    -1,    -1,   658,   659,    -1,    -1,   662,   663,    -1,
+      -1,   666,   667,     5,    -1,     7,     8,     9,    10,    11,
+      12,    13,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,
       22,    -1,    24,    25,    26,    27,    28,    29,    30,    31,
       32,    -1,    34,    -1,    -1,    37,    38,    39,    40,    41,
       42,    43,    -1,    45,    46,    47,    -1,    49,    -1,    51,
@@ -13220,7 +12970,7 @@ static const yytype_int16 yycheck[] =
      332,   333,   334,   335,    -1,    -1,   338,   339,   340,   341,
       -1,   343,   344,   345,   346,   347,   348,   349,   350,   351,
      352,   353,   354,    -1,   356,   357,    -1,    -1,   360,   361,
-     362,   363,   364,   365,   366,   367,   368,    -1,   370,   371,
+     362,   363,   364,    -1,   366,   367,   368,    -1,   370,   371,
      372,    -1,   374,   375,   376,    -1,   378,   379,   380,   381,
       -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,   393,   394,   395,    -1,   397,   398,    -1,   400,    -1,
@@ -13248,141 +12998,9 @@ static const yytype_int16 yycheck[] =
      612,   613,   614,    -1,    -1,   617,   618,    -1,   620,   621,
      622,   623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,
       -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,
-     642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,   651,
-      -1,    -1,    -1,    -1,   656,   657,    -1,    -1,   660,   661,
-      -1,    -1,   664,   665,     5,    -1,     7,     8,     9,    10,
-      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
-      -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
-      31,    32,    -1,    34,    -1,    -1,    37,    38,    39,    40,
-      41,    42,    43,    -1,    45,    46,    47,    -1,    49,    -1,
-      51,    52,    -1,    -1,    55,    56,    57,    58,    59,    -1,
-      61,    62,    63,    64,    65,    -1,    67,    68,    69,    70,
-      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
-      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
-      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
-     101,   102,   103,    -1,    -1,   106,   107,   108,   109,   110,
-     111,    -1,   113,   114,   115,    -1,   117,   118,   119,   120,
-     121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,    -1,
-      -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
-      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
-     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
-      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
-      -1,   172,   173,   174,   175,   176,   177,   178,   179,    -1,
-     181,   182,   183,   184,   185,   186,   187,   188,    -1,   190,
-     191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,   200,
-      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
-     211,   212,    -1,   214,    -1,   216,   217,   218,   219,    -1,
-     221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,   230,
-     231,   232,   233,   234,   235,    -1,    -1,   238,   239,   240,
-      -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,   250,
-      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
-      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
-     271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,    -1,
-     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
-      -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,   300,
-     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
-     311,    -1,   313,   314,   315,   316,   317,   318,   319,   320,
-     321,   322,   323,   324,   325,   326,    -1,    -1,    -1,   330,
-     331,   332,   333,   334,   335,    -1,    -1,   338,   339,   340,
-     341,    -1,   343,   344,   345,   346,   347,   348,   349,   350,
-     351,   352,   353,   354,    -1,   356,   357,    -1,    -1,   360,
-     361,   362,   363,   364,    -1,   366,   367,   368,    -1,   370,
-     371,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
-     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,   400,
-      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
-     411,   412,    -1,   414,   415,   416,    -1,   418,    -1,   420,
-     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
-     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
-      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
-     451,   452,   453,   454,   455,   456,    -1,   458,    -1,   460,
-     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,   470,
-     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
-     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
-     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
-      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
-     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
-     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
-     531,   532,   533,    -1,    -1,    -1,   537,   538,   539,   540,
-     541,    -1,   543,   544,   545,   546,   547,   548,   549,   550,
-     551,   552,   553,   554,   555,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
-     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
-      -1,   582,   583,   584,   585,   586,   587,   588,   589,   590,
-     591,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
-      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,   610,
-     611,   612,   613,   614,    -1,    -1,   617,   618,    -1,   620,
-     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
-      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   650,
-     651,    -1,    -1,    -1,    -1,   656,   657,    -1,    -1,   660,
-     661,    -1,    -1,   664,   665,     5,    -1,     7,     8,     9,
-      10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,
-      -1,    -1,    22,    -1,    24,    25,    26,    27,    28,    29,
-      30,    31,    32,    -1,    34,    -1,    -1,    37,    38,    39,
-      40,    41,    42,    43,    -1,    45,    46,    47,    -1,    49,
-      -1,    51,    52,    -1,    -1,    55,    56,    57,    58,    59,
-      -1,    61,    62,    63,    64,    65,    -1,    67,    68,    69,
-      70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
-      80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
-      -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
-     100,   101,   102,   103,    -1,    -1,   106,   107,   108,   109,
-     110,   111,    -1,   113,   114,   115,    -1,   117,   118,   119,
-     120,   121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,
-      -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,
-     140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
-      -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
-     160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
-     170,    -1,   172,   173,   174,   175,   176,   177,   178,   179,
-      -1,   181,   182,   183,   184,   185,   186,   187,   188,    -1,
-     190,   191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,
-     200,    -1,   202,    -1,   204,    -1,   206,   207,   208,   209,
-     210,   211,   212,    -1,   214,    -1,   216,   217,   218,   219,
-      -1,   221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,
-     230,   231,   232,   233,   234,   235,    -1,    -1,   238,   239,
-     240,    -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,
-     250,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
-      -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
-      -1,   271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,
-      -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
-      -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,
-     300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
-     310,   311,    -1,   313,   314,   315,   316,   317,   318,   319,
-     320,   321,   322,   323,   324,   325,    -1,    -1,    -1,    -1,
-     330,   331,   332,   333,   334,   335,    -1,    -1,   338,   339,
-     340,   341,    -1,   343,   344,   345,   346,   347,   348,   349,
-     350,   351,   352,   353,   354,    -1,   356,   357,    -1,    -1,
-     360,   361,   362,   363,   364,    -1,   366,   367,   368,    -1,
-     370,   371,   372,    -1,   374,   375,   376,    -1,   378,   379,
-     380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,
-     400,    -1,   402,   403,   404,   405,   406,   407,   408,   409,
-     410,   411,   412,    -1,   414,   415,   416,    -1,   418,    -1,
-     420,   421,   422,   423,   424,    -1,   426,   427,   428,    -1,
-      -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,   439,
-      -1,    -1,   442,   443,   444,   445,   446,    -1,   448,   449,
-      -1,   451,   452,   453,   454,   455,   456,    -1,   458,    -1,
-     460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
-     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
-     480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
-     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
-     500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
-     510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
-      -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
-      -1,   531,   532,   533,    -1,    -1,    -1,   537,   538,   539,
-     540,   541,    -1,   543,   544,   545,   546,   547,   548,   549,
-     550,   551,   552,   553,   554,   555,   556,   557,    -1,    -1,
-     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
-     570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
-     580,    -1,   582,   583,   584,   585,   586,   587,   588,   589,
-     590,   591,   592,   593,    -1,   595,   596,    -1,    -1,   599,
-      -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,
-     610,   611,   612,   613,   614,    -1,    -1,   617,   618,    -1,
-     620,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
-      -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
-      -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     650,   651,    -1,    -1,    -1,    -1,   656,   657,    -1,    -1,
-     660,   661,    -1,    -1,   664,   665,     5,    -1,     7,     8,
+     642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     652,   653,    -1,    -1,    -1,    -1,   658,   659,    -1,    -1,
+     662,   663,    -1,    -1,   666,   667,     5,    -1,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
       29,    30,    31,    32,    -1,    34,    -1,    -1,    37,    38,
@@ -13418,7 +13036,7 @@ static const yytype_int16 yycheck[] =
       -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
      339,   340,   341,    -1,   343,   344,   345,   346,   347,   348,
      349,   350,   351,   352,   353,   354,    -1,   356,   357,    -1,
-      -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
+      -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
       -1,   370,   371,   372,    -1,   374,   375,   376,    -1,   378,
      379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,
@@ -13447,598 +13065,546 @@ static const yytype_int16 yycheck[] =
       -1,   620,   621,   622,   623,   624,   625,   626,   627,    -1,
       -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
      639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   650,   651,    -1,    -1,    -1,    -1,   656,   657,    -1,
-      -1,   660,   661,    -1,    -1,   664,   665,     5,    -1,     7,
-       8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
-      -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,    27,
-      28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    37,
-      38,    39,    40,    41,    42,    43,    -1,    45,    46,    47,
-      -1,    49,    -1,    51,    52,    -1,    -1,    55,    56,    57,
-      58,    59,    -1,    61,    62,    63,    64,    65,    -1,    67,
-      68,    69,    70,    71,    72,    -1,    74,    75,    76,    77,
-      78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
-      88,    89,    -1,    91,    92,    -1,    94,    95,    96,    97,
-      98,    -1,   100,   101,   102,   103,    -1,    -1,   106,   107,
-     108,   109,   110,   111,    -1,   113,   114,   115,    -1,   117,
-     118,   119,   120,   121,   122,    -1,    -1,    -1,    -1,   127,
-     128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,
-      -1,    -1,   140,    -1,   142,   143,   144,   145,   146,    -1,
-      -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,
-      -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,   167,
-      -1,   169,   170,    -1,   172,   173,   174,   175,   176,   177,
-     178,   179,    -1,   181,   182,   183,   184,   185,   186,   187,
-     188,    -1,   190,   191,   192,   193,    -1,   195,    -1,    -1,
-      -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,   207,
-     208,   209,   210,   211,   212,    -1,   214,    -1,   216,   217,
-     218,   219,    -1,   221,   222,   223,    -1,   225,   226,    -1,
-      -1,    -1,   230,   231,   232,   233,   234,   235,    -1,    -1,
-     238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,   247,
-     248,   249,   250,    -1,    -1,   253,    -1,   255,   256,    -1,
-     258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,
-     268,    -1,    -1,   271,    -1,   273,   274,   275,    -1,    -1,
-      -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,
-     288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,   297,
-     298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
-     308,   309,   310,   311,    -1,   313,   314,   315,   316,   317,
-     318,   319,   320,   321,   322,   323,   324,   325,    -1,    -1,
-      -1,    -1,   330,   331,   332,   333,   334,   335,    -1,    -1,
-     338,   339,   340,   341,    -1,   343,   344,   345,   346,   347,
-     348,   349,   350,   351,   352,   353,   354,    -1,   356,   357,
-      -1,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
-     368,    -1,   370,   371,   372,    -1,   374,   375,   376,    -1,
-     378,   379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,
-     398,    -1,   400,    -1,   402,   403,   404,   405,   406,   407,
-     408,   409,   410,   411,   412,    -1,   414,   415,   416,    -1,
-     418,    -1,   420,   421,   422,   423,   424,    -1,   426,   427,
-     428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,
-     438,   439,    -1,    -1,   442,   443,   444,   445,   446,    -1,
-     448,   449,    -1,   451,   452,   453,   454,   455,   456,    -1,
-     458,    -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,
-     468,    -1,   470,   471,   472,   473,   474,   475,   476,   477,
-     478,   479,   480,   481,   482,    -1,   484,   485,    -1,    -1,
-      -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,
-      -1,    -1,   500,    -1,   502,   503,   504,   505,   506,   507,
-      -1,   509,   510,   511,   512,   513,   514,    -1,    -1,    -1,
-      -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,
-      -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,
-     538,   539,   540,   541,    -1,   543,   544,   545,   546,   547,
-     548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
-      -1,    -1,   560,   561,   562,   563,    -1,   565,   566,   567,
-      -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,
-     578,   579,   580,    -1,   582,   583,   584,   585,   586,   587,
-     588,   589,   590,   591,   592,   593,    -1,   595,   596,    -1,
-      -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,
-      -1,    -1,   610,   611,   612,   613,   614,    -1,    -1,   617,
-     618,    -1,   620,   621,   622,   623,   624,   625,   626,   627,
-      -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
-     638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   650,   651,    -1,    -1,    -1,    -1,   656,   657,
-      -1,    -1,   660,   661,    -1,    -1,   664,   665,     5,    -1,
-       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
-      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
-      -1,    38,    39,    -1,    -1,    42,    -1,    -1,    45,    46,
-      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
-      -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
-      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
-      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
-      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
-      97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
-      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
-     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,   129,    -1,    -1,    -1,   133,    -1,   135,    -1,
-      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
-      -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
-      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
-     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
-     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,   186,
-     187,   188,    -1,   190,   191,   192,   193,    -1,   195,    -1,
-      -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
-     207,   208,   209,   210,   211,   212,    -1,   214,    -1,    -1,
-     217,   218,   219,    -1,   221,   222,   223,    -1,   225,   226,
-      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
-      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
-      -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
-      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
-      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
-     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
-     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
-      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
-      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
-      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
-     347,   348,   349,   350,   351,   352,   353,   354,    -1,   356,
-     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-     367,   368,    -1,   370,   371,   372,    -1,   374,   375,   376,
-      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
-      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
-     407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
-     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
-     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
-      -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
-      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
-      -1,   468,    -1,    -1,   471,   472,   473,   474,   475,   476,
-     477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
-      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
-      -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
-     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
-      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
-     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
-     537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
-     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
-     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
-      -1,   578,   579,   580,    -1,    -1,   583,   584,   585,   586,
-     587,   588,   589,   590,   591,   592,   593,    -1,   595,   596,
-      -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
-     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
-     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
-     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
-     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
-      -1,    -1,     5,    -1,     7,     8,     9,    10,    11,    12,
-      -1,    -1,    15,    -1,    -1,    -1,    19,   664,   665,    22,
-      -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
-      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
-      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
-      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
-      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      93,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
-     103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
-     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
-      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
-     133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
-     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
-      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
-     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
-     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
-      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
-     203,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
-      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,    -1,    -1,    -1,   238,   239,   240,   241,    -1,
-     243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
-     263,   264,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
-      -1,   274,   275,    -1,   277,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
-      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
-     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
-     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
-     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
-     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
-     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
-     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
-      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
-      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
-     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
-      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
-     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
-     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
-     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
-      -1,   484,   485,   486,    -1,    -1,   489,   490,   491,   492,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
-     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
-     513,   514,   515,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
-     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
-     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
-     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
-      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
-     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
-      -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
-      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
-      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
-      -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
-      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
-      -1,    22,   665,    24,    25,    26,    27,    28,    29,    30,
-      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
-      -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
-      51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
-      61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
-      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
-      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
-      91,    92,    93,    94,    95,    96,    97,    98,    -1,   100,
-      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
-     111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
-      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
-      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
-      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
-     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
-      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
-      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
-     181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
-     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
-      -1,   202,   203,   204,    -1,   206,   207,   208,   209,   210,
-     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
-     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
-     231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
-     241,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
-      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
-      -1,    -1,   263,   264,    -1,   266,   267,   268,    -1,    -1,
-     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
-     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
-      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
-     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
-     311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
-     321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
-     331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
-     341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
-     351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
-     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
-      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
-     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
-      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
-     411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
-     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
-     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
-      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
-     451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
-     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
-     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
-     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
-     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
-      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
-     511,   512,   513,   514,   515,    -1,    -1,    -1,    -1,    -1,
-     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
-     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
-     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
-     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
-     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
-      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
-      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
-      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
-      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
-     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
-      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-      -1,   642,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,   665,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
-      -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
-      49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
-      59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
-      79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
-      -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
-      -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
-     119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
-      -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
-      -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
-      -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
-     169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
-      -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
-      -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
-     209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
-     219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
-     239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
-     249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
-      -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
-     299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
-     309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
-     319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
-      -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
-     339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
-     349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
-      -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
-      -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
-      -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
-     409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
-      -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
-      -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
-     439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-     449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,
-      -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
-      -1,    -1,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,   486,    -1,    -1,
-     489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
-      -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
-      -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
-      -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
-      -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
-      -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
-     569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
-     589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
-     599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
-      -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
-      -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
-     639,    -1,    -1,   642,    -1,    -1,    -1,    -1,     5,    -1,
-       7,     8,     9,    10,    11,    12,    -1,    -1,    15,   658,
-      -1,    -1,    19,    -1,    -1,    22,   665,    24,    25,    26,
-      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
-      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
-      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
-      -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
-      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
-      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
-      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
-      97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
-      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
-     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
-      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
-      -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
-      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
-     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
-     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
-     187,   188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,
-      -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
-     207,   208,   209,   210,   211,   212,    -1,   214,    -1,    -1,
-     217,   218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,
-      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
-      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
-      -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
-      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
-      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
-     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
-     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
-      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
-      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
-      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
-     347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
-     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
-      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
-      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
-     407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
-     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
-     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
-      -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
-      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
-      -1,   468,    -1,    -1,   471,   472,   473,   474,   475,   476,
-     477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
-      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
-      -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
-     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
-      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
-     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
-     537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
-     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,
-     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
-      -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
-     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
-      -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
-     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
-     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
-     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
-     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
-      -1,    -1,     5,    -1,     7,     8,     9,    10,    11,    12,
-      -1,   658,    15,    -1,    -1,    -1,    19,   664,   665,    22,
+      -1,    -1,    -1,   652,   653,    -1,    -1,    -1,    -1,   658,
+     659,    -1,    -1,   662,   663,    -1,    -1,   666,   667,     5,
+      -1,     7,     8,     9,    10,    11,    12,    -1,    -1,    15,
+      -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,
+      26,    27,    28,    29,    30,    31,    32,    -1,    34,    -1,
+      -1,    37,    38,    39,    40,    41,    42,    43,    -1,    45,
+      46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,
+      56,    57,    58,    59,    -1,    61,    62,    63,    64,    65,
+      -1,    67,    68,    69,    70,    71,    72,    -1,    74,    75,
+      76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
+      86,    87,    88,    89,    -1,    91,    92,    -1,    94,    95,
+      96,    97,    98,    -1,   100,   101,   102,   103,    -1,    -1,
+     106,   107,   108,   109,   110,   111,    -1,   113,   114,   115,
+      -1,   117,   118,   119,   120,   121,   122,    -1,    -1,    -1,
+      -1,   127,   128,   129,    -1,    -1,   132,   133,    -1,   135,
+      -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,
+     146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,
+     156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,
+     166,   167,    -1,   169,   170,    -1,   172,   173,   174,   175,
+     176,   177,   178,   179,    -1,   181,   182,   183,   184,   185,
+     186,   187,   188,    -1,   190,   191,   192,   193,    -1,   195,
+      -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,
+     206,   207,   208,   209,   210,   211,   212,    -1,   214,    -1,
+     216,   217,   218,   219,    -1,   221,   222,   223,    -1,   225,
+     226,    -1,    -1,    -1,   230,   231,   232,   233,   234,   235,
+      -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,
+      -1,   247,   248,   249,   250,    -1,    -1,   253,    -1,   255,
+     256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,
+     266,   267,   268,    -1,    -1,   271,    -1,   273,   274,   275,
+      -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,
+     286,    -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,
+     296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
+     306,   307,   308,   309,   310,   311,    -1,   313,   314,   315,
+     316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
+      -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,   335,
+      -1,    -1,   338,   339,   340,   341,    -1,   343,   344,   345,
+     346,   347,   348,   349,   350,   351,   352,   353,   354,    -1,
+     356,   357,    -1,    -1,   360,   361,   362,   363,   364,   365,
+     366,   367,   368,    -1,   370,   371,   372,    -1,   374,   375,
+     376,    -1,   378,   379,   380,   381,    -1,   383,   384,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,
+      -1,   397,   398,    -1,   400,    -1,   402,   403,   404,   405,
+     406,   407,   408,   409,   410,   411,   412,    -1,   414,   415,
+     416,    -1,   418,    -1,   420,   421,   422,   423,   424,    -1,
+     426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,
+     436,   437,   438,   439,    -1,    -1,   442,   443,   444,   445,
+     446,    -1,   448,   449,    -1,   451,   452,   453,   454,   455,
+     456,    -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,
+     466,    -1,   468,    -1,   470,   471,   472,   473,   474,   475,
+     476,   477,   478,   479,   480,   481,   482,    -1,   484,   485,
+      -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,
+     496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,
+     506,   507,    -1,   509,   510,   511,   512,   513,   514,    -1,
+      -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,
+      -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,
+      -1,   537,   538,   539,   540,   541,    -1,   543,   544,   545,
+     546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
+     556,   557,    -1,    -1,   560,   561,   562,   563,    -1,   565,
+     566,   567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,
+      -1,    -1,   578,   579,   580,    -1,   582,   583,   584,   585,
+     586,   587,   588,   589,   590,   591,   592,   593,    -1,   595,
+     596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,
+     606,   607,    -1,    -1,   610,   611,   612,   613,   614,    -1,
+      -1,   617,   618,    -1,   620,   621,   622,   623,   624,   625,
+     626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,
+      -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   652,   653,    -1,    -1,
+      -1,    -1,   658,   659,    -1,    -1,   662,   663,    -1,    -1,
+     666,   667,     5,    -1,     7,     8,     9,    10,    11,    12,
+      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
       -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
-      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
-      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
+      -1,    34,    -1,    -1,    37,    38,    39,    40,    41,    42,
+      43,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
+      -1,    -1,    55,    56,    57,    58,    59,    -1,    61,    62,
+      63,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
       -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
       83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
-     103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
-     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
-      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
+      -1,    94,    95,    96,    97,    98,    -1,   100,   101,   102,
+     103,    -1,    -1,   106,   107,   108,   109,   110,   111,    -1,
+     113,   114,   115,    -1,   117,   118,   119,   120,   121,   122,
+      -1,    -1,    -1,    -1,   127,   128,   129,    -1,    -1,   132,
      133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
      143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
       -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
      163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
-     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
-      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
+     173,   174,   175,   176,   177,   178,   179,    -1,   181,   182,
+     183,   184,   185,   186,   187,   188,    -1,   190,   191,   192,
+     193,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
       -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
-      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,
-     243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
-     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
-      -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
-      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
-     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
-     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
-     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
-     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
-     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
-     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
-      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
-      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
-     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
-      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
-     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
-     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
-     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
-      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
-     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
-     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
-     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
-     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
-     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
-      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
-     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
-      -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
-      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
-      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
-      -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,
-       9,    10,    11,    12,   657,    -1,    15,    -1,    -1,    -1,
-      19,    -1,   665,    22,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
-      -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
-      49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
-      59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
-      79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
-      -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
-      -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
-     119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
-      -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
-      -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
-      -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
-     169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
-      -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
-      -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
-     209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
-     219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
-     239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
-     249,    -1,   251,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
-      -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
-     299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
-     309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
-     319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
-      -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
-     339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
-     349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
-      -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
-      -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
-      -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
-     409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
-      -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
-      -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
-     439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-     449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,
-      -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
-      -1,    -1,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
-     489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
-      -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
-      -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
-      -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
-      -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
-      -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
-     569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
-     589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
-     599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
-      -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
-      -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
-     639,    -1,    -1,   642,    -1,    -1,    -1,    -1,     5,    -1,
+      -1,   214,    -1,   216,   217,   218,   219,    -1,   221,   222,
+     223,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
+     233,   234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,
+     243,    -1,    -1,    -1,   247,   248,   249,   250,    -1,    -1,
+     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
+     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
+     273,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
+      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,
+      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
+     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
+     313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
+     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
+     333,   334,   335,    -1,    -1,   338,   339,   340,   341,    -1,
+     343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
+     353,   354,    -1,   356,   357,    -1,    -1,   360,   361,   362,
+     363,   364,   365,   366,   367,   368,    -1,   370,   371,   372,
+      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
+     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     393,   394,   395,    -1,   397,   398,    -1,   400,    -1,   402,
+     403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
+      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
+     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
+      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
+     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
+     453,   454,   455,   456,    -1,   458,    -1,   460,   461,    -1,
+     463,   464,    -1,   466,    -1,   468,    -1,   470,   471,   472,
+     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
+      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
+      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
+     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
+     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
+      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
+     533,    -1,    -1,    -1,   537,   538,   539,   540,   541,    -1,
+     543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
+     553,   554,   555,   556,   557,    -1,    -1,   560,   561,   562,
+     563,    -1,   565,   566,   567,    -1,   569,   570,   571,   572,
+      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,   582,
+     583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
+     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
+      -1,   604,    -1,   606,   607,    -1,    -1,   610,   611,   612,
+     613,   614,    -1,    -1,   617,   618,    -1,   620,   621,   622,
+     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
+      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   652,
+     653,    -1,    -1,    -1,    -1,   658,   659,    -1,    -1,   662,
+     663,    -1,    -1,   666,   667,     5,    -1,     7,     8,     9,
+      10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,
+      -1,    -1,    22,    -1,    24,    25,    26,    27,    28,    29,
+      30,    31,    32,    -1,    34,    -1,    -1,    37,    38,    39,
+      40,    41,    42,    43,    -1,    45,    46,    47,    -1,    49,
+      -1,    51,    52,    -1,    -1,    55,    56,    57,    58,    59,
+      -1,    61,    62,    63,    64,    65,    -1,    67,    68,    69,
+      70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
+      80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
+      -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
+     100,   101,   102,   103,    -1,    -1,   106,   107,   108,   109,
+     110,   111,    -1,   113,   114,   115,    -1,   117,   118,   119,
+     120,   121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,
+      -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,
+     140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
+      -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
+     160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
+     170,    -1,   172,   173,   174,   175,   176,   177,   178,   179,
+      -1,   181,   182,   183,   184,   185,   186,   187,   188,    -1,
+     190,   191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,
+     200,    -1,   202,    -1,   204,    -1,   206,   207,   208,   209,
+     210,   211,   212,    -1,   214,    -1,   216,   217,   218,   219,
+      -1,   221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,
+     230,   231,   232,   233,   234,   235,    -1,    -1,   238,   239,
+     240,    -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,
+     250,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
+      -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
+      -1,   271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,
+      -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
+      -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,
+     300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
+     310,   311,    -1,   313,   314,   315,   316,   317,   318,   319,
+     320,   321,   322,   323,   324,   325,    -1,    -1,    -1,    -1,
+     330,   331,   332,   333,   334,   335,    -1,    -1,   338,   339,
+     340,   341,    -1,   343,   344,   345,   346,   347,   348,   349,
+     350,   351,   352,   353,   354,    -1,   356,   357,    -1,    -1,
+     360,   361,   362,   363,   364,   365,   366,   367,   368,    -1,
+     370,   371,   372,    -1,   374,   375,   376,    -1,   378,   379,
+     380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,
+     400,    -1,   402,   403,   404,   405,   406,   407,   408,   409,
+     410,   411,   412,    -1,   414,   415,   416,    -1,   418,    -1,
+     420,   421,   422,   423,   424,    -1,   426,   427,   428,    -1,
+      -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,   439,
+      -1,    -1,   442,   443,   444,   445,   446,    -1,   448,   449,
+      -1,   451,   452,   453,   454,   455,   456,    -1,   458,    -1,
+     460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
+     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
+     480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
+     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
+     500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
+     510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
+      -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
+      -1,   531,   532,   533,    -1,    -1,    -1,   537,   538,   539,
+     540,   541,    -1,   543,   544,   545,   546,   547,   548,   549,
+     550,   551,   552,   553,   554,   555,   556,   557,    -1,    -1,
+     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
+     570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
+     580,    -1,   582,   583,   584,   585,   586,   587,   588,   589,
+     590,   591,   592,   593,    -1,   595,   596,    -1,    -1,   599,
+      -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,
+     610,   611,   612,   613,   614,    -1,    -1,   617,   618,    -1,
+     620,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
+      -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
+      -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   652,   653,    -1,    -1,    -1,    -1,   658,   659,
+      -1,    -1,   662,   663,    -1,    -1,   666,   667,     5,    -1,
        7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    22,   665,    24,    25,    26,
+      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
-      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
-      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
-      -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
+      37,    38,    39,    40,    41,    42,    43,    -1,    45,    46,
+      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    56,
+      57,    58,    59,    -1,    61,    62,    63,    64,    65,    -1,
       67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
       87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
-      97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
-      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
-     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
+      97,    98,    -1,   100,   101,   102,   103,    -1,    -1,   106,
+     107,   108,   109,   110,   111,    -1,   113,   114,   115,    -1,
+     117,   118,   119,   120,   121,   122,    -1,    -1,    -1,    -1,
+     127,   128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
       -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
      167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
-     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
-     187,   188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,
+     177,   178,   179,    -1,   181,   182,   183,   184,   185,   186,
+     187,   188,    -1,   190,   191,   192,   193,    -1,   195,    -1,
       -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
-     207,   208,   209,   210,   211,   212,    -1,   214,    -1,    -1,
-     217,   218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,
-      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
+     207,   208,   209,   210,   211,   212,    -1,   214,    -1,   216,
+     217,   218,   219,    -1,   221,   222,   223,    -1,   225,   226,
+      -1,    -1,    -1,   230,   231,   232,   233,   234,   235,    -1,
       -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
-      -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
+     247,   248,   249,   250,    -1,    -1,   253,    -1,   255,   256,
       -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
+     267,   268,    -1,    -1,   271,    -1,   273,   274,   275,    -1,
       -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
+      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
      307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
-      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
+     317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
       -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
-      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
-     347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
-     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
+      -1,   338,   339,   340,   341,    -1,   343,   344,   345,   346,
+     347,   348,   349,   350,   351,   352,   353,   354,    -1,   356,
+     357,    -1,    -1,   360,   361,   362,   363,   364,    -1,   366,
+     367,   368,    -1,   370,   371,   372,    -1,   374,   375,   376,
       -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
-      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
-     407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
+     397,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
+     407,   408,   409,   410,   411,   412,    -1,   414,   415,   416,
       -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
      427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
      437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
-      -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
+      -1,   448,   449,    -1,   451,   452,   453,   454,   455,   456,
       -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
-      -1,   468,    -1,    -1,   471,   472,   473,   474,   475,   476,
+      -1,   468,    -1,   470,   471,   472,   473,   474,   475,   476,
      477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
       -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
       -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
      507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
       -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
      527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
-     537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
-     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,
+     537,   538,   539,   540,   541,    -1,   543,   544,   545,   546,
+     547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
      567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
-      -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
-     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
+      -1,   578,   579,   580,    -1,   582,   583,   584,   585,   586,
+     587,   588,   589,   590,   591,   592,   593,    -1,   595,   596,
       -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
-     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
-     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
+     607,    -1,    -1,   610,   611,   612,   613,   614,    -1,    -1,
+     617,   618,    -1,   620,   621,   622,   623,   624,   625,   626,
      627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
      637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   652,     5,    -1,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,   665,    -1,
-      19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
+      -1,    -1,    -1,    -1,    -1,   652,   653,    -1,    -1,    -1,
+      -1,   658,   659,    -1,    -1,   662,   663,    -1,    -1,   666,
+     667,     5,    -1,     7,     8,     9,    10,    11,    12,    -1,
+      -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,
+      24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
+      34,    -1,    -1,    37,    38,    39,    40,    41,    42,    43,
+      -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
+      -1,    55,    56,    57,    58,    59,    -1,    61,    62,    63,
+      64,    65,    -1,    67,    68,    69,    70,    71,    72,    -1,
+      74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
+      84,    85,    86,    87,    88,    89,    -1,    91,    92,    -1,
+      94,    95,    96,    97,    98,    -1,   100,   101,   102,   103,
+      -1,    -1,   106,   107,   108,   109,   110,   111,    -1,   113,
+     114,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
+      -1,    -1,    -1,   127,   128,   129,    -1,    -1,   132,   133,
+      -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
+     144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,
+     154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,
+      -1,   165,   166,   167,    -1,   169,   170,    -1,   172,   173,
+     174,   175,   176,   177,   178,   179,    -1,   181,   182,   183,
+     184,   185,   186,   187,   188,    -1,   190,   191,   192,   193,
+      -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,
+     204,    -1,   206,   207,   208,   209,   210,   211,   212,    -1,
+     214,    -1,   216,   217,   218,   219,    -1,   221,   222,   223,
+      -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,   233,
+     234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,   243,
+      -1,    -1,    -1,   247,   248,   249,   250,    -1,    -1,   253,
+      -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
+      -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,   273,
+     274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,
+     284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,    -1,
+      -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
+     304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
+     314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
+     324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,
+     334,   335,    -1,    -1,   338,   339,   340,   341,    -1,   343,
+     344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
+     354,    -1,   356,   357,    -1,    -1,   360,   361,   362,   363,
+     364,    -1,   366,   367,   368,    -1,   370,   371,   372,    -1,
+     374,   375,   376,    -1,   378,   379,   380,   381,    -1,   383,
+     384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,
+     394,   395,    -1,   397,   398,    -1,   400,    -1,   402,   403,
+     404,   405,   406,   407,   408,   409,   410,   411,   412,    -1,
+     414,   415,   416,    -1,   418,    -1,   420,   421,   422,   423,
+     424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,
+      -1,   435,   436,   437,   438,   439,    -1,    -1,   442,   443,
+     444,   445,   446,    -1,   448,   449,    -1,   451,   452,   453,
+     454,   455,   456,    -1,   458,    -1,   460,   461,    -1,   463,
+     464,    -1,   466,    -1,   468,    -1,   470,   471,   472,   473,
+     474,   475,   476,   477,   478,   479,   480,   481,   482,    -1,
+     484,   485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,
+      -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,
+     504,   505,   506,   507,    -1,   509,   510,   511,   512,   513,
+     514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,
+     524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,
+      -1,    -1,    -1,   537,   538,   539,   540,   541,    -1,   543,
+     544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
+     554,   555,   556,   557,    -1,    -1,   560,   561,   562,   563,
+      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
+      -1,    -1,    -1,    -1,   578,   579,   580,    -1,   582,   583,
+     584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
+      -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
+     604,    -1,   606,   607,    -1,    -1,   610,   611,   612,   613,
+     614,    -1,    -1,   617,   618,    -1,   620,   621,   622,   623,
+     624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
+     634,   635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   652,   653,
+      -1,    -1,    -1,    -1,   658,   659,    -1,    -1,   662,   663,
+      -1,    -1,   666,   667,     5,    -1,     7,     8,     9,    10,
+      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
+      -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
+      31,    32,    -1,    34,    -1,    -1,    37,    38,    39,    40,
+      41,    42,    43,    -1,    45,    46,    47,    -1,    49,    -1,
+      51,    52,    -1,    -1,    55,    56,    57,    58,    59,    -1,
+      61,    62,    63,    64,    65,    -1,    67,    68,    69,    70,
+      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
+      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
+     101,   102,   103,    -1,    -1,   106,   107,   108,   109,   110,
+     111,    -1,   113,   114,   115,    -1,   117,   118,   119,   120,
+     121,   122,    -1,    -1,    -1,    -1,   127,   128,   129,    -1,
+      -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,   172,   173,   174,   175,   176,   177,   178,   179,    -1,
+     181,   182,   183,   184,   185,   186,   187,   188,    -1,   190,
+     191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,   200,
+      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     211,   212,    -1,   214,    -1,   216,   217,   218,   219,    -1,
+     221,   222,   223,    -1,   225,   226,    -1,    -1,    -1,   230,
+     231,   232,   233,   234,   235,    -1,    -1,   238,   239,   240,
+      -1,    -1,   243,    -1,    -1,    -1,   247,   248,   249,   250,
+      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
+      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
+     271,    -1,   273,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
+     311,    -1,   313,   314,   315,   316,   317,   318,   319,   320,
+     321,   322,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
+     331,   332,   333,   334,   335,    -1,    -1,   338,   339,   340,
+     341,    -1,   343,   344,   345,   346,   347,   348,   349,   350,
+     351,   352,   353,   354,    -1,   356,   357,    -1,    -1,   360,
+     361,   362,   363,   364,    -1,   366,   367,   368,    -1,   370,
+     371,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   393,   394,   395,    -1,   397,   398,    -1,   400,
+      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
+     411,   412,    -1,   414,   415,   416,    -1,   418,    -1,   420,
+     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
+      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
+     451,   452,   453,   454,   455,   456,    -1,   458,    -1,   460,
+     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,   470,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,   538,   539,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,   549,   550,
+     551,   552,   553,   554,   555,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,   582,   583,   584,   585,   586,   587,   588,   589,   590,
+     591,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,   610,
+     611,   612,   613,   614,    -1,    -1,   617,   618,    -1,   620,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   652,   653,    -1,    -1,    -1,    -1,   658,   659,    -1,
+      -1,   662,   663,    -1,    -1,   666,   667,     5,    -1,     7,
+       8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
+      -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,    27,
+      28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    37,
+      38,    39,    40,    41,    42,    43,    -1,    45,    46,    47,
+      -1,    49,    -1,    51,    52,    -1,    -1,    55,    56,    57,
+      58,    59,    -1,    61,    62,    63,    64,    65,    -1,    67,
+      68,    69,    70,    71,    72,    -1,    74,    75,    76,    77,
+      78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
+      88,    89,    -1,    91,    92,    -1,    94,    95,    96,    97,
+      98,    -1,   100,   101,   102,   103,    -1,    -1,   106,   107,
+     108,   109,   110,   111,    -1,   113,   114,   115,    -1,   117,
+     118,   119,   120,   121,   122,    -1,    -1,    -1,    -1,   127,
+     128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,
+      -1,    -1,   140,    -1,   142,   143,   144,   145,   146,    -1,
+      -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,
+      -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,   167,
+      -1,   169,   170,    -1,   172,   173,   174,   175,   176,   177,
+     178,   179,    -1,   181,   182,   183,   184,   185,   186,   187,
+     188,    -1,   190,   191,   192,   193,    -1,   195,    -1,    -1,
+      -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,   207,
+     208,   209,   210,   211,   212,    -1,   214,    -1,   216,   217,
+     218,   219,    -1,   221,   222,   223,    -1,   225,   226,    -1,
+      -1,    -1,   230,   231,   232,   233,   234,   235,    -1,    -1,
+     238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,   247,
+     248,   249,   250,    -1,    -1,   253,    -1,   255,   256,    -1,
+     258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,
+     268,    -1,    -1,   271,    -1,   273,   274,   275,    -1,    -1,
+      -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,
+     288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,   297,
+     298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
+     308,   309,   310,   311,    -1,   313,   314,   315,   316,   317,
+     318,   319,   320,   321,   322,   323,   324,   325,    -1,    -1,
+      -1,    -1,   330,   331,   332,   333,   334,   335,    -1,    -1,
+     338,   339,   340,   341,    -1,   343,   344,   345,   346,   347,
+     348,   349,   350,   351,   352,   353,   354,    -1,   356,   357,
+      -1,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
+     368,    -1,   370,   371,   372,    -1,   374,   375,   376,    -1,
+     378,   379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,
+     398,    -1,   400,    -1,   402,   403,   404,   405,   406,   407,
+     408,   409,   410,   411,   412,    -1,   414,   415,   416,    -1,
+     418,    -1,   420,   421,   422,   423,   424,    -1,   426,   427,
+     428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,
+     438,   439,    -1,    -1,   442,   443,   444,   445,   446,    -1,
+     448,   449,    -1,   451,   452,   453,   454,   455,   456,    -1,
+     458,    -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,
+     468,    -1,   470,   471,   472,   473,   474,   475,   476,   477,
+     478,   479,   480,   481,   482,    -1,   484,   485,    -1,    -1,
+      -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,
+      -1,    -1,   500,    -1,   502,   503,   504,   505,   506,   507,
+      -1,   509,   510,   511,   512,   513,   514,    -1,    -1,    -1,
+      -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,
+      -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,
+     538,   539,   540,   541,    -1,   543,   544,   545,   546,   547,
+     548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
+      -1,    -1,   560,   561,   562,   563,    -1,   565,   566,   567,
+      -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,
+     578,   579,   580,    -1,   582,   583,   584,   585,   586,   587,
+     588,   589,   590,   591,   592,   593,    -1,   595,   596,    -1,
+      -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,
+      -1,    -1,   610,   611,   612,   613,   614,    -1,    -1,   617,
+     618,    -1,   620,   621,   622,   623,   624,   625,   626,   627,
+      -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
+     638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   652,   653,    -1,    -1,    -1,    -1,
+     658,   659,    -1,    -1,   662,   663,    -1,    -1,   666,   667,
+       5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
+      15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,
+      25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
+      -1,    -1,    -1,    38,    39,    -1,    -1,    42,    -1,    -1,
+      45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
+      55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
+      65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
+      75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
+      85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
+      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
+      -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
+      -1,    -1,   127,   128,   129,    -1,    -1,    -1,   133,    -1,
+     135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
+     145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
+     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
+     165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
+     175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
+      -1,   186,   187,   188,    -1,   190,   191,   192,   193,    -1,
+     195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
+      -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
+      -1,    -1,   217,   218,   219,    -1,   221,   222,   223,    -1,
+     225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
+      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
+     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
+      -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+      -1,   286,    -1,   288,   289,    -1,    -1,   292,    -1,    -1,
+      -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
+     305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
+     315,   316,    -1,   318,   319,   320,   321,    -1,   323,   324,
+     325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,
+     335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,
+     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
+      -1,   356,   357,    -1,    -1,   360,   361,   362,   363,    -1,
+      -1,    -1,   367,   368,    -1,   370,   371,   372,    -1,   374,
+     375,   376,    -1,   378,   379,   380,   381,    -1,   383,   384,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
+     395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
+     405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
+      -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
+     435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
+     445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
+      -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,   464,
+      -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,   474,
+     475,   476,   477,   478,   479,   480,   481,   482,    -1,   484,
+     485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
+      -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
+     505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
+      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
+      -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
+      -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
+     545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
+      -1,   556,   557,    -1,    -1,   560,   561,   562,   563,    -1,
+     565,   566,   567,    -1,   569,   570,   571,   572,    -1,    -1,
+      -1,    -1,    -1,   578,   579,   580,    -1,    -1,   583,   584,
+     585,   586,   587,   588,   589,   590,   591,   592,   593,    -1,
+     595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,
+      -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
+      -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
+     625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
+     635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,
+       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
+      19,   666,   667,    22,    -1,    24,    25,    26,    27,    28,
       29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
       49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
       59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
       69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
       79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
+      89,    -1,    91,    92,    93,    94,    95,    96,    97,    98,
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
      119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
@@ -14049,14 +13615,14 @@ static const yytype_int16 yycheck[] =
      169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
       -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
       -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
+     199,   200,    -1,   202,   203,   204,    -1,   206,   207,   208,
      209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
      219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
       -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
-     239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
+     239,   240,   241,    -1,   243,    -1,    -1,    -1,    -1,   248,
      249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
+     259,    -1,    -1,    -1,   263,   264,    -1,   266,   267,   268,
+      -1,    -1,   271,    -1,    -1,   274,   275,    -1,   277,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
      289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
@@ -14077,10 +13643,10 @@ static const yytype_int16 yycheck[] =
      449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,
       -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
       -1,    -1,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
+     479,   480,   481,   482,    -1,   484,   485,   486,    -1,    -1,
      489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
       -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
+     509,   510,   511,   512,   513,   514,   515,    -1,    -1,    -1,
       -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
       -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
       -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
@@ -14094,15 +13660,15 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
       -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
      639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,
-       5,    -1,     7,     8,     9,    10,    11,    12,   657,    -1,
-      15,    -1,    -1,    -1,    19,    -1,   665,    22,    -1,    24,
+       5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
+      15,    -1,    -1,    -1,    19,    -1,    -1,    22,   667,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
       -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
       45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
       55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
       65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
-      85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
+      85,    86,    87,    88,    89,    -1,    91,    92,    93,    94,
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
       -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
@@ -14113,13 +13679,13 @@ static const yytype_int16 yycheck[] =
      165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
      175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
       -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
-     195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
+     195,    -1,    -1,    -1,   199,   200,    -1,   202,   203,   204,
       -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
       -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
      225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
-      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   238,   239,   240,   241,    -1,   243,    -1,
       -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
-     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
+     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,   264,
       -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
      275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
       -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,    -1,
@@ -14145,7 +13711,7 @@ static const yytype_int16 yycheck[] =
      485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
       -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
      505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
-      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
+     515,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
       -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
       -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
      545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
@@ -14159,8 +13725,8 @@ static const yytype_int16 yycheck[] =
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
       -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
-      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,   664,
-     665,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
+      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
+      -1,    22,   667,    24,    25,    26,    27,    28,    29,    30,
       31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
       -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
       51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
@@ -14205,90 +13771,26 @@ static const yytype_int16 yycheck[] =
       -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
      451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
      461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
-     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
-     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
-     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
-      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
-     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
-     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
-     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
-     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
-     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
-     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
-      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
-      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
-      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
-      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
-     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
-      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-      -1,   642,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,   665,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
-      -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
-      49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
-      59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
-      79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
-      -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
-      -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
-     119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
-      -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
-      -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
-      -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
-     169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
-      -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
-      -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
-     209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
-     219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
-     239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
-     249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
-      -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
-     299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
-     309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
-     319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
-      -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
-     339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
-     349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
-      -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
-      -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
-      -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
-     409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
-      -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
-      -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
-     439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-     449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,
-      -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
-      -1,    -1,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
-     489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
-      -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
-      -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
-      -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
-      -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
-      -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
-     569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
-     589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
-     599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
-      -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
-      -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
-     639,    -1,    -1,   642,    -1,    -1,    -1,    -1,     5,    -1,
-       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    22,   665,    24,    25,    26,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,   486,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
+     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
+      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,
+       7,     8,     9,    10,    11,    12,    -1,    -1,    15,   660,
+      -1,    -1,    19,    -1,    -1,    22,   667,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
       -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
       47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
@@ -14351,8 +13853,73 @@ static const yytype_int16 yycheck[] =
      617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
      627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
      637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
-       5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
-      15,    -1,    -1,    -1,    19,    -1,    -1,    22,   665,    24,
+      -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
+      11,    12,    -1,   660,    15,    -1,    -1,    -1,    19,   666,
+     667,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
+      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
+      51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
+      61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
+      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
+      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
+     111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
+     181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
+     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
+      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
+     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
+      -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
+      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
+      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
+     311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
+     321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
+     331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
+     341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
+     351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
+     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
+      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
+      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
+     411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
+     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
+      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
+     451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
+     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
+     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
+      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       5,    -1,     7,     8,     9,    10,    11,    12,   659,    -1,
+      15,    -1,    -1,    -1,    19,    -1,   667,    22,    -1,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
       -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
       45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
@@ -14375,7 +13942,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
      225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
       -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
-      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
+      -1,    -1,    -1,   248,   249,    -1,   251,    -1,   253,    -1,
      255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
       -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
      275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
@@ -14415,137 +13982,9 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
-      -1,    -1,     5,    -1,     7,     8,     9,    10,    11,    12,
-      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
-     665,    24,    25,    26,    27,    28,    29,    30,    31,    32,
-      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
-      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
-      63,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
-      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
-      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
-     103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
-     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
-      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,   132,
-     133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
-     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
-      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
-     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
-     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
-      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
-      -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
-      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,
-     243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
-     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
-      -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
-      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
-     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
-     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
-     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
-     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
-     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
-     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
-      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
-      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
-     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
-      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
-     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
-     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
-     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
-      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
-     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
-     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
-     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
-     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
-     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
-      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
-     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
-      -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
-      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
-      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
-      -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,    11,
-      12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,
-      22,   664,    24,    25,    26,    27,    28,    29,    30,    31,
-      32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,
-      42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,
-      52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    69,    70,    71,
-      72,    -1,    74,    75,    76,    77,    78,    79,    80,    -1,
-      82,    83,    84,    85,    86,    87,    88,    89,    -1,    91,
-      92,    -1,    94,    95,    96,    97,    98,    -1,   100,    -1,
-      -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,
-      -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,
-     122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,
-      -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,
-     142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,
-      -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,
-     162,   163,    -1,   165,   166,   167,    -1,   169,   170,    -1,
-     172,   173,   174,   175,   176,   177,   178,    -1,    -1,   181,
-     182,   183,   184,    -1,    -1,   187,   188,    -1,   190,   191,
-     192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,
-     202,    -1,   204,    -1,   206,   207,   208,   209,   210,   211,
-     212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,
-      -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,
-     232,   233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,
-      -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,
-      -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,
-      -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,
-      -1,    -1,   274,   275,   276,    -1,    -1,    -1,    -1,   281,
-     282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,
-      -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,   301,
-     302,   303,   304,   305,   306,   307,   308,   309,   310,   311,
-      -1,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
-      -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,
-     332,   333,   334,   335,    -1,    -1,   338,   339,    -1,   341,
-      -1,   343,    -1,   345,   346,   347,   348,   349,   350,   351,
-     352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,
-     362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,
-     372,    -1,   374,   375,   376,    -1,   378,   379,   380,   381,
-      -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,
-     402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
-      -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,   421,
-     422,   423,   424,    -1,   426,   427,   428,    -1,    -1,   431,
-      -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,
-     442,   443,   444,   445,   446,    -1,   448,   449,    -1,   451,
-     452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,
-      -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,
-     472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
-     482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,
-     492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,
-     502,   503,   504,   505,   506,   507,    -1,   509,   510,   511,
-     512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,
-     522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,
-     532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,
-      -1,   543,   544,   545,   546,   547,   548,    -1,    -1,   551,
-     552,   553,   554,    -1,   556,   557,    -1,    -1,   560,   561,
-     562,   563,    -1,   565,   566,   567,    -1,   569,   570,   571,
-     572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,
-      -1,    -1,   584,   585,   586,   587,    -1,   589,   590,    -1,
-     592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,
-     602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,
-      -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,
-     622,   623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,
-      -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,
-     642,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
+      -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
       11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
-      -1,    22,   664,    24,    25,    26,    27,    28,    29,    30,
+      -1,    22,   667,    24,    25,    26,    27,    28,    29,    30,
       31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
       -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
       51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
@@ -14570,7 +14009,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
       -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
       -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
-     271,    -1,    -1,   274,   275,   276,    -1,    -1,    -1,    -1,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
      281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
       -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
      301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
@@ -14599,7 +14038,7 @@ static const yytype_int16 yycheck[] =
      531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
      541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
      551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
      571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
       -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
       -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
@@ -14607,84 +14046,150 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
      621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
       -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-      -1,   642,    -1,    -1,    -1,     5,    -1,     7,     8,     9,
-      10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,
-      -1,    -1,    22,   664,    24,    25,    26,    27,    28,    29,
-      30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,
-      -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,
-      -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,
-      -1,    61,    62,    -1,    64,    65,    -1,    67,    68,    69,
-      70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
-      80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
-      -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
-     100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,
-      -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,
-      -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,
-      -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,
-     140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
-      -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
-     160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
-     170,    -1,   172,   173,   174,   175,   176,   177,   178,    -1,
-      -1,   181,   182,   183,   184,    -1,    -1,   187,   188,    -1,
-     190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,
-     200,    -1,   202,    -1,   204,    -1,   206,   207,   208,   209,
-     210,   211,   212,    -1,   214,    -1,    -1,   217,   218,   219,
-      -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,
-     230,   231,   232,   233,   234,    -1,    -1,    -1,   238,   239,
-     240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,
-      -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
-      -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
-      -1,   271,    -1,    -1,   274,   275,   276,    -1,    -1,    -1,
-      -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
-      -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,
-     300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
-     310,   311,    -1,   313,   314,   315,   316,    -1,   318,   319,
-     320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,
-     330,   331,   332,   333,   334,   335,    -1,    -1,   338,   339,
-      -1,   341,    -1,   343,    -1,   345,   346,   347,   348,   349,
-     350,   351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,
-     360,   361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,
-      -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,   379,
-     380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,
-     400,    -1,   402,   403,   404,   405,   406,   407,   408,   409,
-     410,   411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,
-     420,   421,   422,   423,   424,    -1,   426,   427,   428,    -1,
-      -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,   439,
-      -1,    -1,   442,   443,   444,   445,   446,    -1,   448,   449,
-      -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,
-     460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
-      -1,   471,   472,   473,   474,   475,   476,   477,   478,   479,
-     480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
-     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
-     500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
-     510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
-      -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
-      -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,
-     540,   541,    -1,   543,   544,   545,   546,   547,   548,    -1,
-      -1,   551,   552,   553,   554,    -1,   556,   557,    -1,    -1,
-     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
-     570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
-     580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,
-     590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,
-      -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,
-      -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,
-      -1,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
-      -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
-      -1,    -1,   642,    -1,    -1,    -1,     5,    -1,     7,     8,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   654,     5,    -1,     7,     8,     9,    10,
+      11,    12,    -1,    -1,    15,    -1,   667,    -1,    19,    -1,
+      -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
+      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
+      51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
+      61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
+      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
+      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
+     111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
+     181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
+     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
+      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
+     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
+      -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
+      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
+      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
+     311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
+     321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
+     331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
+     341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
+     351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
+     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
+      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
+      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
+     411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
+     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
+      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
+     451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
+     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
+     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
+      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       5,    -1,     7,     8,     9,    10,    11,    12,   659,    -1,
+      15,    -1,    -1,    -1,    19,    -1,   667,    22,    -1,    24,
+      25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
+      -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
+      45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
+      55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
+      65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
+      75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
+      85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
+      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
+      -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
+     135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
+     145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
+     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
+     165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
+     175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
+      -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
+     195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
+      -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
+      -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
+     225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
+      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
+     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
+      -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+      -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,    -1,
+      -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
+     305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
+     315,   316,    -1,   318,   319,   320,   321,    -1,   323,   324,
+     325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,
+     335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,
+     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
+      -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,    -1,
+      -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,   374,
+     375,   376,    -1,   378,   379,   380,   381,    -1,   383,   384,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
+     395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
+     405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
+      -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
+     435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
+     445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
+      -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,   464,
+      -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,   474,
+     475,   476,   477,   478,   479,   480,   481,   482,    -1,   484,
+     485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
+      -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
+     505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
+      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
+      -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
+      -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
+     545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
+      -1,   556,   557,    -1,    -1,   560,   561,   562,   563,    -1,
+      -1,   566,   567,    -1,   569,   570,   571,   572,    -1,    -1,
+      -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,   584,
+     585,   586,   587,    -1,   589,   590,    -1,   592,   593,    -1,
+     595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,
+      -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
+      -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
+     625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
+     635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,   664,    24,    25,    26,    27,    28,
+      19,   666,   667,    22,    -1,    24,    25,    26,    27,    28,
       29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
       49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
-      59,    -1,    61,    62,    63,    64,    65,    -1,    67,    68,
+      59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
       69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
       79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
       89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
      119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
       -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
       -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
       -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
@@ -14735,73 +14240,138 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
       -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
       -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
-     639,    -1,    -1,   642,    -1,    -1,    -1,     5,    -1,     7,
-       8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
-      -1,    19,    -1,    -1,    22,   664,    24,    25,    26,    27,
-      28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,
-      38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,
-      -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,
-      58,    59,    -1,    61,    62,    -1,    64,    65,    -1,    67,
-      68,    69,    70,    71,    72,    -1,    74,    75,    76,    77,
-      78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
-      88,    89,    90,    91,    92,    -1,    94,    95,    96,    97,
-      98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,
-     108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,
-     118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,
-     128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,
-      -1,    -1,   140,    -1,   142,   143,   144,   145,   146,    -1,
-      -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,
-      -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,   167,
-      -1,   169,   170,    -1,   172,   173,   174,   175,   176,   177,
-     178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,
-     188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,
-      -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,   207,
-     208,   209,   210,   211,   212,    -1,   214,    -1,    -1,   217,
-     218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,
-      -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,
-     238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,
-     248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,
-     258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,
-     268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,
-      -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,
-     288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,
-     298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
-     308,   309,   310,   311,    -1,   313,   314,   315,   316,    -1,
-     318,   319,   320,   321,    -1,   323,   324,   325,    -1,    -1,
-      -1,    -1,   330,   331,   332,   333,   334,   335,    -1,    -1,
-     338,   339,    -1,   341,    -1,   343,    -1,   345,   346,   347,
-     348,   349,   350,   351,   352,   353,   354,    -1,    -1,   357,
-      -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,
-     368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,
-     378,   379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,
-     398,    -1,   400,    -1,   402,   403,   404,   405,   406,   407,
-     408,   409,   410,   411,    -1,    -1,   414,   415,   416,    -1,
-     418,    -1,   420,   421,   422,   423,   424,    -1,   426,   427,
-     428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,
-     438,   439,    -1,    -1,   442,   443,   444,   445,   446,    -1,
-     448,   449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,
-     458,    -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,
-     468,    -1,    -1,   471,   472,   473,   474,   475,   476,   477,
-     478,   479,   480,   481,   482,    -1,   484,   485,    -1,    -1,
-      -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,
-      -1,    -1,   500,    -1,   502,   503,   504,   505,   506,   507,
-      -1,   509,   510,   511,   512,   513,   514,    -1,    -1,    -1,
-      -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,
-      -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,
-      -1,    -1,   540,   541,    -1,   543,   544,   545,   546,   547,
-     548,    -1,    -1,   551,   552,   553,   554,    -1,   556,   557,
-      -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,   567,
-      -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,
-     578,   579,   580,    -1,    -1,    -1,   584,   585,   586,   587,
-      -1,   589,   590,    -1,   592,   593,    -1,   595,   596,    -1,
-      -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,
-      -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,
-      -1,    -1,    -1,   621,   622,   623,   624,   625,   626,   627,
-      -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
-     638,   639,    -1,    -1,   642,    -1,    -1,    -1,     5,    -1,
+     639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,
+       5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
+      15,    -1,    -1,    -1,    19,    -1,    -1,    22,   667,    24,
+      25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
+      -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
+      45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
+      55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
+      65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
+      75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
+      85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
+      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
+      -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
+     135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
+     145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
+     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
+     165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
+     175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
+      -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
+     195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
+      -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
+      -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
+     225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
+      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
+     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
+      -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+      -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,    -1,
+      -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
+     305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
+     315,   316,    -1,   318,   319,   320,   321,    -1,   323,   324,
+     325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,
+     335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,
+     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
+      -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,    -1,
+      -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,   374,
+     375,   376,    -1,   378,   379,   380,   381,    -1,   383,   384,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
+     395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
+     405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
+      -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
+     435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
+     445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
+      -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,   464,
+      -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,   474,
+     475,   476,   477,   478,   479,   480,   481,   482,    -1,   484,
+     485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
+      -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
+     505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
+      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
+      -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
+      -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
+     545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
+      -1,   556,   557,    -1,    -1,   560,   561,   562,   563,    -1,
+      -1,   566,   567,    -1,   569,   570,   571,   572,    -1,    -1,
+      -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,   584,
+     585,   586,   587,    -1,   589,   590,    -1,   592,   593,    -1,
+     595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,
+      -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
+      -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
+     625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
+     635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
+      -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
+      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
+      -1,    22,   667,    24,    25,    26,    27,    28,    29,    30,
+      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
+      51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
+      61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
+      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
+      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
+     111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
+     181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
+     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
+      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
+     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
+      -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
+      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
+      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
+     311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
+     321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
+     331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
+     341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
+     351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
+     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
+      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
+      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
+     411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
+     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
+      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
+     451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
+     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
+     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
+      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,
        7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    22,   664,    24,    25,    26,
+      -1,    -1,    19,    -1,    -1,    22,   667,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
       -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
       47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
@@ -14863,73 +14433,74 @@ static const yytype_int16 yycheck[] =
      607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
      617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
      627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
-     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,     5,
-      -1,     7,     8,     9,    10,    11,    12,    -1,    -1,    15,
-      -1,    -1,    -1,    19,    -1,    -1,    -1,   664,    24,    25,
-      26,    27,    28,    29,    30,    31,    -1,    -1,    34,    -1,
-      -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,
-      46,    47,    -1,    49,    -1,    -1,    -1,    -1,    -1,    55,
-      56,    -1,    58,    59,    -1,    61,    -1,    -1,    -1,    -1,
-      -1,    67,    68,    69,    70,    71,    72,    -1,    74,    75,
-      -1,    -1,    -1,    -1,    -1,    -1,    82,    -1,    84,    -1,
-      86,    87,    88,    89,    -1,    91,    92,    -1,    94,    95,
-      96,    -1,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,
-     106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,
-      -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,
-      -1,   127,    -1,    -1,    -1,    -1,    -1,   133,    -1,   135,
-      -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,
-     146,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   154,   155,
-     156,    -1,    -1,    -1,   160,    -1,    -1,   163,    -1,   165,
-     166,   167,    -1,   169,   170,    -1,   172,   173,   174,   175,
-     176,    -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
-      -1,   187,   188,   189,   190,   191,   192,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   200,    -1,   202,    -1,   204,    -1,
-     206,   207,   208,   209,   210,    -1,   212,    -1,   214,    -1,
-      -1,    -1,   218,   219,    -1,    -1,    -1,    -1,    -1,    -1,
-     226,    -1,    -1,    -1,   230,   231,   232,   233,   234,   235,
-      -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,
-      -1,    -1,   248,    -1,    -1,    -1,    -1,   253,    -1,   255,
-     256,    -1,   258,   259,   260,    -1,    -1,   263,    -1,    -1,
-      -1,   267,   268,    -1,    -1,   271,   272,    -1,   274,   275,
-      -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,
-     286,    -1,   288,   289,    -1,    -1,    -1,    -1,   294,    -1,
-     296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
-     306,   307,   308,   309,   310,   311,    -1,   313,   314,   315,
-     316,    -1,   318,   319,   320,   321,    -1,   323,   324,   325,
-      -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,   335,
-      -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,
-     346,   347,   348,   349,   350,   351,   352,   353,   354,    -1,
-      -1,   357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,
-      -1,    -1,   368,    -1,    -1,    -1,   372,    -1,   374,   375,
-     376,    -1,   378,   379,   380,   381,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   394,   395,
-      -1,    -1,    -1,    -1,   400,    -1,   402,   403,   404,   405,
-     406,   407,   408,   409,   410,    -1,    -1,    -1,    -1,   415,
-     416,    -1,   418,    -1,   420,   421,   422,   423,   424,    -1,
-     426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,
-     436,   437,   438,   439,    -1,    -1,   442,   443,   444,   445,
-     446,    -1,   448,    -1,    -1,   451,    -1,   453,   454,    -1,
-     456,    -1,    -1,    -1,   460,    -1,    -1,   463,   464,    -1,
-     466,   467,   468,    -1,    -1,   471,    -1,   473,   474,   475,
-     476,   477,   478,   479,    -1,   481,   482,    -1,   484,    -1,
-      -1,    -1,    -1,   489,   490,   491,    -1,    -1,    -1,    -1,
-     496,    -1,    -1,    -1,    -1,    -1,    -1,   503,    -1,    -1,
-     506,   507,    -1,   509,    -1,   511,    -1,   513,   514,    -1,
-      -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,
-      -1,   527,    -1,    -1,    -1,   531,    -1,   533,    -1,    -1,
-      -1,   537,    -1,    -1,    -1,   541,    -1,   543,   544,   545,
-     546,   547,   548,    -1,    -1,   551,   552,   553,   554,    -1,
-     556,   557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,
-     566,   567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,
-      -1,    -1,   578,   579,   580,    -1,    -1,    -1,    -1,   585,
-     586,   587,    -1,   589,   590,    -1,   592,   593,    -1,    -1,
-      -1,    -1,    -1,   599,    -1,    -1,   602,    -1,    -1,    -1,
-     606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,
-      -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,   625,
-     626,   627,    -1,    -1,   630,    -1,    -1,    -1,   634,    -1,
-      -1,   637,    -1,   639,    -1,     5,   642,     7,     8,     9,
+     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
+      -1,    -1,     5,    -1,     7,     8,     9,    10,    11,    12,
+      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
+     667,    24,    25,    26,    27,    28,    29,    30,    31,    32,
+      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
+      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
+      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
+      63,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
+      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
+      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
+      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
+     103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
+     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
+      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,   132,
+     133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
+     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
+      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
+     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
+     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
+     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
+      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
+      -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
+      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
+      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
+     233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,
+     243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
+     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
+     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
+      -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
+      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
+      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
+     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
+     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
+     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
+     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
+     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
+     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
+     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
+      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
+     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
+     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
+      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
+     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
+      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
+     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
+     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
+     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
+     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
+      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
+      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
+     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
+     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
+      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
+     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
+     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
+     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
+     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
+      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
+      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
+     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
+      -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
+      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
+     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
+      -1,   634,   635,    -1,   637,   638,   639,    -1,    -1,   642,
+      -1,    -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,
       10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,
-      -1,    -1,    22,   659,    24,    25,    26,    27,    28,    29,
+      -1,    -1,    22,   666,    24,    25,    26,    27,    28,    29,
       30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,
       -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,
       -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,
@@ -14937,7 +14508,7 @@ static const yytype_int16 yycheck[] =
       70,    71,    72,    -1,    74,    75,    76,    77,    78,    79,
       80,    -1,    82,    83,    84,    85,    86,    87,    88,    89,
       -1,    91,    92,    -1,    94,    95,    96,    97,    98,    -1,
-     100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,   109,
+     100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,
       -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,
       -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,
       -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,
@@ -14991,8 +14562,73 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,
       -1,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
       -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
-      -1,     5,   642,     7,     8,     9,    10,    11,    12,    -1,
-      -1,    15,    -1,    -1,    -1,    19,    -1,   657,    22,    -1,
+      -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,     5,    -1,
+       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
+      -1,    -1,    19,    -1,    -1,    22,   666,    24,    25,    26,
+      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
+      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
+      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
+      -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
+      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
+      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
+      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
+      97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
+      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
+     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
+     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
+      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
+      -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
+      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
+     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
+     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
+     187,   188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,
+      -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
+     207,   208,   209,   210,   211,   212,    -1,   214,    -1,    -1,
+     217,   218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,
+      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
+      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
+      -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
+      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
+     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,   276,
+      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
+      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
+     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
+     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
+      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
+      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
+      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
+     347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
+     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
+     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
+      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
+      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
+     407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
+      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
+     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
+     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
+      -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
+      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
+      -1,   468,    -1,    -1,   471,   472,   473,   474,   475,   476,
+     477,   478,   479,   480,   481,   482,    -1,   484,   485,    -1,
+      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
+      -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
+     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
+      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
+     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
+     537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
+     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
+     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
+      -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
+     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
+      -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
+     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
+     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
+     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
+     637,   638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,
+      -1,     5,    -1,     7,     8,     9,    10,    11,    12,    -1,
+      -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,   666,
       24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
       34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,
       -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
@@ -15018,7 +14654,328 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,
       -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
       -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,
-     274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,
+     274,   275,   276,    -1,    -1,    -1,    -1,   281,   282,    -1,
+     284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,
+      -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
+     304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
+     314,   315,   316,    -1,   318,   319,   320,   321,    -1,   323,
+     324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,
+     334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,
+      -1,   345,   346,   347,   348,   349,   350,   351,   352,   353,
+     354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,
+      -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,
+     374,   375,   376,    -1,   378,   379,   380,   381,    -1,   383,
+     384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,
+     394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,
+     404,   405,   406,   407,   408,   409,   410,   411,    -1,    -1,
+     414,   415,   416,    -1,   418,    -1,   420,   421,   422,   423,
+     424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,
+      -1,   435,   436,   437,   438,   439,    -1,    -1,   442,   443,
+     444,   445,   446,    -1,   448,   449,    -1,   451,   452,   453,
+      -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,
+     464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,
+     474,   475,   476,   477,   478,   479,   480,   481,   482,    -1,
+     484,   485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,
+      -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,
+     504,   505,   506,   507,    -1,   509,   510,   511,   512,   513,
+     514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,
+     524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,
+      -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,
+     544,   545,   546,   547,   548,    -1,    -1,   551,   552,   553,
+     554,    -1,   556,   557,    -1,    -1,   560,   561,   562,   563,
+      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
+      -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,
+     584,   585,   586,   587,    -1,   589,   590,    -1,   592,   593,
+      -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
+     604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,
+     614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,
+     624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
+     634,   635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,
+      -1,    -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,
+      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
+      -1,    22,   666,    24,    25,    26,    27,    28,    29,    30,
+      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
+      51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
+      61,    62,    63,    64,    65,    -1,    67,    68,    69,    70,
+      71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
+      -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
+     111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
+      -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
+     181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
+     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
+      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
+     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
+      -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
+      -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
+      -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
+     311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
+     321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
+     331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
+     341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
+     351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
+     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
+      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
+      -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
+     411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
+     421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
+      -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
+     451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
+     461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
+     471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
+      -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
+     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
+     531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
+     541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
+     551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
+      -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
+      -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
+      -1,   642,    -1,    -1,    -1,    -1,    -1,     5,    -1,     7,
+       8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
+      -1,    19,    -1,    -1,    22,   666,    24,    25,    26,    27,
+      28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,
+      38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,
+      -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,
+      58,    59,    -1,    61,    62,    -1,    64,    65,    -1,    67,
+      68,    69,    70,    71,    72,    -1,    74,    75,    76,    77,
+      78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
+      88,    89,    90,    91,    92,    -1,    94,    95,    96,    97,
+      98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,
+     108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,
+     118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,
+     128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,
+      -1,    -1,   140,    -1,   142,   143,   144,   145,   146,    -1,
+      -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,
+      -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,   167,
+      -1,   169,   170,    -1,   172,   173,   174,   175,   176,   177,
+     178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,
+     188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,
+      -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,   207,
+     208,   209,   210,   211,   212,    -1,   214,    -1,    -1,   217,
+     218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,
+      -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,
+     238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,
+     248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,
+     258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,
+     268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,
+      -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,
+     288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,
+     298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
+     308,   309,   310,   311,    -1,   313,   314,   315,   316,    -1,
+     318,   319,   320,   321,    -1,   323,   324,   325,    -1,    -1,
+      -1,    -1,   330,   331,   332,   333,   334,   335,    -1,    -1,
+     338,   339,    -1,   341,    -1,   343,    -1,   345,   346,   347,
+     348,   349,   350,   351,   352,   353,   354,    -1,    -1,   357,
+      -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,
+     368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,
+     378,   379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,
+     398,    -1,   400,    -1,   402,   403,   404,   405,   406,   407,
+     408,   409,   410,   411,    -1,    -1,   414,   415,   416,    -1,
+     418,    -1,   420,   421,   422,   423,   424,    -1,   426,   427,
+     428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,
+     438,   439,    -1,    -1,   442,   443,   444,   445,   446,    -1,
+     448,   449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,
+     458,    -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,
+     468,    -1,    -1,   471,   472,   473,   474,   475,   476,   477,
+     478,   479,   480,   481,   482,    -1,   484,   485,    -1,    -1,
+      -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,
+      -1,    -1,   500,    -1,   502,   503,   504,   505,   506,   507,
+      -1,   509,   510,   511,   512,   513,   514,    -1,    -1,    -1,
+      -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,
+      -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,
+      -1,    -1,   540,   541,    -1,   543,   544,   545,   546,   547,
+     548,    -1,    -1,   551,   552,   553,   554,    -1,   556,   557,
+      -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,   567,
+      -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,
+     578,   579,   580,    -1,    -1,    -1,   584,   585,   586,   587,
+      -1,   589,   590,    -1,   592,   593,    -1,   595,   596,    -1,
+      -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,
+      -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,
+      -1,    -1,    -1,   621,   622,   623,   624,   625,   626,   627,
+      -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
+     638,   639,    -1,    -1,   642,    -1,    -1,    -1,    -1,    -1,
+       5,    -1,     7,     8,     9,    10,    11,    12,    -1,    -1,
+      15,    -1,    -1,    -1,    19,    -1,    -1,    22,   666,    24,
+      25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
+      -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
+      45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
+      55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
+      65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
+      75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
+      85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
+      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
+      -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
+     135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
+     145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
+     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
+     165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
+     175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
+      -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
+     195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
+      -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
+      -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
+     225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
+      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
+     255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
+      -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+      -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,    -1,
+      -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
+     305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
+     315,   316,    -1,   318,   319,   320,   321,    -1,   323,   324,
+     325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,   334,
+     335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,
+     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
+      -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,    -1,
+      -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,   374,
+     375,   376,    -1,   378,   379,   380,   381,    -1,   383,   384,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
+     395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
+     405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
+      -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
+     435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
+     445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
+      -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,   464,
+      -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,   474,
+     475,   476,   477,   478,   479,   480,   481,   482,    -1,   484,
+     485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
+      -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
+     505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
+      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
+      -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
+      -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
+     545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
+      -1,   556,   557,    -1,    -1,   560,   561,   562,   563,    -1,
+      -1,   566,   567,    -1,   569,   570,   571,   572,    -1,    -1,
+      -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,   584,
+     585,   586,   587,    -1,   589,   590,    -1,   592,   593,    -1,
+     595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,
+      -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
+      -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
+     625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
+     635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,    -1,
+      -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,    11,
+      12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,
+      -1,   666,    24,    25,    26,    27,    28,    29,    30,    31,
+      -1,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,
+      42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,    -1,
+      -1,    -1,    -1,    55,    56,    -1,    58,    59,    -1,    61,
+      -1,    -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,
+      72,    -1,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,
+      82,    -1,    84,    -1,    86,    87,    88,    89,    -1,    91,
+      92,    -1,    94,    95,    96,    -1,    98,    -1,   100,    -1,
+      -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,
+      -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,
+     122,    -1,    -1,    -1,    -1,   127,    -1,    -1,    -1,    -1,
+      -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,
+     142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,
+      -1,   163,    -1,   165,   166,   167,    -1,   169,   170,    -1,
+     172,   173,   174,   175,   176,    -1,    -1,    -1,    -1,   181,
+     182,   183,   184,    -1,    -1,   187,   188,   189,   190,   191,
+     192,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   200,    -1,
+     202,    -1,   204,    -1,   206,   207,   208,   209,   210,    -1,
+     212,    -1,   214,    -1,    -1,    -1,   218,   219,    -1,    -1,
+      -1,    -1,    -1,    -1,   226,    -1,    -1,    -1,   230,   231,
+     232,   233,   234,   235,    -1,    -1,   238,   239,   240,    -1,
+      -1,   243,    -1,    -1,    -1,    -1,   248,    -1,    -1,    -1,
+      -1,   253,    -1,   255,   256,    -1,   258,   259,   260,    -1,
+      -1,   263,    -1,    -1,    -1,   267,   268,    -1,    -1,   271,
+     272,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,
+     282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,
+      -1,    -1,   294,    -1,   296,   297,   298,   299,   300,   301,
+     302,   303,   304,   305,   306,   307,   308,   309,   310,   311,
+      -1,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
+      -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,
+     332,   333,   334,   335,    -1,    -1,   338,   339,    -1,   341,
+      -1,   343,    -1,   345,   346,   347,   348,   349,   350,   351,
+     352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,
+     362,   363,    -1,    -1,    -1,    -1,   368,    -1,    -1,    -1,
+     372,    -1,   374,   375,   376,    -1,   378,   379,   380,   381,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   394,   395,    -1,    -1,    -1,    -1,   400,    -1,
+     402,   403,   404,   405,   406,   407,   408,   409,   410,    -1,
+      -1,    -1,    -1,   415,   416,    -1,   418,    -1,   420,   421,
+     422,   423,   424,    -1,   426,   427,   428,    -1,    -1,   431,
+      -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,
+     442,   443,   444,   445,   446,    -1,   448,    -1,    -1,   451,
+      -1,   453,   454,    -1,   456,    -1,    -1,    -1,   460,    -1,
+      -1,   463,   464,    -1,   466,   467,   468,    -1,    -1,   471,
+      -1,   473,   474,   475,   476,   477,   478,   479,    -1,   481,
+     482,    -1,   484,    -1,    -1,    -1,    -1,   489,   490,   491,
+      -1,    -1,    -1,    -1,   496,    -1,    -1,    -1,    -1,    -1,
+      -1,   503,    -1,    -1,   506,   507,    -1,   509,    -1,   511,
+      -1,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,
+     522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,
+      -1,   533,    -1,    -1,    -1,   537,    -1,    -1,    -1,   541,
+      -1,   543,   544,   545,   546,   547,   548,    -1,    -1,   551,
+     552,   553,   554,    -1,   556,   557,    -1,    -1,   560,   561,
+     562,   563,    -1,    -1,   566,   567,    -1,   569,   570,   571,
+     572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,
+      -1,    -1,    -1,   585,   586,   587,    -1,   589,   590,    -1,
+     592,   593,    -1,    -1,    -1,    -1,    -1,   599,    -1,    -1,
+     602,    -1,    -1,    -1,   606,   607,    -1,    -1,    -1,    -1,
+      -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,
+     622,   623,   624,   625,   626,   627,    -1,    -1,   630,    -1,
+      -1,    -1,   634,    -1,    -1,   637,    -1,   639,    -1,    -1,
+     642,     5,    -1,     7,     8,     9,    10,    11,    12,    -1,
+      -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,   661,
+      24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
+      34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,
+      -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
+      -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,
+      64,    65,    -1,    67,    68,    69,    70,    71,    72,    -1,
+      74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
+      84,    85,    86,    87,    88,    89,    -1,    91,    92,    -1,
+      94,    95,    96,    97,    98,    -1,   100,    -1,    -1,   103,
+      -1,    -1,   106,    -1,   108,   109,    -1,   111,    -1,   113,
+      -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,
+      -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,
+      -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
+     144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,
+     154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,
+      -1,   165,   166,   167,    -1,   169,   170,    -1,   172,   173,
+     174,   175,   176,   177,   178,    -1,    -1,   181,   182,   183,
+     184,    -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,
+      -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,
+     204,    -1,   206,   207,   208,   209,   210,   211,   212,    -1,
+     214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,
+      -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,   233,
+     234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,
+      -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,
+      -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
+      -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,
+     274,   275,   276,    -1,    -1,    -1,    -1,   281,   282,    -1,
      284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,
       -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
      304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
@@ -15047,7 +15004,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,
      544,   545,   546,   547,   548,    -1,    -1,   551,   552,   553,
      554,    -1,   556,   557,    -1,    -1,   560,   561,   562,   563,
-      -1,    -1,   566,   567,    -1,   569,   570,   571,   572,    -1,
+      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
       -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,
      584,   585,   586,   587,    -1,   589,   590,    -1,   592,   593,
       -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
@@ -15055,8 +15012,8 @@ static const yytype_int16 yycheck[] =
      614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,
      624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
      634,   635,    -1,   637,   638,   639,    -1,     5,   642,     7,
-       8,     9,    10,    11,    12,    -1,    -1,    15,   652,    -1,
-      -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,    27,
+       8,     9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,
+      -1,    19,    -1,    -1,    22,   659,    24,    25,    26,    27,
       28,    29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,
       38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,
       -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,
@@ -15119,7 +15076,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,   621,   622,   623,   624,   625,   626,   627,
       -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,
      638,   639,    -1,     5,   642,     7,     8,     9,    10,    11,
-      12,    -1,    -1,    15,   652,    -1,    -1,    19,    -1,    -1,
+      12,    -1,    -1,    15,    -1,    -1,   654,    19,    -1,    -1,
       22,    -1,    24,    25,    26,    27,    28,    29,    30,    31,
       32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,
       42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,
@@ -15183,7 +15140,7 @@ static const yytype_int16 yycheck[] =
      622,   623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,
       -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,     5,
      642,     7,     8,     9,    10,    11,    12,    -1,    -1,    15,
-     652,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,
+      -1,    -1,   654,    19,    -1,    -1,    22,    -1,    24,    25,
       26,    27,    28,    29,    30,    31,    32,    -1,    34,    -1,
       -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,
       46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,
@@ -15246,9 +15203,9 @@ static const yytype_int16 yycheck[] =
       -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,   625,
      626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,
       -1,   637,   638,   639,    -1,     5,   642,     7,     8,     9,
-      10,    11,    12,    -1,    -1,    15,   652,    -1,    -1,    19,
+      10,    11,    12,    -1,    -1,    15,    -1,    -1,   654,    19,
       -1,    -1,    22,    -1,    24,    25,    26,    27,    28,    29,
-      30,    31,    32,    -1,    34,    -1,    -1,    37,    38,    -1,
+      30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,
       -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,
       -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,
       -1,    61,    62,    -1,    64,    65,    -1,    67,    68,    69,
@@ -15258,7 +15215,7 @@ static const yytype_int16 yycheck[] =
      100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,
       -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,
       -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,
-      -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,
      140,    -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,
       -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,
      160,    -1,   162,   163,    -1,   165,   166,   167,    -1,   169,
@@ -15272,7 +15229,7 @@ static const yytype_int16 yycheck[] =
      240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,
       -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,
       -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,
-      -1,   271,    -1,    -1,   274,   275,   276,    -1,    -1,    -1,
+      -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,
       -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,   289,
       -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,
      300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
@@ -15294,14 +15251,14 @@ static const yytype_int16 yycheck[] =
      460,   461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,
       -1,   471,   472,   473,   474,   475,   476,   477,   478,   479,
      480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,
-     490,   491,   492,    -1,    -1,   495,   496,    -1,    -1,    -1,
+     490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,
      500,    -1,   502,   503,   504,   505,   506,   507,    -1,   509,
      510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,
       -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,
       -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,
      540,   541,    -1,   543,   544,   545,   546,   547,   548,    -1,
       -1,   551,   552,   553,   554,    -1,   556,   557,    -1,    -1,
-     560,   561,   562,   563,    -1,   565,   566,   567,    -1,   569,
+     560,   561,   562,   563,    -1,    -1,   566,   567,    -1,   569,
      570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,
      580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,
      590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,
@@ -15309,8 +15266,199 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,
       -1,   621,   622,   623,   624,   625,   626,   627,    -1,    -1,
       -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,
-      -1,    -1,   642,    -1,     5,   645,     7,     8,     9,    10,
-      11,    12,    13,    14,    15,    -1,    -1,    -1,    19,    -1,
+      -1,     5,   642,     7,     8,     9,    10,    11,    12,    -1,
+      -1,    15,    -1,    -1,   654,    19,    -1,    -1,    22,    -1,
+      24,    25,    26,    27,    28,    29,    30,    31,    32,    -1,
+      34,    -1,    -1,    37,    38,    -1,    -1,    -1,    42,    -1,
+      -1,    45,    46,    47,    -1,    49,    -1,    51,    52,    -1,
+      -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,
+      64,    65,    -1,    67,    68,    69,    70,    71,    72,    -1,
+      74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
+      84,    85,    86,    87,    88,    89,    -1,    91,    92,    -1,
+      94,    95,    96,    97,    98,    -1,   100,    -1,    -1,   103,
+      -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,
+      -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,
+      -1,    -1,    -1,   127,   128,    -1,    -1,    -1,   132,   133,
+      -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
+     144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,
+     154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,
+      -1,   165,   166,   167,    -1,   169,   170,    -1,   172,   173,
+     174,   175,   176,   177,   178,    -1,    -1,   181,   182,   183,
+     184,    -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,
+      -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,
+     204,    -1,   206,   207,   208,   209,   210,   211,   212,    -1,
+     214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,
+      -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,   233,
+     234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,
+      -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,
+      -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,
+      -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,
+     274,   275,   276,    -1,    -1,    -1,    -1,   281,   282,    -1,
+     284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,
+      -1,    -1,   296,   297,   298,   299,   300,   301,   302,   303,
+     304,   305,   306,   307,   308,   309,   310,   311,    -1,   313,
+     314,   315,   316,    -1,   318,   319,   320,   321,    -1,   323,
+     324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,   333,
+     334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,
+      -1,   345,   346,   347,   348,   349,   350,   351,   352,   353,
+     354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,
+      -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,
+     374,   375,   376,    -1,   378,   379,   380,   381,    -1,   383,
+     384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,
+     394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,
+     404,   405,   406,   407,   408,   409,   410,   411,    -1,    -1,
+     414,   415,   416,    -1,   418,    -1,   420,   421,   422,   423,
+     424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,
+      -1,   435,   436,   437,   438,   439,    -1,    -1,   442,   443,
+     444,   445,   446,    -1,   448,   449,    -1,   451,   452,   453,
+      -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,
+     464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,
+     474,   475,   476,   477,   478,   479,   480,   481,   482,    -1,
+     484,   485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,
+      -1,   495,   496,    -1,    -1,    -1,   500,    -1,   502,   503,
+     504,   505,   506,   507,    -1,   509,   510,   511,   512,   513,
+     514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,
+     524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,
+      -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,
+     544,   545,   546,   547,   548,    -1,    -1,   551,   552,   553,
+     554,    -1,   556,   557,    -1,    -1,   560,   561,   562,   563,
+      -1,   565,   566,   567,    -1,   569,   570,   571,   572,    -1,
+      -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,
+     584,   585,   586,   587,    -1,   589,   590,    -1,   592,   593,
+      -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,
+     604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,
+     614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,
+     624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,
+     634,   635,    -1,   637,   638,   639,    -1,    -1,   642,    -1,
+      -1,    -1,     5,   647,     7,     8,     9,    10,    11,    12,
+      13,    14,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
+      -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
+      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
+      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
+      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
+      -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
+      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
+      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
+      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
+     103,   104,    -1,   106,    -1,   108,    -1,   110,   111,    -1,
+     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
+      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
+     133,    -1,   135,   136,    -1,    -1,    -1,   140,    -1,   142,
+     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,   152,
+      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
+     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
+     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
+     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
+      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
+      -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
+     213,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
+      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
+     233,   234,    -1,    -1,    -1,   238,   239,   240,   241,    -1,
+     243,    -1,    -1,    -1,   247,   248,   249,    -1,    -1,    -1,
+     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
+     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
+      -1,   274,   275,   276,    -1,    -1,    -1,    -1,   281,   282,
+      -1,   284,    -1,   286,   287,   288,   289,    -1,    -1,    -1,
+      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
+     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
+     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
+     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
+     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
+     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
+     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
+     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
+      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
+     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
+     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
+      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
+     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
+      -1,    -1,   435,   436,   437,   438,   439,   440,    -1,   442,
+     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
+     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
+     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
+     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
+      -1,   484,   485,   486,    -1,    -1,   489,   490,   491,   492,
+      -1,    -1,    -1,   496,    -1,    -1,   499,   500,    -1,   502,
+     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
+     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
+      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
+     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
+     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
+     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
+     563,    -1,   565,   566,   567,    -1,   569,   570,   571,   572,
+      -1,    -1,    -1,    -1,    -1,   578,   579,   580,   581,    -1,
+      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
+     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
+     603,   604,   605,   606,   607,    -1,    -1,    -1,    -1,    -1,
+      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
+     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
+      -1,   634,   635,    -1,   637,   638,   639,    -1,     5,   642,
+       7,     8,     9,    10,    11,    12,    13,    14,    15,    -1,
+      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
+      27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
+      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
+      47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
+      -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
+      67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
+      77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
+      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
+      97,    98,    -1,   100,    -1,    -1,   103,   104,    -1,   106,
+      -1,   108,    -1,   110,   111,    -1,   113,    -1,    -1,    -1,
+     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
+     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,   136,
+      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
+      -1,    -1,    -1,    -1,   151,   152,    -1,   154,   155,   156,
+      -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
+     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
+     177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
+     187,   188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,
+      -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
+     207,   208,   209,   210,   211,   212,   213,   214,    -1,    -1,
+     217,   218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,
+      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
+      -1,   238,   239,   240,   241,    -1,   243,    -1,    -1,    -1,
+     247,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
+      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
+     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,   276,
+      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
+     287,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
+     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
+     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
+      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
+      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
+      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
+     347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
+     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
+     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
+      -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
+      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
+     407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
+      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
+     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
+     437,   438,   439,   440,    -1,   442,   443,   444,   445,   446,
+      -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
+      -1,   458,    -1,   460,   461,    -1,   463,   464,    -1,   466,
+      -1,   468,    -1,    -1,   471,   472,   473,   474,   475,   476,
+     477,   478,   479,   480,   481,   482,    -1,   484,   485,   486,
+      -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
+      -1,    -1,   499,   500,    -1,   502,   503,   504,   505,   506,
+     507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
+      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
+     527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
+     537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
+     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
+     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
+      -1,   578,   579,   580,   581,    -1,    -1,   584,   585,   586,
+     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
+      -1,    -1,   599,    -1,    -1,   602,   603,   604,   605,   606,
+     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
+     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
+     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,   635,    -1,
+     637,   638,   639,    -1,     5,   642,     7,     8,     9,    10,
+      11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
       -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
       31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
       -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
@@ -15319,61 +15467,61 @@ static const yytype_int16 yycheck[] =
       71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
       -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
       91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
-      -1,    -1,   103,   104,    -1,   106,    -1,   108,    -1,   110,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
-      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
-      -1,    -1,   133,    -1,   135,   136,    -1,    -1,    -1,   140,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,   129,    -1,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
-     151,   152,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
+     151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
       -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
      181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
-     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
+     191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,   200,
       -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
-     211,   212,   213,   214,    -1,    -1,   217,   218,   219,    -1,
-     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
+     221,   222,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
      231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
-     241,    -1,   243,    -1,    -1,    -1,   247,   248,   249,    -1,
+      -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
       -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
       -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
-     271,    -1,    -1,   274,   275,   276,    -1,    -1,    -1,    -1,
-     281,   282,    -1,   284,    -1,   286,   287,   288,   289,    -1,
-      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
+      -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,   300,
      301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
      311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
      321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
      331,   332,   333,   334,   335,    -1,    -1,   338,   339,    -1,
      341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
      351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
-     361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
-      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+     361,   362,   363,   364,   365,    -1,   367,   368,    -1,    -1,
+     371,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
      381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
       -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
      411,    -1,    -1,   414,   415,   416,    -1,   418,    -1,   420,
      421,   422,   423,   424,    -1,   426,   427,   428,    -1,    -1,
-     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,   440,
+     431,    -1,    -1,    -1,   435,   436,   437,   438,   439,    -1,
       -1,   442,   443,   444,   445,   446,    -1,   448,   449,    -1,
      451,   452,   453,    -1,    -1,   456,    -1,   458,    -1,   460,
      461,    -1,   463,   464,    -1,   466,    -1,   468,    -1,    -1,
      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
-     481,   482,    -1,   484,   485,   486,    -1,    -1,   489,   490,
-     491,   492,    -1,    -1,    -1,   496,    -1,    -1,   499,   500,
+     481,   482,    -1,   484,   485,    -1,    -1,    -1,   489,   490,
+     491,   492,    -1,    -1,    -1,   496,    -1,    -1,    -1,   500,
       -1,   502,   503,   504,   505,   506,   507,    -1,   509,   510,
-     511,   512,   513,   514,    -1,    -1,    -1,    -1,    -1,    -1,
+     511,   512,   513,   514,    -1,    -1,   517,   518,   519,    -1,
      521,   522,    -1,   524,    -1,    -1,   527,    -1,    -1,    -1,
      531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
      541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
      551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
+     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
      571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
-     581,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
+      -1,    -1,    -1,   584,   585,   586,   587,   588,   589,   590,
       -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
-      -1,   602,   603,   604,   605,   606,   607,    -1,    -1,    -1,
+      -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
       -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
      621,   622,   623,   624,   625,   626,   627,    -1,    -1,    -1,
       -1,    -1,    -1,   634,   635,    -1,   637,   638,   639,    -1,
-       5,   642,     7,     8,     9,    10,    11,    12,    13,    14,
+       5,   642,     7,     8,     9,    10,    11,    12,    -1,    -1,
       15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
       -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
@@ -15382,26 +15530,26 @@ static const yytype_int16 yycheck[] =
       65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
       85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
-      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,   104,
-      -1,   106,    -1,   108,    -1,   110,   111,    -1,   113,    -1,
+      95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
-      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
-     135,   136,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
-     145,   146,    -1,    -1,    -1,    -1,   151,   152,    -1,   154,
+      -1,    -1,   127,   128,   129,    -1,    -1,   132,   133,    -1,
+     135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
+     145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
      155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
      165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
      175,   176,   177,   178,    -1,    -1,   181,   182,   183,   184,
-      -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
+      -1,    -1,   187,   188,    -1,   190,   191,   192,   193,    -1,
      195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
-      -1,   206,   207,   208,   209,   210,   211,   212,   213,   214,
-      -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
+      -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
+      -1,    -1,   217,   218,   219,    -1,   221,   222,    -1,    -1,
      225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
-      -1,    -1,    -1,   238,   239,   240,   241,    -1,   243,    -1,
-      -1,    -1,   247,   248,   249,    -1,    -1,    -1,   253,    -1,
+      -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
+      -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
      255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
       -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
-     275,   276,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
-      -1,   286,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+      -1,   286,    -1,   288,   289,    -1,    -1,   292,    -1,    -1,
       -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
      305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
      315,   316,    -1,   318,   319,   320,   321,    -1,   323,   324,
@@ -15409,20 +15557,20 @@ static const yytype_int16 yycheck[] =
      335,    -1,    -1,   338,   339,    -1,   341,    -1,   343,    -1,
      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
       -1,    -1,   357,    -1,    -1,   360,   361,   362,   363,    -1,
-      -1,    -1,   367,   368,    -1,    -1,    -1,   372,    -1,   374,
+      -1,    -1,   367,   368,    -1,    -1,   371,   372,    -1,   374,
      375,   376,    -1,   378,   379,   380,   381,    -1,   383,   384,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
      395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
      405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
      415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
       -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
-     435,   436,   437,   438,   439,   440,    -1,   442,   443,   444,
+     435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
      445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
       -1,   456,    -1,   458,    -1,   460,   461,    -1,   463,   464,
       -1,   466,    -1,   468,    -1,    -1,   471,   472,   473,   474,
      475,   476,   477,   478,   479,   480,   481,   482,    -1,   484,
-     485,   486,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
-      -1,   496,    -1,    -1,   499,   500,    -1,   502,   503,   504,
+     485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
+      -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
      505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
       -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
       -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
@@ -15430,10 +15578,10 @@ static const yytype_int16 yycheck[] =
      545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
       -1,   556,   557,    -1,    -1,   560,   561,   562,   563,    -1,
      565,   566,   567,    -1,   569,   570,   571,   572,    -1,    -1,
-      -1,    -1,    -1,   578,   579,   580,   581,    -1,    -1,   584,
-     585,   586,   587,    -1,   589,   590,    -1,   592,   593,    -1,
-     595,   596,    -1,    -1,   599,    -1,    -1,   602,   603,   604,
-     605,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
+      -1,    -1,    -1,   578,   579,   580,    -1,    -1,    -1,   584,
+     585,   586,   587,   588,   589,   590,    -1,   592,   593,    -1,
+     595,   596,    -1,    -1,   599,    -1,    -1,   602,    -1,   604,
+      -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
       -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
@@ -15449,7 +15597,7 @@ static const yytype_int16 yycheck[] =
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
      119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-     129,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
+     129,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,
       -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
       -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
       -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
@@ -15472,7 +15620,7 @@ static const yytype_int16 yycheck[] =
       -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
      339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
      349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
-      -1,   360,   361,   362,   363,   364,   365,    -1,   367,   368,
+      -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
       -1,    -1,   371,   372,    -1,   374,   375,   376,    -1,   378,
      379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
@@ -15487,12 +15635,12 @@ static const yytype_int16 yycheck[] =
      479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
      489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
       -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,   517,   518,
-     519,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
+     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
+      -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
       -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
       -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
       -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
+      -1,   560,   561,   562,   563,    -1,   565,   566,   567,    -1,
      569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
      579,   580,    -1,    -1,    -1,   584,   585,   586,   587,   588,
      589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
@@ -15574,25 +15722,25 @@ static const yytype_int16 yycheck[] =
       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
       87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
       97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
-      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
+      -1,   108,   109,   110,   111,    -1,   113,    -1,    -1,    -1,
      117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,   129,    -1,    -1,   132,   133,    -1,   135,    -1,
+     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
       -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
      167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
      177,   178,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
-     187,   188,    -1,   190,   191,   192,   193,    -1,   195,    -1,
+     187,   188,    -1,   190,   191,   192,    -1,    -1,   195,    -1,
       -1,    -1,   199,   200,    -1,   202,    -1,   204,    -1,   206,
      207,   208,   209,   210,   211,   212,    -1,   214,    -1,    -1,
-     217,   218,   219,    -1,   221,   222,    -1,    -1,   225,   226,
+     217,   218,   219,    -1,   221,    -1,    -1,    -1,   225,   226,
       -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
       -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
       -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
       -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
+     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,   276,
       -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
+      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
      307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
       -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
@@ -15600,7 +15748,7 @@ static const yytype_int16 yycheck[] =
       -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
      347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
      357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-     367,   368,    -1,    -1,   371,   372,    -1,   374,   375,   376,
+     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
       -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
       -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
@@ -15622,7 +15770,7 @@ static const yytype_int16 yycheck[] =
      557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
      567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
       -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
-     587,   588,   589,   590,    -1,   592,   593,    -1,   595,   596,
+     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
       -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
      607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
      617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
@@ -15630,7 +15778,7 @@ static const yytype_int16 yycheck[] =
      637,   638,   639,    -1,     5,   642,     7,     8,     9,    10,
       11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
       -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
-      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      31,    32,    -1,    34,    -1,    -1,    37,    38,    -1,    -1,
       -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
       51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
       61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
@@ -15639,24 +15787,24 @@ static const yytype_int16 yycheck[] =
       91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
       -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
-      -1,   122,    -1,    -1,    -1,    -1,   127,   128,   129,    -1,
+      -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
       -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
      151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
       -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
      181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
-     191,   192,   193,    -1,   195,    -1,    -1,    -1,   199,   200,
+     191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
       -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
      211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
-     221,   222,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
+     221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
      231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
       -1,    -1,   243,    -1,    -1,    -1,    -1,   248,   249,    -1,
       -1,    -1,   253,    -1,   255,   256,    -1,   258,   259,    -1,
       -1,    -1,   263,    -1,    -1,   266,   267,   268,    -1,    -1,
-     271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
+     271,    -1,    -1,   274,   275,   276,    -1,    -1,    -1,    -1,
      281,   282,    -1,   284,    -1,   286,    -1,   288,   289,    -1,
-      -1,   292,    -1,    -1,    -1,   296,   297,   298,   299,   300,
+      -1,    -1,    -1,    -1,    -1,   296,   297,   298,   299,   300,
      301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
      311,    -1,   313,   314,   315,   316,    -1,   318,   319,   320,
      321,    -1,   323,   324,   325,    -1,    -1,    -1,    -1,   330,
@@ -15664,7 +15812,7 @@ static const yytype_int16 yycheck[] =
      341,    -1,   343,    -1,   345,   346,   347,   348,   349,   350,
      351,   352,   353,   354,    -1,    -1,   357,    -1,    -1,   360,
      361,   362,   363,    -1,    -1,    -1,   367,   368,    -1,    -1,
-     371,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
+      -1,   372,    -1,   374,   375,   376,    -1,   378,   379,   380,
      381,    -1,   383,   384,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,   393,   394,   395,    -1,    -1,   398,    -1,   400,
       -1,   402,   403,   404,   405,   406,   407,   408,   409,   410,
@@ -15685,7 +15833,7 @@ static const yytype_int16 yycheck[] =
      551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
      561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
      571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
-      -1,    -1,    -1,   584,   585,   586,   587,   588,   589,   590,
+      -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
       -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
       -1,   602,    -1,   604,    -1,   606,   607,    -1,    -1,    -1,
       -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
@@ -15694,14 +15842,14 @@ static const yytype_int16 yycheck[] =
        5,   642,     7,     8,     9,    10,    11,    12,    -1,    -1,
       15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
-      -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
+      -1,    -1,    -1,    38,    39,    -1,    -1,    42,    -1,    -1,
       45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
       55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
       65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
       85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
-      -1,   106,    -1,   108,   109,   110,   111,    -1,   113,    -1,
+      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
       -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
@@ -15712,13 +15860,13 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   187,   188,    -1,   190,   191,   192,    -1,    -1,
      195,    -1,    -1,    -1,   199,   200,    -1,   202,    -1,   204,
       -1,   206,   207,   208,   209,   210,   211,   212,    -1,   214,
-      -1,    -1,   217,   218,   219,    -1,   221,    -1,    -1,    -1,
+      -1,    -1,   217,   218,   219,    -1,   221,   222,   223,    -1,
      225,   226,    -1,    -1,    -1,   230,   231,   232,   233,   234,
       -1,    -1,    -1,   238,   239,   240,    -1,    -1,   243,    -1,
       -1,    -1,    -1,   248,   249,    -1,    -1,    -1,   253,    -1,
      255,   256,    -1,   258,   259,    -1,    -1,    -1,   263,    -1,
       -1,   266,   267,   268,    -1,    -1,   271,    -1,    -1,   274,
-     275,   276,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
+     275,    -1,    -1,    -1,    -1,    -1,   281,   282,    -1,   284,
       -1,   286,    -1,   288,   289,    -1,    -1,    -1,    -1,    -1,
       -1,   296,   297,   298,   299,   300,   301,   302,   303,   304,
      305,   306,   307,   308,   309,   310,   311,    -1,   313,   314,
@@ -15757,7 +15905,7 @@ static const yytype_int16 yycheck[] =
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    37,    38,
+      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
       49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
       59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
@@ -15767,7 +15915,7 @@ static const yytype_int16 yycheck[] =
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
      119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
       -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
       -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
       -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
@@ -15781,9 +15929,9 @@ static const yytype_int16 yycheck[] =
      239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
      249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
      259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,   276,    -1,    -1,
+      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
+     289,    -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
      309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
      319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
@@ -15791,9 +15939,9 @@ static const yytype_int16 yycheck[] =
      339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
      349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
       -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
-      -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
+      -1,    -1,   371,   372,    -1,   374,   375,   376,    -1,   378,
      379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
+      -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,
       -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
      409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
       -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
@@ -15810,9 +15958,9 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
       -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
       -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,   565,   566,   567,    -1,
+      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
      569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
+     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,   588,
      589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
      599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
       -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
@@ -15821,7 +15969,7 @@ static const yytype_int16 yycheck[] =
      639,    -1,     5,   642,     7,     8,     9,    10,    11,    12,
       -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
       -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
-      -1,    34,    -1,    -1,    -1,    38,    39,    -1,    -1,    42,
+      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
       -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
       -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
       -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
@@ -15839,14 +15987,14 @@ static const yytype_int16 yycheck[] =
      183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
       -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
       -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,   222,
-     223,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
+      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
+      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
      233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,
      243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
      253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
      263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
       -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
+      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,   292,
       -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
      303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
      313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
@@ -15854,10 +16002,10 @@ static const yytype_int16 yycheck[] =
      333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
      343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
      353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
+     363,    -1,    -1,    -1,   367,   368,    -1,    -1,   371,   372,
       -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
      383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
+     393,   394,   395,    -1,   397,   398,    -1,   400,    -1,   402,
      403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
       -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
      423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
@@ -15874,9 +16022,9 @@ static const yytype_int16 yycheck[] =
      533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
      543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
      553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,   565,   566,   567,    -1,   569,   570,   571,   572,
+     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
       -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
+      -1,   584,   585,   586,   587,   588,   589,   590,    -1,   592,
      593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
       -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
       -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
@@ -15885,7 +16033,7 @@ static const yytype_int16 yycheck[] =
        7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
       -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
-      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
+      37,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
       47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
       -1,    58,    59,    -1,    61,    62,    -1,    64,    65,    -1,
       67,    68,    69,    70,    71,    72,    -1,    74,    75,    76,
@@ -15894,7 +16042,7 @@ static const yytype_int16 yycheck[] =
       97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
       -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
      117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
+     127,   128,    -1,    -1,    -1,   132,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
       -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
@@ -15908,9 +16056,9 @@ static const yytype_int16 yycheck[] =
       -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
       -1,   248,   249,    -1,    -1,    -1,   253,    -1,   255,   256,
       -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,   266,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
+     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,   276,
       -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,   292,    -1,    -1,    -1,   296,
+      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
      307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
       -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
@@ -15918,10 +16066,10 @@ static const yytype_int16 yycheck[] =
       -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
      347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
      357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-     367,   368,    -1,    -1,   371,   372,    -1,   374,   375,   376,
+     367,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
       -1,   378,   379,   380,   381,    -1,   383,   384,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
-     397,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
+      -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
      407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
       -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
      427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
@@ -15937,10 +16085,10 @@ static const yytype_int16 yycheck[] =
      527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
      537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
      547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
      567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
       -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
-     587,   588,   589,   590,    -1,   592,   593,    -1,   595,   596,
+     587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
       -1,    -1,   599,    -1,    -1,   602,    -1,   604,    -1,   606,
      607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
      617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
@@ -16012,16 +16160,16 @@ static const yytype_int16 yycheck[] =
        5,   642,     7,     8,     9,    10,    11,    12,    -1,    -1,
       15,    -1,    -1,    -1,    19,    -1,    -1,    22,    -1,    24,
       25,    26,    27,    28,    29,    30,    31,    32,    -1,    34,
-      -1,    -1,    37,    38,    -1,    -1,    -1,    42,    -1,    -1,
+      -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
       45,    46,    47,    -1,    49,    -1,    51,    52,    -1,    -1,
       55,    -1,    -1,    58,    59,    -1,    61,    62,    -1,    64,
       65,    -1,    67,    68,    69,    70,    71,    72,    -1,    74,
       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
       85,    86,    87,    88,    89,    -1,    91,    92,    -1,    94,
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
-      -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
+      -1,   106,    -1,   108,   109,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
-      -1,    -1,   127,   128,    -1,    -1,    -1,   132,   133,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
      155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
@@ -16073,7 +16221,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
+       9,    10,    11,    12,    13,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
       29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
@@ -16099,9 +16247,9 @@ static const yytype_int16 yycheck[] =
      239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
      249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
      259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
+      -1,    -1,   271,    -1,    -1,   274,   275,   276,    -1,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,   292,    -1,    -1,    -1,   296,   297,   298,
+     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
      309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
      319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
@@ -16109,9 +16257,9 @@ static const yytype_int16 yycheck[] =
      339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
      349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
       -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
-      -1,    -1,   371,   372,    -1,   374,   375,   376,    -1,   378,
+      -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
      379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,   397,   398,
+      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
       -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
      409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
       -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
@@ -16128,9 +16276,9 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
       -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
       -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
+      -1,   560,   561,   562,   563,    -1,   565,   566,   567,    -1,
      569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,   588,
+     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
      589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
      599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
       -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
@@ -16146,7 +16294,7 @@ static const yytype_int16 yycheck[] =
       -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
       83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
       -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
-     103,    -1,    -1,   106,    -1,   108,   109,    -1,   111,    -1,
+     103,    -1,    -1,   106,    -1,   108,    -1,   110,   111,    -1,
      113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
       -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
      133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
@@ -16200,7 +16348,7 @@ static const yytype_int16 yycheck[] =
       -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
      623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
       -1,   634,   635,    -1,   637,   638,   639,    -1,     5,   642,
-       7,     8,     9,    10,    11,    12,    13,    -1,    15,    -1,
+       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
       -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
       -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
@@ -16212,7 +16360,7 @@ static const yytype_int16 yycheck[] =
       97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
       -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
      117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
+     127,   128,    -1,    -1,    -1,   132,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
       -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
@@ -16266,14 +16414,14 @@ static const yytype_int16 yycheck[] =
      637,   638,   639,    -1,     5,   642,     7,     8,     9,    10,
       11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
       -1,    22,    -1,    24,    25,    26,    27,    28,    29,    30,
-      31,    32,    -1,    34,    -1,    -1,    -1,    38,    -1,    -1,
+      31,    32,    -1,    34,    -1,    -1,    37,    38,    -1,    -1,
       -1,    42,    -1,    -1,    45,    46,    47,    -1,    49,    -1,
       51,    52,    -1,    -1,    55,    -1,    -1,    58,    59,    -1,
       61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
       71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
       -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
       91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
-      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,   110,
+      -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
       -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
       -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
@@ -16339,7 +16487,7 @@ static const yytype_int16 yycheck[] =
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
       -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
-      -1,    -1,   127,   128,    -1,    -1,    -1,   132,   133,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
      155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
@@ -16392,8 +16540,8 @@ static const yytype_int16 yycheck[] =
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    37,    38,
+      19,    20,    -1,    22,    -1,    24,    25,    26,    27,    28,
+      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
       49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
       59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
@@ -16417,7 +16565,7 @@ static const yytype_int16 yycheck[] =
      239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
      249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
      259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,   276,    -1,    -1,
+      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
      289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
@@ -16463,7 +16611,7 @@ static const yytype_int16 yycheck[] =
       -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
       -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
       83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
+      -1,    94,    95,    96,    97,    98,    99,   100,    -1,    -1,
      103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
      113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
       -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
@@ -16471,7 +16619,7 @@ static const yytype_int16 yycheck[] =
      143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
       -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
      163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
+     173,   174,   175,   176,   177,   178,    -1,   180,   181,   182,
      183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
       -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
       -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
@@ -16481,7 +16629,7 @@ static const yytype_int16 yycheck[] =
      243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
      253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
      263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
-      -1,   274,   275,   276,    -1,    -1,    -1,    -1,   281,   282,
+      -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
       -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
       -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
      303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
@@ -16510,7 +16658,7 @@ static const yytype_int16 yycheck[] =
      533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
      543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
      553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,   565,   566,   567,    -1,   569,   570,   571,   572,
+     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
       -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
       -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
      593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
@@ -16519,7 +16667,7 @@ static const yytype_int16 yycheck[] =
      623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
       -1,   634,   635,    -1,   637,   638,   639,    -1,     5,   642,
        7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    20,    -1,    22,    -1,    24,    25,    26,
+      -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
       -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
       47,    -1,    49,    -1,    51,    52,    -1,    -1,    55,    -1,
@@ -16569,11 +16717,11 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   489,   490,   491,   492,    -1,    -1,    -1,   496,
       -1,    -1,    -1,   500,    -1,   502,   503,   504,   505,   506,
      507,    -1,   509,   510,   511,   512,   513,   514,    -1,    -1,
-      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
+      -1,   518,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
      527,    -1,    -1,    -1,   531,   532,   533,    -1,    -1,    -1,
      537,    -1,    -1,   540,   541,    -1,   543,   544,   545,   546,
      547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,   565,   566,
+     557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,
      567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
       -1,   578,   579,   580,    -1,    -1,    -1,   584,   585,   586,
      587,    -1,   589,   590,    -1,   592,   593,    -1,   595,   596,
@@ -16590,7 +16738,7 @@ static const yytype_int16 yycheck[] =
       61,    62,    -1,    64,    65,    -1,    67,    68,    69,    70,
       71,    72,    -1,    74,    75,    76,    77,    78,    79,    80,
       -1,    82,    83,    84,    85,    86,    87,    88,    89,    -1,
-      91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
+      91,    92,    -1,    94,    95,    96,    97,    98,    -1,   100,
       -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
       -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
@@ -16598,10 +16746,10 @@ static const yytype_int16 yycheck[] =
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
      151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
-      -1,   172,   173,   174,   175,   176,   177,   178,    -1,   180,
+      -1,   172,   173,   174,   175,   176,   177,   178,    -1,    -1,
      181,   182,   183,   184,    -1,    -1,   187,   188,    -1,   190,
      191,   192,    -1,    -1,   195,    -1,    -1,    -1,   199,   200,
-      -1,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
+     201,   202,    -1,   204,    -1,   206,   207,   208,   209,   210,
      211,   212,    -1,   214,    -1,    -1,   217,   218,   219,    -1,
      221,    -1,    -1,    -1,   225,   226,    -1,    -1,    -1,   230,
      231,   232,   233,   234,    -1,    -1,    -1,   238,   239,   240,
@@ -16657,7 +16805,7 @@ static const yytype_int16 yycheck[] =
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
       -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
-      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,   132,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
      155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
@@ -16696,7 +16844,7 @@ static const yytype_int16 yycheck[] =
      485,    -1,    -1,    -1,   489,   490,   491,   492,    -1,    -1,
       -1,   496,    -1,    -1,    -1,   500,    -1,   502,   503,   504,
      505,   506,   507,    -1,   509,   510,   511,   512,   513,   514,
-      -1,    -1,    -1,   518,    -1,    -1,   521,   522,    -1,   524,
+      -1,    -1,    -1,    -1,    -1,    -1,   521,   522,    -1,   524,
       -1,    -1,   527,    -1,    -1,    -1,   531,   532,   533,    -1,
       -1,    -1,   537,    -1,    -1,   540,   541,    -1,   543,   544,
      545,   546,   547,   548,    -1,    -1,   551,   552,   553,   554,
@@ -16721,14 +16869,14 @@ static const yytype_int16 yycheck[] =
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
      119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
-      -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
+      -1,    -1,    -1,   132,   133,    -1,   135,    -1,    -1,    -1,
       -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
       -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
       -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
      169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
       -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
       -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,   201,   202,    -1,   204,    -1,   206,   207,   208,
+     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
      209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
      219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
       -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
@@ -16848,7 +16996,7 @@ static const yytype_int16 yycheck[] =
       97,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
       -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
      117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,   128,    -1,    -1,    -1,   132,   133,    -1,   135,    -1,
+     127,   128,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,   151,    -1,    -1,   154,   155,   156,
       -1,    -1,    -1,   160,    -1,   162,   163,    -1,   165,   166,
@@ -16877,7 +17025,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
       -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
      407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
+     417,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
      427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
      437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
       -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
@@ -16912,7 +17060,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
       -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
-      -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
      151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
@@ -16955,7 +17103,7 @@ static const yytype_int16 yycheck[] =
      531,   532,   533,    -1,    -1,    -1,   537,    -1,    -1,   540,
      541,    -1,   543,   544,   545,   546,   547,   548,    -1,    -1,
      551,   552,   553,   554,    -1,   556,   557,    -1,    -1,   560,
-     561,   562,   563,    -1,    -1,   566,   567,    -1,   569,   570,
+     561,   562,   563,    -1,   565,   566,   567,    -1,   569,   570,
      571,   572,    -1,    -1,    -1,    -1,    -1,   578,   579,   580,
       -1,    -1,    -1,   584,   585,   586,   587,    -1,   589,   590,
       -1,   592,   593,    -1,   595,   596,    -1,    -1,   599,    -1,
@@ -16975,7 +17123,7 @@ static const yytype_int16 yycheck[] =
       95,    96,    97,    98,    -1,   100,    -1,    -1,   103,    -1,
       -1,   106,    -1,   108,    -1,    -1,   111,    -1,   113,    -1,
       -1,    -1,   117,   118,   119,    -1,    -1,   122,    -1,    -1,
-      -1,    -1,   127,   128,    -1,    -1,    -1,    -1,   133,    -1,
+      -1,    -1,   127,   128,    -1,    -1,    -1,   132,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,   151,    -1,    -1,   154,
      155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
@@ -17004,7 +17152,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
      395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
      405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
-     415,   416,   417,   418,    -1,   420,   421,   422,   423,   424,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
       -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
      435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
      445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
@@ -17027,7 +17175,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
-       9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
+       9,    10,    11,    12,    13,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
       29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
@@ -17082,7 +17230,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
       -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
       -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
-      -1,   560,   561,   562,   563,    -1,   565,   566,   567,    -1,
+      -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
      569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
      579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
      589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
@@ -17154,7 +17302,7 @@ static const yytype_int16 yycheck[] =
       -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
      623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
       -1,   634,   635,    -1,   637,   638,   639,    -1,     5,   642,
-       7,     8,     9,    10,    11,    12,    13,    -1,    15,    -1,
+       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
       -1,    -1,    19,    -1,    -1,    22,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    32,    -1,    34,    -1,    -1,
       -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
@@ -17195,7 +17343,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,    -1,   393,   394,   395,    -1,
       -1,   398,    -1,   400,    -1,   402,   403,   404,   405,   406,
      407,   408,   409,   410,   411,    -1,    -1,   414,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
+     417,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
      427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
      437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
       -1,   448,   449,    -1,   451,   452,   453,    -1,    -1,   456,
@@ -17230,7 +17378,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   103,    -1,    -1,   106,    -1,   108,    -1,    -1,
      111,    -1,   113,    -1,    -1,    -1,   117,   118,   119,    -1,
       -1,   122,    -1,    -1,    -1,    -1,   127,   128,    -1,    -1,
-      -1,   132,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
+      -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
      151,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
@@ -17322,7 +17470,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   393,   394,
      395,    -1,    -1,   398,    -1,   400,    -1,   402,   403,   404,
      405,   406,   407,   408,   409,   410,   411,    -1,    -1,   414,
-     415,   416,   417,   418,    -1,   420,   421,   422,   423,   424,
+     415,   416,    -1,   418,    -1,   420,   421,   422,   423,   424,
       -1,   426,   427,   428,    -1,    -1,   431,    -1,    -1,    -1,
      435,   436,   437,   438,   439,    -1,    -1,   442,   443,   444,
      445,   446,    -1,   448,   449,    -1,   451,   452,   453,    -1,
@@ -17346,132 +17494,132 @@ static const yytype_int16 yycheck[] =
      625,   626,   627,    -1,    -1,    -1,    -1,    -1,    -1,   634,
      635,    -1,   637,   638,   639,    -1,     5,   642,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
-      19,    -1,    -1,    22,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    32,    -1,    34,    -1,    -1,    -1,    38,
+      19,    -1,    -1,    -1,    -1,    24,    25,    26,    27,    28,
+      29,    30,    31,    -1,    -1,    34,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
-      49,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    58,
-      59,    -1,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    76,    77,    78,
-      79,    80,    -1,    82,    83,    84,    85,    86,    87,    88,
-      89,    -1,    91,    92,    -1,    94,    95,    96,    97,    98,
+      49,    -1,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,
+      59,    -1,    61,    -1,    -1,    -1,    -1,    -1,    67,    68,
+      69,    70,    71,    72,    -1,    74,    75,    -1,    -1,    -1,
+      -1,    -1,    -1,    82,    -1,    84,    -1,    86,    87,    88,
+      89,    -1,    91,    92,    -1,    94,    95,    96,    -1,    98,
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
       -1,    -1,   111,    -1,   113,    -1,    -1,    -1,   117,   118,
-     119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,   128,
+     119,    -1,    -1,   122,    -1,    -1,    -1,    -1,   127,    -1,
       -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1,    -1,
       -1,   140,    -1,   142,   143,   144,   145,   146,    -1,    -1,
-      -1,    -1,   151,    -1,    -1,   154,   155,   156,    -1,    -1,
-      -1,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
-     169,   170,    -1,   172,   173,   174,   175,   176,   177,   178,
+      -1,    -1,    -1,    -1,    -1,   154,   155,   156,    -1,   158,
+     159,   160,    -1,   162,   163,    -1,   165,   166,   167,    -1,
+     169,   170,    -1,   172,   173,   174,   175,   176,    -1,    -1,
       -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
-      -1,   190,   191,   192,    -1,    -1,   195,    -1,    -1,    -1,
-     199,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
-     209,   210,   211,   212,    -1,   214,    -1,    -1,   217,   218,
-     219,    -1,   221,    -1,    -1,    -1,   225,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
+     189,   190,   191,   192,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
+     209,   210,    -1,   212,    -1,   214,    -1,    -1,    -1,   218,
+     219,    -1,    -1,    -1,    -1,    -1,    -1,   226,    -1,    -1,
+      -1,   230,   231,   232,   233,   234,   235,    -1,    -1,   238,
      239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
-     249,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,    -1,    -1,    -1,   263,    -1,    -1,   266,   267,   268,
-      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
+     259,   260,    -1,    -1,   263,    -1,    -1,    -1,   267,   268,
+      -1,    -1,   271,   272,    -1,   274,   275,    -1,    -1,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
+     289,    -1,    -1,    -1,    -1,   294,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
      309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
      319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
       -1,   330,   331,   332,   333,   334,   335,    -1,    -1,   338,
      339,    -1,   341,    -1,   343,    -1,   345,   346,   347,   348,
      349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
-      -1,   360,   361,   362,   363,    -1,    -1,    -1,   367,   368,
+      -1,   360,   361,   362,   363,    -1,    -1,    -1,    -1,   368,
       -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,   383,   384,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   393,   394,   395,    -1,    -1,   398,
+     379,   380,   381,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   394,   395,    -1,    -1,    -1,
       -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
-     409,   410,   411,    -1,    -1,   414,   415,   416,    -1,   418,
+     409,   410,    -1,    -1,    -1,    -1,   415,   416,    -1,   418,
       -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
       -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
      439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-     449,    -1,   451,   452,   453,    -1,    -1,   456,    -1,   458,
-      -1,   460,   461,    -1,   463,   464,    -1,   466,    -1,   468,
-      -1,    -1,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,    -1,   484,   485,    -1,    -1,    -1,
-     489,   490,   491,   492,    -1,    -1,    -1,   496,    -1,    -1,
-      -1,   500,    -1,   502,   503,   504,   505,   506,   507,    -1,
-     509,   510,   511,   512,   513,   514,    -1,    -1,    -1,    -1,
+      -1,    -1,   451,    -1,   453,   454,    -1,   456,    -1,    -1,
+      -1,   460,    -1,    -1,   463,   464,    -1,   466,   467,   468,
+      -1,    -1,   471,    -1,   473,   474,   475,   476,   477,   478,
+     479,    -1,   481,   482,    -1,   484,    -1,    -1,    -1,    -1,
+     489,   490,   491,    -1,    -1,    -1,    -1,   496,    -1,    -1,
+      -1,    -1,    -1,    -1,   503,    -1,    -1,   506,   507,    -1,
+     509,    -1,   511,    -1,   513,   514,    -1,    -1,    -1,    -1,
       -1,    -1,   521,   522,    -1,   524,    -1,    -1,   527,    -1,
-      -1,    -1,   531,   532,   533,    -1,    -1,    -1,   537,    -1,
-      -1,   540,   541,    -1,   543,   544,   545,   546,   547,   548,
+      -1,    -1,   531,    -1,   533,    -1,    -1,    -1,   537,    -1,
+      -1,    -1,   541,    -1,   543,   544,   545,   546,   547,   548,
       -1,    -1,   551,   552,   553,   554,    -1,   556,   557,    -1,
       -1,   560,   561,   562,   563,    -1,    -1,   566,   567,    -1,
      569,   570,   571,   572,    -1,    -1,    -1,    -1,    -1,   578,
-     579,   580,    -1,    -1,    -1,   584,   585,   586,   587,    -1,
-     589,   590,    -1,   592,   593,    -1,   595,   596,    -1,    -1,
-     599,    -1,    -1,   602,    -1,   604,    -1,   606,   607,    -1,
+     579,   580,    -1,    -1,    -1,    -1,   585,   586,   587,    -1,
+     589,   590,    -1,   592,   593,    -1,    -1,    -1,    -1,    -1,
+     599,    -1,    -1,   602,    -1,    -1,    -1,   606,   607,    -1,
       -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
       -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,    -1,    -1,    -1,    -1,   634,   635,    -1,   637,   638,
+      -1,   630,    -1,    -1,    -1,   634,    -1,    -1,   637,    -1,
      639,    -1,     5,   642,     7,     8,     9,    10,    11,    12,
-      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    22,
-      -1,    24,    25,    26,    27,    28,    29,    30,    31,    32,
+      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    -1,
+      -1,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
       -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
-      -1,    -1,    45,    46,    47,    -1,    49,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,    58,    59,    -1,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    69,    70,    71,    72,
-      -1,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
-      83,    84,    85,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    97,    98,    -1,   100,    -1,    -1,
+      -1,    -1,    45,    46,    47,    -1,    49,    -1,    -1,    -1,
+      -1,    -1,    55,    56,    -1,    58,    59,    -1,    61,    -1,
+      -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,    72,
+      -1,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,    82,
+      -1,    84,    -1,    86,    87,    88,    89,    -1,    91,    92,
+      -1,    94,    95,    96,    -1,    98,    -1,   100,    -1,    -1,
      103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
      113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
-      -1,    -1,    -1,    -1,   127,   128,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   127,    -1,    -1,    -1,    -1,    -1,
      133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
-     143,   144,   145,   146,    -1,    -1,    -1,    -1,   151,    -1,
-      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,   162,
+     143,   144,   145,   146,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   154,   155,   156,    -1,   158,    -1,   160,    -1,   162,
      163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,   177,   178,    -1,    -1,   181,   182,
-     183,   184,    -1,    -1,   187,   188,    -1,   190,   191,   192,
-      -1,    -1,   195,    -1,    -1,    -1,   199,   200,    -1,   202,
-      -1,   204,    -1,   206,   207,   208,   209,   210,   211,   212,
-      -1,   214,    -1,    -1,   217,   218,   219,    -1,   221,    -1,
-      -1,    -1,   225,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,    -1,    -1,    -1,   238,   239,   240,    -1,    -1,
-     243,    -1,    -1,    -1,    -1,   248,   249,    -1,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,    -1,    -1,    -1,
-     263,    -1,    -1,   266,   267,   268,    -1,    -1,   271,    -1,
+     173,   174,   175,   176,    -1,    -1,    -1,    -1,   181,   182,
+     183,   184,    -1,    -1,   187,   188,   189,   190,   191,   192,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,   200,    -1,   202,
+      -1,   204,    -1,   206,   207,   208,   209,   210,    -1,   212,
+      -1,   214,    -1,    -1,    -1,   218,   219,    -1,    -1,    -1,
+      -1,    -1,    -1,   226,    -1,    -1,    -1,   230,   231,   232,
+     233,   234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,
+     243,    -1,    -1,    -1,    -1,   248,    -1,    -1,    -1,    -1,
+     253,    -1,   255,   256,    -1,   258,   259,   260,    -1,    -1,
+     263,    -1,    -1,    -1,   267,   268,    -1,    -1,   271,   272,
       -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
       -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
-      -1,    -1,    -1,   296,   297,   298,   299,   300,   301,   302,
+      -1,   294,    -1,   296,   297,   298,   299,   300,   301,   302,
      303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
      313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
      323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
      333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
      343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
      353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,   367,   368,    -1,    -1,    -1,   372,
+     363,    -1,    -1,    -1,    -1,   368,    -1,    -1,    -1,   372,
       -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-     383,   384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     393,   394,   395,    -1,    -1,   398,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,   411,    -1,
-      -1,   414,   415,   416,    -1,   418,    -1,   420,   421,   422,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   394,   395,    -1,    -1,    -1,    -1,   400,    -1,   402,
+     403,   404,   405,   406,   407,   408,   409,   410,    -1,    -1,
+      -1,    -1,   415,   416,    -1,   418,    -1,   420,   421,   422,
      423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
       -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,   449,    -1,   451,   452,
-     453,    -1,    -1,   456,    -1,   458,    -1,   460,   461,    -1,
-     463,   464,    -1,   466,    -1,   468,    -1,    -1,   471,   472,
-     473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
-      -1,   484,   485,    -1,    -1,    -1,   489,   490,   491,   492,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,   500,    -1,   502,
-     503,   504,   505,   506,   507,    -1,   509,   510,   511,   512,
+     443,   444,   445,   446,    -1,   448,    -1,    -1,   451,    -1,
+     453,   454,    -1,   456,    -1,    -1,    -1,   460,    -1,    -1,
+     463,   464,    -1,   466,   467,   468,    -1,    -1,   471,    -1,
+     473,   474,   475,   476,   477,   478,   479,    -1,   481,   482,
+      -1,   484,    -1,    -1,    -1,    -1,   489,   490,   491,    -1,
+      -1,    -1,    -1,   496,    -1,    -1,    -1,    -1,    -1,    -1,
+     503,    -1,    -1,   506,   507,    -1,   509,    -1,   511,    -1,
      513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,   532,
-     533,    -1,    -1,    -1,   537,    -1,    -1,   540,   541,    -1,
+      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,    -1,
+     533,    -1,    -1,    -1,   537,    -1,    -1,    -1,   541,    -1,
      543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
      553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
      563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
       -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,   584,   585,   586,   587,    -1,   589,   590,    -1,   592,
-     593,    -1,   595,   596,    -1,    -1,   599,    -1,    -1,   602,
-      -1,   604,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   585,   586,   587,    -1,   589,   590,    -1,   592,
+     593,    -1,    -1,    -1,    -1,    -1,   599,    -1,    -1,   602,
+      -1,    -1,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
       -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,    -1,    -1,    -1,
-      -1,   634,   635,    -1,   637,   638,   639,    -1,     5,   642,
+     623,   624,   625,   626,   627,   628,    -1,   630,    -1,    -1,
+      -1,   634,    -1,    -1,   637,    -1,   639,    -1,     5,   642,
        7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
       -1,    -1,    19,    -1,    -1,    -1,    -1,    24,    25,    26,
       27,    28,    29,    30,    31,    -1,    -1,    34,    -1,    -1,
@@ -17487,7 +17635,7 @@ static const yytype_int16 yycheck[] =
      127,    -1,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
       -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,   154,   155,   156,
-      -1,   158,   159,   160,    -1,   162,   163,    -1,   165,   166,
+      -1,   158,    -1,   160,    -1,   162,   163,    -1,   165,   166,
      167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
       -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
      187,   188,   189,   190,   191,   192,    -1,    -1,    -1,    -1,
@@ -17534,7 +17682,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   599,    -1,    -1,   602,    -1,    -1,    -1,   606,
      607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
      617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
-     627,    -1,    -1,   630,    -1,    -1,    -1,   634,    -1,    -1,
+     627,   628,    -1,   630,    -1,    -1,    -1,   634,    -1,    -1,
      637,    -1,   639,    -1,     5,   642,     7,     8,     9,    10,
       11,    12,    -1,    -1,    15,    -1,    -1,    -1,    19,    -1,
       -1,    -1,    -1,    24,    25,    26,    27,    28,    29,    30,
@@ -17550,7 +17698,7 @@ static const yytype_int16 yycheck[] =
       -1,   122,    -1,    -1,    -1,    -1,   127,    -1,    -1,    -1,
       -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   154,   155,   156,    -1,   158,    -1,   160,
+      -1,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
       -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
       -1,   172,   173,   174,   175,   176,    -1,    -1,    -1,    -1,
      181,   182,   183,   184,    -1,    -1,   187,   188,   189,   190,
@@ -17597,7 +17745,7 @@ static const yytype_int16 yycheck[] =
       -1,   592,   593,    -1,    -1,    -1,    -1,    -1,   599,    -1,
       -1,   602,    -1,    -1,    -1,   606,   607,    -1,    -1,    -1,
       -1,    -1,    -1,   614,    -1,    -1,   617,    -1,    -1,    -1,
-     621,   622,   623,   624,   625,   626,   627,   628,    -1,   630,
+     621,   622,   623,   624,   625,   626,   627,    -1,    -1,   630,
       -1,    -1,    -1,   634,    -1,    -1,   637,    -1,   639,    -1,
        5,   642,     7,     8,     9,    10,    11,    12,    -1,    -1,
       15,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    24,
@@ -17614,7 +17762,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   127,    -1,    -1,    -1,    -1,    -1,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   154,
-     155,   156,    -1,   158,    -1,   160,    -1,   162,   163,    -1,
+     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
      165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
      175,   176,    -1,    -1,    -1,    -1,   181,   182,   183,   184,
       -1,    -1,   187,   188,   189,   190,   191,   192,    -1,    -1,
@@ -17661,7 +17809,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,    -1,    -1,   599,    -1,    -1,   602,    -1,    -1,
       -1,   606,   607,    -1,    -1,    -1,    -1,    -1,    -1,   614,
       -1,    -1,   617,    -1,    -1,    -1,   621,   622,   623,   624,
-     625,   626,   627,   628,    -1,   630,    -1,    -1,    -1,   634,
+     625,   626,   627,    -1,    -1,   630,    -1,    -1,    -1,   634,
       -1,    -1,   637,    -1,   639,    -1,     5,   642,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    -1,    -1,    24,    25,    26,    27,    28,
@@ -17869,7 +18017,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   133,    -1,   135,    -1,    -1,    -1,    -1,   140,
       -1,   142,   143,   144,   145,   146,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,   154,   155,   156,    -1,    -1,    -1,   160,
-      -1,   162,   163,    -1,   165,   166,   167,    -1,   169,   170,
+      -1,    -1,   163,    -1,   165,   166,   167,    -1,   169,   170,
       -1,   172,   173,   174,   175,   176,    -1,    -1,    -1,    -1,
      181,   182,   183,   184,    -1,    -1,   187,   188,   189,   190,
      191,   192,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   200,
@@ -17932,7 +18080,7 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   127,    -1,    -1,    -1,    -1,    -1,   133,    -1,
      135,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,   144,
      145,   146,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   154,
-     155,   156,    -1,    -1,    -1,   160,    -1,   162,   163,    -1,
+     155,   156,    -1,    -1,    -1,   160,    -1,    -1,   163,    -1,
      165,   166,   167,    -1,   169,   170,    -1,   172,   173,   174,
      175,   176,    -1,    -1,    -1,    -1,   181,   182,   183,   184,
       -1,    -1,   187,   188,   189,   190,   191,   192,    -1,    -1,
@@ -17983,11 +18131,11 @@ static const yytype_int16 yycheck[] =
       -1,    -1,   637,    -1,   639,    -1,     5,   642,     7,     8,
        9,    10,    11,    12,    -1,    -1,    15,    -1,    -1,    -1,
       19,    -1,    -1,    -1,    -1,    24,    25,    26,    27,    28,
-      29,    30,    31,    -1,    -1,    34,    -1,    -1,    -1,    38,
+      29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    38,
       -1,    -1,    -1,    42,    -1,    -1,    45,    46,    47,    -1,
-      49,    -1,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,
+      49,    -1,    -1,    -1,    -1,    -1,    55,    -1,    -1,    58,
       59,    -1,    61,    -1,    -1,    -1,    -1,    -1,    67,    68,
-      69,    70,    71,    72,    -1,    74,    75,    -1,    -1,    -1,
+      69,    -1,    71,    72,    -1,    74,    75,    -1,    -1,    -1,
       -1,    -1,    -1,    82,    -1,    84,    -1,    86,    87,    88,
       89,    -1,    91,    92,    -1,    94,    95,    96,    -1,    98,
       -1,   100,    -1,    -1,   103,    -1,    -1,   106,    -1,   108,
@@ -17999,17 +18147,17 @@ static const yytype_int16 yycheck[] =
       -1,   160,    -1,    -1,   163,    -1,   165,   166,   167,    -1,
      169,   170,    -1,   172,   173,   174,   175,   176,    -1,    -1,
       -1,    -1,   181,   182,   183,   184,    -1,    -1,   187,   188,
-     189,   190,   191,   192,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   190,   191,   192,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,   200,    -1,   202,    -1,   204,    -1,   206,   207,   208,
      209,   210,    -1,   212,    -1,   214,    -1,    -1,    -1,   218,
      219,    -1,    -1,    -1,    -1,    -1,    -1,   226,    -1,    -1,
-      -1,   230,   231,   232,   233,   234,   235,    -1,    -1,   238,
+      -1,   230,   231,   232,   233,   234,    -1,    -1,    -1,   238,
      239,   240,    -1,    -1,   243,    -1,    -1,    -1,    -1,   248,
       -1,    -1,    -1,    -1,   253,    -1,   255,   256,    -1,   258,
-     259,   260,    -1,    -1,   263,    -1,    -1,    -1,   267,   268,
-      -1,    -1,   271,   272,    -1,   274,   275,    -1,    -1,    -1,
+     259,    -1,    -1,    -1,   263,    -1,    -1,    -1,   267,   268,
+      -1,    -1,   271,    -1,    -1,   274,   275,    -1,    -1,    -1,
       -1,    -1,   281,   282,    -1,   284,    -1,   286,    -1,   288,
-     289,    -1,    -1,    -1,    -1,   294,    -1,   296,   297,   298,
+     289,    -1,    -1,    -1,    -1,    -1,    -1,   296,   297,   298,
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
      309,   310,   311,    -1,   313,   314,   315,   316,    -1,   318,
      319,   320,   321,    -1,   323,   324,   325,    -1,    -1,    -1,
@@ -18018,15 +18166,15 @@ static const yytype_int16 yycheck[] =
      349,   350,   351,   352,   353,   354,    -1,    -1,   357,    -1,
       -1,   360,   361,   362,   363,    -1,    -1,    -1,    -1,   368,
       -1,    -1,    -1,   372,    -1,   374,   375,   376,    -1,   378,
-     379,   380,   381,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     379,   380,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,   394,   395,    -1,    -1,    -1,
       -1,   400,    -1,   402,   403,   404,   405,   406,   407,   408,
      409,   410,    -1,    -1,    -1,    -1,   415,   416,    -1,   418,
       -1,   420,   421,   422,   423,   424,    -1,   426,   427,   428,
       -1,    -1,   431,    -1,    -1,    -1,   435,   436,   437,   438,
      439,    -1,    -1,   442,   443,   444,   445,   446,    -1,   448,
-      -1,    -1,   451,    -1,   453,   454,    -1,   456,    -1,    -1,
-      -1,   460,    -1,    -1,   463,   464,    -1,   466,   467,   468,
+      -1,    -1,   451,    -1,   453,    -1,    -1,   456,    -1,    -1,
+      -1,   460,    -1,    -1,   463,   464,    -1,   466,    -1,   468,
       -1,    -1,   471,    -1,   473,   474,   475,   476,   477,   478,
      479,    -1,   481,   482,    -1,   484,    -1,    -1,    -1,    -1,
      489,   490,   491,    -1,    -1,    -1,    -1,   496,    -1,    -1,
@@ -18043,135 +18191,8 @@ static const yytype_int16 yycheck[] =
      599,    -1,    -1,   602,    -1,    -1,    -1,   606,   607,    -1,
       -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,   617,    -1,
       -1,    -1,   621,   622,   623,   624,   625,   626,   627,    -1,
-      -1,   630,    -1,    -1,    -1,   634,    -1,    -1,   637,    -1,
-     639,    -1,     5,   642,     7,     8,     9,    10,    11,    12,
-      -1,    -1,    15,    -1,    -1,    -1,    19,    -1,    -1,    -1,
-      -1,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
-      -1,    34,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
-      -1,    -1,    45,    46,    47,    -1,    49,    -1,    -1,    -1,
-      -1,    -1,    55,    56,    -1,    58,    59,    -1,    61,    -1,
-      -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,    72,
-      -1,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,    82,
-      -1,    84,    -1,    86,    87,    88,    89,    -1,    91,    92,
-      -1,    94,    95,    96,    -1,    98,    -1,   100,    -1,    -1,
-     103,    -1,    -1,   106,    -1,   108,    -1,    -1,   111,    -1,
-     113,    -1,    -1,    -1,   117,   118,   119,    -1,    -1,   122,
-      -1,    -1,    -1,    -1,   127,    -1,    -1,    -1,    -1,    -1,
-     133,    -1,   135,    -1,    -1,    -1,    -1,   140,    -1,   142,
-     143,   144,   145,   146,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   154,   155,   156,    -1,    -1,    -1,   160,    -1,    -1,
-     163,    -1,   165,   166,   167,    -1,   169,   170,    -1,   172,
-     173,   174,   175,   176,    -1,    -1,    -1,    -1,   181,   182,
-     183,   184,    -1,    -1,   187,   188,   189,   190,   191,   192,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   200,    -1,   202,
-      -1,   204,    -1,   206,   207,   208,   209,   210,    -1,   212,
-      -1,   214,    -1,    -1,    -1,   218,   219,    -1,    -1,    -1,
-      -1,    -1,    -1,   226,    -1,    -1,    -1,   230,   231,   232,
-     233,   234,   235,    -1,    -1,   238,   239,   240,    -1,    -1,
-     243,    -1,    -1,    -1,    -1,   248,    -1,    -1,    -1,    -1,
-     253,    -1,   255,   256,    -1,   258,   259,   260,    -1,    -1,
-     263,    -1,    -1,    -1,   267,   268,    -1,    -1,   271,   272,
-      -1,   274,   275,    -1,    -1,    -1,    -1,    -1,   281,   282,
-      -1,   284,    -1,   286,    -1,   288,   289,    -1,    -1,    -1,
-      -1,   294,    -1,   296,   297,   298,   299,   300,   301,   302,
-     303,   304,   305,   306,   307,   308,   309,   310,   311,    -1,
-     313,   314,   315,   316,    -1,   318,   319,   320,   321,    -1,
-     323,   324,   325,    -1,    -1,    -1,    -1,   330,   331,   332,
-     333,   334,   335,    -1,    -1,   338,   339,    -1,   341,    -1,
-     343,    -1,   345,   346,   347,   348,   349,   350,   351,   352,
-     353,   354,    -1,    -1,   357,    -1,    -1,   360,   361,   362,
-     363,    -1,    -1,    -1,    -1,   368,    -1,    -1,    -1,   372,
-      -1,   374,   375,   376,    -1,   378,   379,   380,   381,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   394,   395,    -1,    -1,    -1,    -1,   400,    -1,   402,
-     403,   404,   405,   406,   407,   408,   409,   410,    -1,    -1,
-      -1,    -1,   415,   416,    -1,   418,    -1,   420,   421,   422,
-     423,   424,    -1,   426,   427,   428,    -1,    -1,   431,    -1,
-      -1,    -1,   435,   436,   437,   438,   439,    -1,    -1,   442,
-     443,   444,   445,   446,    -1,   448,    -1,    -1,   451,    -1,
-     453,   454,    -1,   456,    -1,    -1,    -1,   460,    -1,    -1,
-     463,   464,    -1,   466,   467,   468,    -1,    -1,   471,    -1,
-     473,   474,   475,   476,   477,   478,   479,    -1,   481,   482,
-      -1,   484,    -1,    -1,    -1,    -1,   489,   490,   491,    -1,
-      -1,    -1,    -1,   496,    -1,    -1,    -1,    -1,    -1,    -1,
-     503,    -1,    -1,   506,   507,    -1,   509,    -1,   511,    -1,
-     513,   514,    -1,    -1,    -1,    -1,    -1,    -1,   521,   522,
-      -1,   524,    -1,    -1,   527,    -1,    -1,    -1,   531,    -1,
-     533,    -1,    -1,    -1,   537,    -1,    -1,    -1,   541,    -1,
-     543,   544,   545,   546,   547,   548,    -1,    -1,   551,   552,
-     553,   554,    -1,   556,   557,    -1,    -1,   560,   561,   562,
-     563,    -1,    -1,   566,   567,    -1,   569,   570,   571,   572,
-      -1,    -1,    -1,    -1,    -1,   578,   579,   580,    -1,    -1,
-      -1,    -1,   585,   586,   587,    -1,   589,   590,    -1,   592,
-     593,    -1,    -1,    -1,    -1,    -1,   599,    -1,    -1,   602,
-      -1,    -1,    -1,   606,   607,    -1,    -1,    -1,    -1,    -1,
-      -1,   614,    -1,    -1,   617,    -1,    -1,    -1,   621,   622,
-     623,   624,   625,   626,   627,    -1,    -1,   630,    -1,    -1,
-      -1,   634,    -1,    -1,   637,    -1,   639,    -1,     5,   642,
-       7,     8,     9,    10,    11,    12,    -1,    -1,    15,    -1,
-      -1,    -1,    19,    -1,    -1,    -1,    -1,    24,    25,    26,
-      27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
-      -1,    38,    -1,    -1,    -1,    42,    -1,    -1,    45,    46,
-      47,    -1,    49,    -1,    -1,    -1,    -1,    -1,    55,    -1,
-      -1,    58,    59,    -1,    61,    -1,    -1,    -1,    -1,    -1,
-      67,    68,    69,    -1,    71,    72,    -1,    74,    75,    -1,
-      -1,    -1,    -1,    -1,    -1,    82,    -1,    84,    -1,    86,
-      87,    88,    89,    -1,    91,    92,    -1,    94,    95,    96,
-      -1,    98,    -1,   100,    -1,    -1,   103,    -1,    -1,   106,
-      -1,   108,    -1,    -1,   111,    -1,   113,    -1,    -1,    -1,
-     117,   118,   119,    -1,    -1,   122,    -1,    -1,    -1,    -1,
-     127,    -1,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,
-      -1,    -1,    -1,   140,    -1,   142,   143,   144,   145,   146,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   154,   155,   156,
-      -1,    -1,    -1,   160,    -1,    -1,   163,    -1,   165,   166,
-     167,    -1,   169,   170,    -1,   172,   173,   174,   175,   176,
-      -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
-     187,   188,    -1,   190,   191,   192,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   200,    -1,   202,    -1,   204,    -1,   206,
-     207,   208,   209,   210,    -1,   212,    -1,   214,    -1,    -1,
-      -1,   218,   219,    -1,    -1,    -1,    -1,    -1,    -1,   226,
-      -1,    -1,    -1,   230,   231,   232,   233,   234,    -1,    -1,
-      -1,   238,   239,   240,    -1,    -1,   243,    -1,    -1,    -1,
-      -1,   248,    -1,    -1,    -1,    -1,   253,    -1,   255,   256,
-      -1,   258,   259,    -1,    -1,    -1,   263,    -1,    -1,    -1,
-     267,   268,    -1,    -1,   271,    -1,    -1,   274,   275,    -1,
-      -1,    -1,    -1,    -1,   281,   282,    -1,   284,    -1,   286,
-      -1,   288,   289,    -1,    -1,    -1,    -1,    -1,    -1,   296,
-     297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
-     307,   308,   309,   310,   311,    -1,   313,   314,   315,   316,
-      -1,   318,   319,   320,   321,    -1,   323,   324,   325,    -1,
-      -1,    -1,    -1,   330,   331,   332,   333,   334,   335,    -1,
-      -1,   338,   339,    -1,   341,    -1,   343,    -1,   345,   346,
-     347,   348,   349,   350,   351,   352,   353,   354,    -1,    -1,
-     357,    -1,    -1,   360,   361,   362,   363,    -1,    -1,    -1,
-      -1,   368,    -1,    -1,    -1,   372,    -1,   374,   375,   376,
-      -1,   378,   379,   380,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   394,   395,    -1,
-      -1,    -1,    -1,   400,    -1,   402,   403,   404,   405,   406,
-     407,   408,   409,   410,    -1,    -1,    -1,    -1,   415,   416,
-      -1,   418,    -1,   420,   421,   422,   423,   424,    -1,   426,
-     427,   428,    -1,    -1,   431,    -1,    -1,    -1,   435,   436,
-     437,   438,   439,    -1,    -1,   442,   443,   444,   445,   446,
-      -1,   448,    -1,    -1,   451,    -1,   453,    -1,    -1,   456,
-      -1,    -1,    -1,   460,    -1,    -1,   463,   464,    -1,   466,
-      -1,   468,    -1,    -1,   471,    -1,   473,   474,   475,   476,
-     477,   478,   479,    -1,   481,   482,    -1,   484,    -1,    -1,
-      -1,    -1,   489,   490,   491,    -1,    -1,    -1,    -1,   496,
-      -1,    -1,    -1,    -1,    -1,    -1,   503,    -1,    -1,   506,
-     507,    -1,   509,    -1,   511,    -1,   513,   514,    -1,    -1,
-      -1,    -1,    -1,    -1,   521,   522,    -1,   524,    -1,    -1,
-     527,    -1,    -1,    -1,   531,    -1,   533,    -1,    -1,    -1,
-     537,    -1,    -1,    -1,   541,    -1,   543,   544,   545,   546,
-     547,   548,    -1,    -1,   551,   552,   553,   554,    -1,   556,
-     557,    -1,    -1,   560,   561,   562,   563,    -1,    -1,   566,
-     567,    -1,   569,   570,   571,   572,    -1,    -1,    -1,    -1,
-      -1,   578,   579,   580,    -1,    -1,    -1,    -1,   585,   586,
-     587,    -1,   589,   590,    -1,   592,   593,    -1,    -1,    -1,
-      -1,    -1,   599,    -1,    -1,   602,    -1,    -1,    -1,   606,
-     607,    -1,    -1,    -1,    -1,    -1,    -1,   614,    -1,    -1,
-     617,    -1,    -1,    -1,   621,   622,   623,   624,   625,   626,
-     627,    -1,    -1,    -1,    -1,    -1,    -1,   634,    -1,    -1,
-     637,    -1,   639,    -1,    -1,   642
+      -1,    -1,    -1,    -1,    -1,   634,    -1,    -1,   637,    -1,
+     639,    -1,    -1,   642
 };
 
   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -18184,16 +18205,16 @@ static const yytype_uint16 yystos[] =
      283,   287,   294,   382,   399,   401,   414,   425,   447,   450,
      452,   454,   455,   458,   459,   469,   472,   480,   486,   494,
      499,   500,   501,   532,   540,   584,   596,   600,   603,   608,
-     630,   638,   644,   657,   668,   671,   672,   673,   674,   675,
-     677,   682,   684,   697,   728,   756,   763,   764,   778,   779,
-     798,   817,   832,   892,   946,   984,  1065,  1110,  1113,  1123,
-    1128,  1134,  1147,  1150,  1156,  1159,  1164,  1171,  1183,  1184,
-    1360,  1362,  1374,  1377,  1402,  1410,  1423,  1430,  1444,  1448,
-    1449,  1453,  1467,  1475,  1479,  1484,  1485,  1486,  1540,  1571,
-    1577,  1579,  1586,  1589,  1623,  1625,  1631,  1632,  1633,  1634,
-    1687,  1695,  1696,  1697,    12,   115,   133,   204,   288,   419,
-     492,   557,  1066,  1656,  1657,  1658,  1659,   199,   284,   369,
-    1158,  1451,   364,   365,  1217,  1624,   565,   664,  1529,   241,
+     630,   638,   644,   659,   670,   673,   674,   675,   676,   677,
+     679,   684,   686,   699,   730,   758,   765,   766,   780,   781,
+     800,   819,   834,   894,   948,   986,  1067,  1112,  1115,  1125,
+    1130,  1136,  1149,  1152,  1158,  1161,  1166,  1173,  1185,  1186,
+    1362,  1364,  1376,  1379,  1404,  1412,  1425,  1432,  1446,  1450,
+    1451,  1455,  1469,  1477,  1481,  1486,  1487,  1488,  1542,  1573,
+    1579,  1581,  1588,  1591,  1625,  1627,  1633,  1634,  1635,  1636,
+    1689,  1697,  1698,  1699,    12,   115,   133,   204,   288,   419,
+     492,   557,  1068,  1658,  1659,  1660,  1661,   199,   284,   369,
+    1160,  1453,   364,   365,  1219,  1626,   565,   666,  1531,   241,
        5,     7,     8,     9,    10,    11,    12,    15,    19,    22,
       24,    25,    26,    27,    28,    29,    30,    31,    32,    34,
       38,    42,    45,    46,    47,    49,    51,    52,    55,    58,
@@ -18231,25 +18252,25 @@ static const yytype_uint16 yystos[] =
      580,   584,   585,   586,   587,   589,   590,   592,   593,   595,
      596,   599,   602,   604,   606,   607,   614,   617,   621,   622,
      623,   624,   625,   626,   627,   634,   635,   637,   638,   639,
-     642,   722,  1528,  1532,  1538,  1539,   799,   313,   556,   559,
-    1573,  1151,   634,  1627,   288,   389,   557,  1411,  1361,   115,
+     642,   724,  1530,  1534,  1540,  1541,   801,   313,   556,   559,
+    1575,  1153,   634,  1629,   288,   389,   557,  1413,  1363,   115,
      174,   204,   241,   288,   419,   471,   492,   557,   562,   581,
-     606,   622,  1373,  1532,  1158,   108,   765,   721,   665,  1525,
-    1527,  1532,   683,   780,  1375,   408,   512,  1480,   118,   241,
-     639,  1491,  1573,   833,  1158,   657,   893,  1532,  1476,   480,
-     606,  1573,  1158,   835,  1378,  1468,   518,   753,   757,   758,
-    1532,   721,  1627,  1532,  1189,  1191,  1192,  1193,   533,  1541,
-    1431,   757,    13,   504,   578,    13,   504,   559,  1425,   408,
-     512,  1578,  1403,  1532,   834,    34,    85,   162,   414,   436,
-     472,   532,  1689,   657,  1185,  1186,     0,   164,   669,   414,
-     115,   203,   471,   515,   598,   606,   703,   704,  1043,  1044,
-    1045,  1373,   183,   199,   402,  1450,  1451,  1525,  1532,   645,
-    1078,  1532,   645,   722,   215,   722,   276,  1529,  1532,  1534,
-     838,   839,   842,   865,  1532,  1102,  1103,  1072,  1205,  1656,
-     645,  1573,  1183,  1374,  1377,  1402,  1410,  1447,    25,  1627,
-    1534,  1165,   729,   665,   628,   800,   801,   804,   808,   695,
-     696,  1529,  1124,   622,  1148,  1573,    18,  1628,   215,   455,
-     840,   865,   237,   295,   428,  1421,  1422,     8,    22,    31,
+     606,   622,  1375,  1534,  1160,   108,   767,   723,   667,  1527,
+    1529,  1534,   685,   782,  1377,   408,   512,  1482,   118,   241,
+     639,  1493,  1575,   835,  1160,   659,   895,  1534,  1478,   480,
+     606,  1575,  1160,   837,  1380,  1470,   518,   755,   759,   760,
+    1534,   723,  1629,  1534,  1191,  1193,  1194,  1195,   533,  1543,
+    1433,   759,    13,   504,   578,    13,   504,   559,  1427,   408,
+     512,  1580,  1405,  1534,   836,    34,    85,   162,   414,   436,
+     472,   532,  1691,   659,  1187,  1188,     0,   164,   671,   414,
+     115,   203,   471,   515,   598,   606,   705,   706,  1045,  1046,
+    1047,  1375,   183,   199,   402,  1452,  1453,  1527,  1534,   647,
+    1080,  1534,   647,   724,   215,   724,   276,  1531,  1534,  1536,
+     840,   841,   844,   867,  1534,  1104,  1105,  1074,  1207,  1658,
+     647,  1575,  1185,  1376,  1379,  1404,  1412,  1449,    25,  1629,
+    1536,  1167,   731,   667,   628,   802,   803,   806,   810,   697,
+     698,  1531,  1126,   622,  1150,  1575,    18,  1630,   215,   455,
+     842,   867,   237,   295,   428,  1423,  1424,     8,    22,    31,
       37,    39,    40,    41,    43,    56,    57,    62,    63,    71,
       74,    76,    77,    78,    79,    80,    97,   101,   102,   107,
      109,   110,   114,   115,   120,   121,   122,   127,   129,   132,
@@ -18260,707 +18281,707 @@ static const yytype_uint16 yystos[] =
      426,   454,   455,   468,   470,   477,   478,   484,   538,   539,
      545,   549,   550,   555,   565,   569,   570,   571,   572,   582,
      583,   584,   588,   591,   606,   610,   611,   612,   613,   618,
-     620,   626,   627,   642,   650,   651,   656,   657,   660,   661,
-     664,   665,  1211,  1212,  1213,  1214,  1218,  1226,  1227,  1228,
-    1229,  1230,  1231,  1239,  1243,  1257,  1510,  1513,  1515,  1516,
-    1517,  1521,  1523,  1528,  1532,   235,  1372,  1372,  1372,   235,
-    1371,   215,  1372,  1372,  1372,   865,  1372,  1372,  1372,  1573,
-     678,  1454,   142,    13,    14,   104,   110,   136,   152,   174,
+     620,   626,   627,   642,   652,   653,   658,   659,   662,   663,
+     666,   667,  1213,  1214,  1215,  1216,  1220,  1228,  1229,  1230,
+    1231,  1232,  1233,  1241,  1245,  1259,  1512,  1515,  1517,  1518,
+    1519,  1523,  1525,  1530,  1534,   235,  1374,  1374,  1374,   235,
+    1373,   215,  1374,  1374,  1374,   867,  1374,  1374,  1374,  1575,
+     680,  1456,   142,    13,    14,   104,   110,   136,   152,   174,
      178,   190,   213,   241,   247,   287,   420,   424,   440,   448,
-     456,   486,   499,   500,   551,   581,   603,   605,  1534,  1590,
-    1594,  1595,  1597,  1599,  1600,  1532,   381,    70,   432,   665,
-    1534,   793,   794,   134,   224,   295,  1380,  1532,  1529,   218,
-     511,  1481,   251,  1487,  1572,    34,    70,   189,   260,   272,
-     381,   467,   742,   777,   778,   781,   782,   783,   785,   786,
-     787,   788,   790,   813,   815,   821,   828,  1528,  1533,  1539,
-    1573,   985,  1205,    50,   894,   201,    37,   313,  1436,  1477,
-    1532,   721,  1160,  1129,   742,   824,   134,   295,  1381,  1409,
-     313,   427,   504,  1469,  1470,   614,   754,   494,   759,     7,
-      13,   424,  1587,  1588,  1595,  1597,   576,  1628,  1190,   251,
-     387,  1324,  1325,  1354,  1355,    13,   147,   224,   520,   521,
-     522,   523,   524,   525,   542,  1198,  1199,  1200,  1652,  1542,
+     456,   486,   499,   500,   551,   581,   603,   605,  1536,  1592,
+    1596,  1597,  1599,  1601,  1602,  1534,   381,    70,   432,   667,
+    1536,   795,   796,   134,   224,   295,  1382,  1534,  1531,   218,
+     511,  1483,   251,  1489,  1574,    34,    70,   189,   260,   272,
+     381,   467,   744,   779,   780,   783,   784,   785,   787,   788,
+     789,   790,   792,   815,   817,   823,   830,  1530,  1535,  1541,
+    1575,   987,  1207,    50,   896,   201,    37,   313,  1438,  1479,
+    1534,   723,  1162,  1131,   744,   826,   134,   295,  1383,  1411,
+     313,   427,   504,  1471,  1472,   614,   756,   494,   761,     7,
+      13,   424,  1589,  1590,  1597,  1599,   576,  1630,  1192,   251,
+     387,  1326,  1327,  1356,  1357,    13,   147,   224,   520,   521,
+     522,   523,   524,   525,   542,  1200,  1201,  1202,  1654,  1544,
       62,    63,   132,   212,   284,   352,   404,   471,   491,   578,
-     664,  1008,  1532,  1545,  1557,  1561,  1562,    13,    26,    38,
+     666,  1010,  1534,  1547,  1559,  1563,  1564,    13,    26,    38,
       62,    74,   100,   102,   104,   116,   166,   170,   173,   202,
      204,   212,   214,   240,   241,   262,   284,   313,   381,   407,
      418,   419,   422,   423,   443,   491,   504,   541,   559,   625,
-    1008,  1042,  1432,  1436,  1437,  1439,  1448,  1528,  1558,   759,
-     505,   695,   432,   631,  1114,  1115,  1116,   505,   695,  1424,
-    1532,  1529,  1573,  1409,   822,  1211,    39,   222,   223,   565,
-    1511,  1512,  1530,  1688,  1688,  1688,  1688,  1688,  1185,   658,
-     486,   663,  1532,   235,   945,   945,   945,  1653,  1657,  1658,
-    1659,   492,   705,   241,   241,   241,   559,  1446,  1445,   332,
-     563,   590,  1068,   604,   109,  1534,  1535,  1536,  1594,  1070,
-     844,   866,  1532,  1069,  1074,     6,    60,   152,   365,   431,
-     433,   867,   559,   237,   380,  1104,  1105,  1106,   526,  1660,
-    1661,   174,  1071,  1534,  1135,   818,   659,  1166,  1167,  1168,
-    1169,  1525,   657,   730,  1532,   809,   158,   811,  1211,   808,
-     576,  1366,  1367,  1525,  1149,  1366,    59,   367,   367,   447,
-    1629,   843,   866,     6,   201,  1412,  1418,  1419,  1532,  1421,
-     657,   657,   657,  1226,   657,   657,   657,  1211,  1260,   657,
-     657,   657,   657,   657,   657,   657,   657,   657,   657,   657,
-     657,   657,   657,  1210,  1210,  1210,   657,  1209,   657,   657,
-     657,   565,   657,   657,   657,   657,   657,   657,   657,   657,
-     657,   657,   657,   657,   657,  1211,   657,   657,   657,   657,
-    1258,  1259,  1521,  1532,   657,   657,   657,   657,   657,   657,
-     657,   657,   657,  1211,  1209,   657,   657,   657,   657,   657,
-     657,   657,   657,   657,   657,   657,   657,   657,   657,   657,
-     657,   657,   657,  1209,   565,   657,   657,   657,   565,   657,
-     657,   657,   565,  1512,   657,  1210,  1209,  1209,   657,   657,
-     657,   657,   657,   657,  1226,  1226,  1226,  1211,  1647,  1648,
-    1532,  1244,  1532,    17,    18,   386,   389,   640,  1215,  1216,
-     168,   205,   257,   269,   358,   645,   646,   647,  1219,    35,
-     148,   254,   277,   344,   441,   497,   498,   513,   648,   649,
-     650,   651,   652,   653,   654,   655,  1217,  1226,    73,   388,
-     659,  1530,   657,   665,   179,  1532,   722,  1532,   179,  1532,
-     866,   722,   721,  1534,   876,  1437,   722,   721,  1365,  1372,
-     609,   679,    37,   140,   166,   169,   206,   226,   289,   313,
-     418,   427,   442,   460,   504,   507,   537,  1455,  1460,  1461,
-    1528,  1573,    90,   664,   766,   767,   768,   769,  1532,   418,
-    1598,   474,   474,   557,   562,   606,   622,  1210,   384,  1602,
-     556,   377,  1604,    69,   504,  1601,   116,   622,  1603,   576,
-     377,   659,    20,   645,  1310,  1311,  1580,  1532,   162,  1211,
-     237,  1101,   512,    91,   427,  1482,    52,    89,   295,  1493,
-    1525,  1574,  1575,   816,  1532,   201,   361,   791,  1533,  1533,
-    1532,   784,   162,   777,   663,   672,   827,   666,  1157,   658,
-    1211,   279,   282,   429,   895,   897,   664,   676,  1529,   289,
-    1161,  1535,  1537,  1162,  1163,  1525,   622,  1126,  1573,   602,
-     827,   251,  1368,  1382,  1383,  1525,  1472,    52,  1471,   659,
-    1530,    58,    68,    82,    94,    95,    96,   113,   333,   351,
-     482,   544,   561,   760,   762,   384,  1598,   377,   201,   377,
-     480,  1630,  1629,   597,  1635,  1636,  1356,    50,   278,  1329,
-    1330,  1331,   201,  1195,   198,   287,  1201,   652,  1202,  1203,
-    1205,  1200,   132,  1544,  1560,  1562,   494,   471,   665,    37,
-     132,   495,   645,  1009,  1010,  1393,  1534,   198,  1393,  1568,
-    1534,  1547,   664,  1534,    37,   132,  1012,  1013,  1534,   665,
-    1548,  1546,  1393,   505,   173,   277,   629,  1443,   657,   115,
-     174,   204,   419,   559,   581,   622,  1443,    13,   955,  1534,
-    1329,   201,   254,  1438,  1440,    72,   537,   198,   537,   556,
+    1010,  1044,  1434,  1438,  1439,  1441,  1450,  1530,  1560,   761,
+     505,   697,   432,   631,  1116,  1117,  1118,   505,   697,  1426,
+    1534,  1531,  1575,  1411,   824,  1213,    39,   222,   223,   565,
+    1513,  1514,  1532,  1690,  1690,  1690,  1690,  1690,  1187,   660,
+     486,   665,  1534,   235,   947,   947,   947,  1655,  1659,  1660,
+    1661,   492,   707,   241,   241,   241,   559,  1448,  1447,   332,
+     563,   590,  1070,   604,   109,  1536,  1537,  1538,  1596,  1072,
+     846,   868,  1534,  1071,  1076,     6,    60,   152,   365,   431,
+     433,   869,   559,   237,   380,  1106,  1107,  1108,   526,  1662,
+    1663,   174,  1073,  1536,  1137,   820,   661,  1168,  1169,  1170,
+    1171,  1527,   659,   732,  1534,   811,   158,   813,  1213,   810,
+     576,  1368,  1369,  1527,  1151,  1368,    59,   367,   367,   447,
+    1631,   845,   868,     6,   201,  1414,  1420,  1421,  1534,  1423,
+     659,   659,   659,  1228,   659,   659,   659,  1213,  1262,   659,
+     659,   659,   659,   659,   659,   659,   659,   659,   659,   659,
+     659,   659,   659,  1212,  1212,  1212,   659,  1211,   659,   659,
+     659,   565,   659,   659,   659,   659,   659,   659,   659,   659,
+     659,   659,   659,   659,   659,  1213,   659,   659,   659,   659,
+    1260,  1261,  1523,  1534,   659,   659,   659,   659,   659,   659,
+     659,   659,   659,  1213,  1211,   659,   659,   659,   659,   659,
+     659,   659,   659,   659,   659,   659,   659,   659,   659,   659,
+     659,   659,   659,  1211,   565,   659,   659,   659,   565,   659,
+     659,   659,   565,  1514,   659,  1212,  1211,  1211,   659,   659,
+     659,   659,   659,   659,  1228,  1228,  1228,  1213,  1649,  1650,
+    1534,  1246,  1534,    17,    18,   386,   389,   640,  1217,  1218,
+     168,   205,   257,   269,   358,   647,   648,   649,  1221,    35,
+     148,   254,   277,   344,   441,   497,   498,   513,   650,   651,
+     652,   653,   654,   655,   656,   657,  1219,  1228,    73,   388,
+     661,  1532,   659,   667,   179,  1534,   724,  1534,   179,  1534,
+     868,   724,   723,  1536,   878,  1439,   724,   723,  1367,  1374,
+     609,   681,    37,   140,   166,   169,   206,   226,   289,   313,
+     418,   427,   442,   460,   504,   507,   537,  1457,  1462,  1463,
+    1530,  1575,    90,   666,   768,   769,   770,   771,  1534,   418,
+    1600,   474,   474,   557,   562,   606,   622,  1212,   384,  1604,
+     556,   377,  1606,    69,   504,  1603,   116,   622,  1605,   576,
+     377,   661,    20,   647,  1312,  1313,  1582,  1534,   162,  1213,
+     237,  1103,   512,    91,   427,  1484,    52,    89,   295,  1495,
+    1527,  1576,  1577,   818,  1534,   201,   361,   793,  1535,  1535,
+    1534,   786,   162,   779,   665,   674,   829,   668,  1159,   660,
+    1213,   279,   282,   429,   897,   899,   666,   678,  1531,   289,
+    1163,  1537,  1539,  1164,  1165,  1527,   622,  1128,  1575,   602,
+     829,   251,  1370,  1384,  1385,  1527,  1474,    52,  1473,   661,
+    1532,    58,    68,    82,    94,    95,    96,   113,   333,   351,
+     482,   544,   561,   762,   764,   384,  1600,   377,   201,   377,
+     480,  1632,  1631,   597,  1637,  1638,  1358,    50,   278,  1331,
+    1332,  1333,   201,  1197,   198,   287,  1203,   654,  1204,  1205,
+    1207,  1202,   132,  1546,  1562,  1564,   494,   471,   667,    37,
+     132,   495,   647,  1011,  1012,  1395,  1536,   198,  1395,  1570,
+    1536,  1549,   666,  1536,    37,   132,  1014,  1015,  1536,   667,
+    1550,  1548,  1395,   505,   173,   277,   629,  1445,   659,   115,
+     174,   204,   419,   559,   581,   622,  1445,    13,   957,  1536,
+    1331,   201,   254,  1440,  1442,    72,   537,   198,   537,   556,
      512,    72,   537,    13,    45,    98,   103,   256,   331,   395,
-     514,   553,  1426,  1427,  1428,   695,   226,   537,   696,   537,
-    1329,  1443,  1440,   289,   165,    75,   421,   556,   580,   198,
-    1204,   537,   617,  1117,  1118,  1117,   379,   636,    92,   659,
-    1117,  1117,  1367,  1101,   827,   151,   659,   378,  1691,   552,
-    1692,   261,   463,  1690,   658,  1636,  1638,  1639,  1640,  1641,
-    1191,   164,   670,  1217,  1532,   721,   721,    11,   204,   419,
-     581,   709,  1205,  1655,  1661,  1669,  1674,  1675,  1676,  1682,
-     204,   709,  1654,  1661,  1669,  1676,  1682,  1656,   945,   945,
-     945,   945,   945,  1447,  1452,  1511,  1532,   132,   942,   943,
-     952,   953,  1017,   118,  1210,   664,   723,     6,   845,   723,
-     383,   117,   862,   862,   862,     4,  1525,  1106,   485,   622,
-     722,  1661,  1136,  1137,  1367,   819,   820,   664,   254,   659,
-     401,  1177,  1179,  1180,   731,   732,  1211,  1211,   742,   162,
-     802,   685,   183,   428,   659,  1125,  1366,    61,   183,   187,
-     198,   330,   428,  1152,  1153,  1154,    59,   447,   845,   862,
-    1369,  1370,  1525,  1526,  1532,   659,  1415,   665,  1420,  1211,
-    1211,    13,   147,  1251,  1312,  1251,  1251,  1251,   628,  1262,
-    1211,  1211,  1257,  1257,  1211,  1211,  1211,  1211,  1224,  1225,
-    1211,  1211,  1211,  1211,   147,  1251,  1312,   658,   129,   193,
-     222,   292,   371,   588,   658,  1338,  1341,  1342,   658,  1211,
-    1211,  1211,  1211,  1521,  1647,   123,   124,   125,   126,   127,
+     514,   553,  1428,  1429,  1430,   697,   226,   537,   698,   537,
+    1331,  1445,  1442,   289,   165,    75,   421,   556,   580,   198,
+    1206,   537,   617,  1119,  1120,  1119,   379,   636,    92,   661,
+    1119,  1119,  1369,  1103,   829,   151,   661,   378,  1693,   552,
+    1694,   261,   463,  1692,   660,  1638,  1640,  1641,  1642,  1643,
+    1193,   164,   672,  1219,  1534,   723,   723,    11,   204,   419,
+     581,   711,  1207,  1657,  1663,  1671,  1676,  1677,  1678,  1684,
+     204,   711,  1656,  1663,  1671,  1678,  1684,  1658,   947,   947,
+     947,   947,   947,  1449,  1454,  1513,  1534,   132,   944,   945,
+     954,   955,  1019,   118,  1212,   666,   725,     6,   847,   725,
+     383,   117,   864,   864,   864,     4,  1527,  1108,   485,   622,
+     724,  1663,  1138,  1139,  1369,   821,   822,   666,   254,   661,
+     401,  1179,  1181,  1182,   733,   734,  1213,  1213,   744,   162,
+     804,   687,   183,   428,   661,  1127,  1368,    61,   183,   187,
+     198,   330,   428,  1154,  1155,  1156,    59,   447,   847,   864,
+    1371,  1372,  1527,  1528,  1534,   661,  1417,   667,  1422,  1213,
+    1213,    13,   147,  1253,  1314,  1253,  1253,  1253,   628,  1264,
+    1213,  1213,  1259,  1259,  1213,  1213,  1213,  1213,  1226,  1227,
+    1213,  1213,  1213,  1213,   147,  1253,  1314,   660,   129,   193,
+     222,   292,   371,   588,   660,  1340,  1343,  1344,   660,  1213,
+    1213,  1213,  1213,  1523,  1649,   123,   124,   125,   126,   127,
      227,   228,   229,   230,   334,   336,   337,   338,   345,   426,
-     483,   484,   626,   641,   642,  1307,  1308,  1211,  1257,   119,
-     122,   569,   572,  1309,   147,  1246,  1211,  1211,  1211,  1211,
-    1307,  1257,  1211,  1257,  1259,    10,   659,   665,   147,  1251,
-    1211,  1211,   147,  1251,  1211,  1211,  1257,  1257,  1257,  1211,
-    1211,  1211,  1257,  1214,  1211,  1211,  1211,  1211,  1211,  1211,
-     658,  1211,  1251,  1251,  1211,  1211,   147,  1251,  1211,  1308,
-    1308,  1211,    48,   270,   577,  1211,  1211,   658,  1522,  1523,
-    1532,  1251,  1251,  1211,  1211,  1211,   658,   659,   658,   486,
-     657,  1644,  1645,  1211,   664,  1245,  1534,   665,  1211,  1211,
-    1211,  1213,   186,   370,   583,   599,  1217,    13,    19,  1213,
-    1220,  1214,  1214,   657,  1226,  1214,  1214,  1214,  1214,   277,
-    1214,  1214,   250,  1214,   250,  1214,  1214,  1214,  1214,  1214,
-      35,   254,   277,   441,  1534,  1226,  1211,  1232,  1532,   665,
-     377,   876,  1593,  1595,   368,   624,   877,   878,   166,  1537,
-    1609,  1366,  1363,   664,   680,   681,   289,   289,   289,   289,
-      52,   289,   695,   289,   659,  1204,  1456,   122,   569,   572,
-     761,   771,  1243,  1515,  1521,  1534,   659,   645,   556,   657,
-    1615,  1537,  1615,  1615,  1615,  1535,  1536,  1537,  1610,  1614,
-     204,   419,   559,  1596,   174,   178,   190,   420,   448,   456,
-     500,   551,  1600,  1532,   191,   361,  1532,  1581,  1582,   235,
-     568,  1382,  1529,   231,   606,  1211,  1483,  1172,   284,  1492,
-    1311,   659,   819,   201,  1532,  1211,   294,   663,    34,   294,
-     454,   630,  1366,  1206,    75,   657,   902,   903,   902,   903,
-     402,   905,   219,   264,  1534,    33,   576,  1478,   659,   576,
-     659,   576,  1127,  1366,   825,  1383,  1379,   401,  1276,  1277,
-     576,  1474,   695,  1470,   659,   645,   198,   659,  1537,  1536,
-    1611,   204,   419,  1596,  1532,    13,   147,  1643,   154,   391,
-    1349,  1350,  1357,  1326,  1201,   292,   371,   475,   588,  1332,
-    1333,  1513,  1532,   153,   486,   657,   661,  1197,  1263,  1264,
-    1265,  1266,  1267,  1278,  1279,  1291,   629,  1313,   603,   254,
-     659,  1211,  1519,  1532,   659,  1543,  1393,  1595,  1532,    73,
-    1015,  1211,  1537,   376,   404,   565,  1569,   258,   432,  1563,
-    1564,  1565,  1566,   212,   284,   491,  1559,  1393,  1532,   578,
-    1549,  1560,   659,  1551,    13,    37,   132,   377,  1211,  1570,
-     537,   254,  1441,  1204,  1204,   652,   945,   722,   722,   722,
-    1525,   722,  1525,   289,   349,   537,  1435,  1435,  1443,  1532,
-     722,  1443,  1536,  1438,  1443,  1529,   722,  1443,   255,   554,
-     188,   198,  1429,   659,   173,   537,  1438,  1525,  1440,  1438,
-    1438,  1211,  1443,  1443,  1443,  1112,   446,   527,  1119,  1120,
-    1111,   509,  1116,  1264,   823,  1511,   406,  1693,  1325,  1331,
-    1642,   179,   702,  1593,  1610,   204,  1675,   945,   945,  1205,
-     174,   945,  1661,  1534,  1532,  1532,  1532,  1525,   943,    73,
-    1008,   143,  1534,    83,    97,   266,   342,   367,   430,   526,
-     725,   727,   437,   592,   863,   864,   243,   859,   860,   861,
-     868,   876,   878,   657,  1529,    27,   321,   853,   854,   855,
-     868,   869,   870,   876,   878,   846,   847,   853,  1067,   133,
-     253,   945,  1073,   659,   405,  1138,   743,  1534,   132,  1170,
-    1532,  1168,  1525,   891,  1179,   241,   264,  1040,  1181,   658,
-     659,   810,    56,   628,   803,   805,   150,   236,   238,   296,
+     483,   484,   626,   641,   642,  1309,  1310,  1213,  1259,   119,
+     122,   569,   572,  1311,   147,  1248,  1213,  1213,  1213,  1213,
+    1309,  1259,  1213,  1259,  1261,    10,   661,   667,   147,  1253,
+    1213,  1213,   147,  1253,  1213,  1213,  1259,  1259,  1259,  1213,
+    1213,  1213,  1259,  1216,  1213,  1213,  1213,  1213,  1213,  1213,
+     660,  1213,  1253,  1253,  1213,  1213,   147,  1253,  1213,  1310,
+    1310,  1213,    48,   270,   577,  1213,  1213,   660,  1524,  1525,
+    1534,  1253,  1253,  1213,  1213,  1213,   660,   661,   660,   486,
+     659,  1646,  1647,  1213,   666,  1247,  1536,   667,  1213,  1213,
+    1213,  1215,   186,   370,   583,   599,  1219,    13,    19,  1215,
+    1222,  1216,  1216,   659,  1228,  1216,  1216,  1216,  1216,   277,
+    1216,  1216,   250,  1216,   250,  1216,  1216,  1216,  1216,  1216,
+      35,   254,   277,   441,  1536,  1228,  1213,  1234,  1534,   667,
+     377,   878,  1595,  1597,   368,   624,   879,   880,   166,  1539,
+    1611,  1368,  1365,   666,   682,   683,   289,   289,   289,   289,
+      52,   289,   697,   289,   661,  1206,  1458,   122,   569,   572,
+     763,   773,  1245,  1517,  1523,  1536,   661,   647,   556,   659,
+    1617,  1539,  1617,  1617,  1617,  1537,  1538,  1539,  1612,  1616,
+     204,   419,   559,  1598,   174,   178,   190,   420,   448,   456,
+     500,   551,  1602,  1534,   191,   361,  1534,  1583,  1584,   235,
+     568,  1384,  1531,   231,   606,  1213,  1485,  1174,   284,  1494,
+    1313,   661,   821,   201,  1534,  1213,   294,   665,    34,   294,
+     454,   630,  1368,  1208,    75,   659,   904,   905,   904,   905,
+     402,   907,   219,   264,  1536,    33,   576,  1480,   661,   576,
+     661,   576,  1129,  1368,   827,  1385,  1381,   401,  1278,  1279,
+     576,  1476,   697,  1472,   661,   647,   198,   661,  1539,  1538,
+    1613,   204,   419,  1598,  1534,    13,   147,  1645,   154,   391,
+    1351,  1352,  1359,  1328,  1203,   292,   371,   475,   588,  1334,
+    1335,  1515,  1534,   153,   486,   659,   663,  1199,  1265,  1266,
+    1267,  1268,  1269,  1280,  1281,  1293,   629,  1315,   603,   254,
+     661,  1213,  1521,  1534,   661,  1545,  1395,  1597,  1534,    73,
+    1017,  1213,  1539,   376,   404,   565,  1571,   258,   432,  1565,
+    1566,  1567,  1568,   212,   284,   491,  1561,  1395,  1534,   578,
+    1551,  1562,   661,  1553,    13,    37,   132,   377,  1213,  1572,
+     537,   254,  1443,  1206,  1206,   654,   947,   724,   724,   724,
+    1527,   724,  1527,   289,   349,   537,  1437,  1437,  1445,  1534,
+     724,  1445,  1538,  1440,  1445,  1531,   724,  1445,   255,   554,
+     188,   198,  1431,   661,   173,   537,  1440,  1527,  1442,  1440,
+    1440,  1213,  1445,  1445,  1445,  1114,   446,   527,  1121,  1122,
+    1113,   509,  1118,  1266,   825,  1513,   406,  1695,  1327,  1333,
+    1644,   179,   704,  1595,  1612,   204,  1677,   947,   947,  1207,
+     174,   947,  1663,  1536,  1534,  1534,  1534,  1527,   945,    73,
+    1010,   143,  1536,    83,    97,   266,   342,   367,   430,   526,
+     727,   729,   437,   592,   865,   866,   243,   861,   862,   863,
+     870,   878,   880,   659,  1531,    27,   321,   855,   856,   857,
+     870,   871,   872,   878,   880,   848,   849,   855,  1069,   133,
+     253,   947,  1075,   661,   405,  1140,   745,  1536,   132,  1172,
+    1534,  1170,  1527,   893,  1181,   241,   264,  1042,  1183,   660,
+     661,   812,    56,   628,   805,   807,   150,   236,   238,   296,
      298,   299,   300,   301,   302,   304,   305,   306,   307,   308,
-     309,   310,   311,   312,   314,   315,   316,   444,   445,   686,
-     687,   694,  1367,   198,  1155,   604,  1153,    83,   362,   438,
-     593,   856,   857,   858,   868,   872,   873,   874,   875,   876,
-     878,   608,   841,   659,  1416,  1276,   665,  1420,  1419,   201,
-     652,  1532,   659,   658,  1251,   658,  1252,   658,   658,   658,
-    1211,   158,   628,  1261,    20,   658,   609,   658,   658,   658,
-     659,   658,   659,   658,   659,   659,   659,   659,   609,   659,
-    1240,   658,   652,   658,   659,   659,   658,   658,   658,   658,
-     201,   659,   658,   659,  1242,   658,   659,   659,   659,   651,
-     658,   659,   658,   658,   657,  1521,  1532,  1251,   658,   658,
-     658,  1251,   658,   659,   658,   658,   658,   658,   658,   658,
-     659,   658,   254,   658,   659,   659,   658,   659,   659,   658,
-     658,   658,   659,   201,   659,  1251,   658,   658,   659,   659,
-     659,   658,   201,  1211,   201,  1211,   201,  1211,   201,   658,
-     659,   658,   658,   658,   658,   659,    20,   275,   659,  1031,
-     658,  1257,  1282,  1283,  1284,   657,  1187,  1188,   597,  1649,
-     662,  1559,   495,  1532,   186,   370,   583,   599,   657,    18,
-    1211,  1647,   172,  1317,  1214,  1211,  1211,  1214,   657,  1226,
-    1214,  1205,  1236,  1237,  1238,   657,   665,  1532,  1525,   877,
-     659,  1393,  1394,   659,    54,   462,  1107,  1366,  1534,   659,
-     137,  1463,   695,  1461,  1366,  1462,   769,   772,   773,   768,
-     372,   478,   770,  1532,  1616,  1617,   576,   233,   631,   659,
-    1592,   652,  1525,  1532,  1608,  1608,  1608,   191,   205,   267,
-     269,   361,   416,   645,   646,   647,  1583,  1585,  1313,   795,
-    1376,  1537,  1173,  1174,  1175,  1176,  1525,   242,   295,   432,
-     636,  1576,  1575,   251,   814,   829,   831,   830,   657,  1205,
-    1338,   548,   906,   896,    12,   898,  1211,  1529,  1537,  1537,
-    1163,  1525,  1366,   183,   428,   607,  1130,  1131,  1132,  1211,
-     486,   494,   613,   614,   657,   937,  1384,  1387,   657,   129,
-     193,   222,   292,   371,   588,  1337,    13,  1473,   762,   761,
-    1595,   213,   201,   659,  1608,  1608,  1608,  1637,   565,  1531,
-    1531,   664,  1351,  1352,  1353,  1534,  1211,  1327,  1520,   177,
-     475,   375,   659,  1290,  1532,   105,   244,   261,   273,   355,
-     470,   542,  1274,  1275,   659,  1525,  1290,  1314,   215,  1318,
-     496,  1203,  1206,  1206,   665,  1560,   198,  1570,   198,   132,
-    1014,  1016,  1534,  1393,   657,   657,   275,   379,   636,   659,
-     659,   665,   665,   665,  1562,  1211,  1563,  1550,  1552,  1553,
-    1529,   201,  1442,  1529,  1211,   658,  1532,   721,  1443,   427,
-    1329,  1428,  1441,  1443,  1438,  1525,  1443,  1443,   659,   602,
-    1121,   494,   742,   659,   198,  1694,  1329,   941,   942,   631,
-    1591,   945,   722,  1532,   722,   945,   945,   706,   586,   609,
-    1053,   377,   377,   698,  1394,  1394,   353,  1529,   526,   526,
-     526,   526,   526,   485,  1529,  1529,  1394,   659,   861,   115,
-     225,   393,   404,   411,   510,   606,   707,   708,  1394,  1394,
-     659,   855,   848,   849,   868,   869,   870,     6,    12,    14,
+     309,   310,   311,   312,   314,   315,   316,   444,   445,   688,
+     689,   696,  1369,   198,  1157,   604,  1155,    83,   362,   438,
+     593,   858,   859,   860,   870,   874,   875,   876,   877,   878,
+     880,   608,   843,   661,  1418,  1278,   667,  1422,  1421,   201,
+     654,  1534,   661,   660,  1253,   660,  1254,   660,   660,   660,
+    1213,   158,   628,  1263,    20,   660,   609,   660,   660,   660,
+     661,   660,   661,   660,   661,   661,   661,   661,   609,   661,
+    1242,   660,   654,   660,   661,   661,   660,   660,   660,   660,
+     201,   661,   660,   661,  1244,   660,   661,   661,   661,   653,
+     660,   661,   660,   660,   659,  1523,  1534,  1253,   660,   660,
+     660,  1253,   660,   661,   660,   660,   660,   660,   660,   660,
+     661,   660,   254,   660,   661,   661,   660,   661,   661,   660,
+     660,   660,   661,   201,   661,  1253,   660,   660,   661,   661,
+     661,   660,   201,  1213,   201,  1213,   201,  1213,   201,   660,
+     661,   660,   660,   660,   660,   661,    20,   275,   661,  1033,
+     660,  1259,  1284,  1285,  1286,   659,  1189,  1190,   597,  1651,
+     664,  1561,   495,  1534,   186,   370,   583,   599,   659,    18,
+    1213,  1649,   172,  1319,  1216,  1213,  1213,  1216,   659,  1228,
+    1216,  1207,  1238,  1239,  1240,   659,   667,  1534,  1527,   879,
+     661,  1395,  1396,   661,    54,   462,  1109,  1368,  1536,   661,
+     137,  1465,   697,  1463,  1368,  1464,   771,   774,   775,   770,
+     372,   478,   772,  1534,  1618,  1619,   576,   233,   631,   661,
+    1594,   654,  1527,  1534,  1610,  1610,  1610,   191,   205,   267,
+     269,   361,   416,   647,   648,   649,  1585,  1587,  1315,   797,
+    1378,  1539,  1175,  1176,  1177,  1178,  1527,   242,   295,   432,
+     636,  1578,  1577,   251,   816,   831,   833,   832,   659,  1207,
+    1340,   548,   908,   898,    12,   900,  1213,  1531,  1539,  1539,
+    1165,  1527,  1368,   183,   428,   607,  1132,  1133,  1134,  1213,
+     486,   494,   613,   614,   659,   939,  1386,  1389,   659,   129,
+     193,   222,   292,   371,   588,  1339,    13,  1475,   764,   763,
+    1597,   213,   201,   661,  1610,  1610,  1610,  1639,   565,  1533,
+    1533,   666,  1353,  1354,  1355,  1536,  1213,  1329,  1522,   177,
+     475,   375,   661,  1292,  1534,   105,   244,   261,   273,   355,
+     470,   542,  1276,  1277,   661,  1527,  1292,  1316,   215,  1320,
+     496,  1205,  1208,  1208,   667,  1562,   198,  1572,   198,   132,
+    1016,  1018,  1536,  1395,   659,   659,   275,   379,   636,   661,
+     661,   667,   667,   667,  1564,  1213,  1565,  1552,  1554,  1555,
+    1531,   201,  1444,  1531,  1213,   660,  1534,   723,  1445,   427,
+    1331,  1430,  1443,  1445,  1440,  1527,  1445,  1445,   661,   602,
+    1123,   494,   744,   661,   198,  1696,  1331,   943,   944,   631,
+    1593,   947,   724,  1534,   724,   947,   947,   708,   586,   609,
+    1055,   377,   377,   700,  1396,  1396,   353,  1531,   526,   526,
+     526,   526,   526,   485,  1531,  1531,  1396,   661,   863,   115,
+     225,   393,   404,   411,   510,   606,   709,   710,  1396,  1396,
+     661,   857,   850,   851,   870,   871,   872,     6,    12,    14,
       16,    28,    30,    60,    65,    66,    71,    83,    91,   101,
      118,   135,   144,   145,   152,   160,   166,   176,   196,   239,
      241,   248,   263,   287,   320,   339,   343,   382,   387,   394,
      396,   401,   404,   435,   449,   450,   451,   452,   476,   534,
-     535,   536,   541,   557,   560,   579,   584,   597,   889,   948,
-     950,   952,   953,  1079,  1083,  1085,  1088,  1094,  1095,  1096,
-    1098,  1099,  1321,  1528,  1525,   377,   717,  1075,  1137,   198,
-     131,   741,   744,  1178,   657,  1211,   568,   806,   805,   645,
-     645,   645,   645,   645,   645,   645,   645,   645,   645,   645,
-     645,   645,   645,   645,   645,   645,   645,   645,   645,   645,
-     645,   645,   659,   604,  1394,  1394,  1394,  1394,   659,   858,
-     288,   184,   850,   851,   852,   868,   869,   870,   871,   874,
-     875,   876,   878,  1370,  1532,   609,  1413,  1532,  1264,   665,
-    1420,   250,  1211,   658,  1211,   568,  1211,  1211,   162,    37,
+     535,   536,   541,   557,   560,   579,   584,   597,   891,   950,
+     952,   954,   955,  1081,  1085,  1087,  1090,  1096,  1097,  1098,
+    1100,  1101,  1323,  1530,  1527,   377,   719,  1077,  1139,   198,
+     131,   743,   746,  1180,   659,  1213,   568,   808,   807,   647,
+     647,   647,   647,   647,   647,   647,   647,   647,   647,   647,
+     647,   647,   647,   647,   647,   647,   647,   647,   647,   647,
+     647,   647,   661,   604,  1396,  1396,  1396,  1396,   661,   860,
+     288,   184,   852,   853,   854,   870,   871,   872,   873,   876,
+     877,   878,   880,  1372,  1534,   609,  1415,  1534,  1266,   667,
+    1422,   250,  1213,   660,  1213,   568,  1213,  1213,   162,    37,
       63,   119,   122,   130,   149,   252,   357,   502,   572,   601,
-    1253,  1009,  1225,  1211,  1224,  1257,  1211,  1211,  1009,  1253,
-    1257,   658,   250,   250,  1211,  1211,  1211,  1257,  1211,  1211,
-    1211,  1211,  1211,  1214,   658,   658,  1211,  1211,  1211,  1211,
-    1211,  1211,  1257,   250,  1211,  1211,  1211,   658,  1211,  1211,
-    1211,  1211,   201,  1211,   201,  1211,   201,  1211,  1211,  1211,
-      37,    63,  1026,  1027,  1028,  1029,  1030,  1338,  1337,   658,
-     658,  1194,  1195,  1196,  1650,  1651,  1652,  1187,   658,   486,
-    1643,  1534,  1211,  1647,  1213,   658,   659,   658,  1226,  1307,
-    1307,    18,  1211,  1647,  1317,  1211,   658,   659,  1256,  1257,
-    1532,  1364,  1595,   954,  1534,  1537,  1107,   681,   645,   198,
-     631,  1457,  1458,   645,   659,   658,   659,  1610,    50,   621,
-     631,  1612,     7,  1614,   665,   665,   576,   576,   576,  1584,
-    1329,   742,  1384,   659,  1177,  1179,  1531,   636,   284,    89,
-     789,   819,   821,   824,   822,   899,   900,   901,  1532,   911,
-    1214,    50,   657,   913,   903,   645,   657,   576,   201,  1133,
-    1131,   162,   938,  1385,   657,  1390,  1395,  1390,   658,   937,
-    1386,  1518,  1519,  1522,  1532,  1388,  1306,  1532,   645,   384,
-    1609,  1536,   201,   201,   201,  1184,  1358,  1534,   659,   659,
-      21,   138,  1328,  1333,  1334,   177,  1333,  1333,  1280,  1285,
-    1290,  1263,   261,   261,   390,  1292,   273,   470,  1274,  1292,
-    1263,  1265,  1276,  1287,  1288,  1211,    50,   220,  1315,   341,
-      20,  1207,  1529,  1532,   652,  1532,   671,  1537,   565,   565,
-     432,   453,   489,  1567,  1565,  1564,  1393,  1551,   659,  1555,
-    1557,  1561,   129,   193,   292,   371,   588,  1339,  1433,   170,
-     625,   371,  1442,  1313,  1438,  1120,   297,   694,  1122,  1405,
-    1406,  1522,   162,  1337,   335,     7,  1532,   657,   466,  1683,
-    1670,   722,   197,    49,   219,   479,  1059,  1059,   377,  1525,
-    1525,   277,   657,   880,   883,   947,   949,   950,  1016,  1010,
-     118,   118,   133,   253,   222,   292,   371,   588,   879,  1340,
-    1341,  1528,   861,  1529,  1529,  1529,  1529,  1337,  1529,  1529,
-     658,   659,   879,   879,   855,   659,   849,    81,    93,   401,
-     963,   973,   974,  1040,  1044,  1045,  1100,  1394,  1100,   401,
-    1394,  1394,  1100,  1394,   401,   401,  1394,  1394,   576,   143,
-    1394,   262,   557,   197,   401,   417,  1040,  1100,   262,  1394,
-     401,   557,   143,  1394,  1394,  1394,  1394,  1394,  1100,   401,
-      50,  1394,  1394,   891,  1394,   401,   403,    20,   576,   645,
-    1109,   401,   401,  1394,  1394,  1394,  1394,   146,   331,  1532,
-    1394,  1394,   401,  1394,   948,   659,   888,   889,  1083,   657,
-     665,   962,   975,  1524,  1532,  1393,  1662,    87,   481,   450,
-    1076,    13,    75,  1139,    99,   180,   749,   775,  1532,   162,
-     777,   663,   657,   417,  1303,  1304,  1305,  1532,   742,  1211,
-     657,   657,   657,  1337,  1529,  1529,  1339,  1529,  1337,  1529,
-    1529,  1529,  1529,  1529,  1529,  1529,  1337,  1337,  1529,   111,
-     367,   506,  1516,  1529,  1337,   687,  1529,  1338,   879,   879,
-     858,   215,  1394,   659,   852,   665,  1264,  1313,  1420,  1313,
-    1211,   658,  1211,   568,   657,  1000,  1001,  1001,  1001,   657,
-     995,   996,  1000,  1255,  1001,   252,  1001,   252,   658,   658,
-     658,    20,  1221,   658,    20,   658,   658,   658,  1241,  1211,
-    1211,   658,   658,   659,   658,   387,  1248,   659,   659,   658,
-     659,   658,   254,  1233,  1234,   658,   658,   658,   658,   659,
-     658,   658,  1211,   658,   198,   658,   658,   659,   658,   659,
-     659,   658,  1211,   658,  1211,   658,  1211,   658,   658,   658,
-     657,  1021,  1021,    21,   138,   468,   650,  1023,  1024,  1025,
-     659,   659,  1313,  1202,  1652,   658,  1639,  1283,  1646,   665,
-    1063,   658,  1257,  1213,   658,   659,   658,  1206,  1238,   658,
-     657,  1459,   432,    58,    68,    82,    94,    95,    96,   113,
-     333,   351,   464,   482,   544,   561,   774,   773,  1617,   631,
-    1620,   404,   565,  1534,   384,   652,   652,  1610,  1610,  1610,
-     657,   796,   377,  1400,  1175,  1525,  1179,   237,  1182,  1488,
-     792,  1532,   812,  1533,   812,   826,   826,   826,   658,   659,
-    1206,   897,   401,   914,   915,  1338,   899,  1537,   350,   454,
-    1198,  1391,  1392,  1522,  1396,   659,   657,  1387,   658,   658,
-     659,   665,  1635,   658,   659,   761,   201,  1611,  1611,  1611,
-    1008,  1011,  1352,  1520,  1334,   597,   658,  1639,  1286,   662,
-     261,  1292,  1292,  1278,   261,   377,   609,  1311,  1198,  1319,
-    1520,  1316,  1324,  1529,  1532,   665,   658,   658,    84,   589,
-     432,  1570,  1554,  1556,  1329,  1434,  1443,   645,   659,   659,
-    1404,  1393,   630,  1536,  1677,   130,   252,   434,   543,   958,
-     657,   722,   710,   118,  1525,   700,   701,  1525,   277,   937,
-     959,   960,   961,   962,   963,   887,   888,   659,   949,   708,
-     849,  1062,  1524,   945,    66,   197,   417,   598,   972,  1039,
-     945,  1040,  1041,  1041,   235,   944,   132,  1532,  1524,  1158,
-    1339,  1337,  1371,  1337,    13,  1084,  1092,  1093,  1532,  1158,
-    1529,  1529,  1008,  1394,  1337,   264,  1372,   264,  1371,  1371,
-     954,  1093,  1394,   191,   267,   367,   957,  1337,   132,  1532,
-    1339,  1339,  1371,  1158,  1322,  1323,  1522,   132,  1337,   132,
-    1337,  1343,   890,  1529,  1158,  1525,  1158,  1158,    86,    88,
-     132,   156,   192,   395,   439,   956,   132,  1337,   132,  1337,
-     132,  1337,  1337,  1343,  1084,   951,     6,   152,  1096,   959,
-    1532,     9,   191,  1108,   440,   971,   972,  1033,   976,   665,
-     132,  1340,  1529,  1532,   657,  1663,  1217,  1626,    24,   175,
-     711,   576,   144,   160,   713,    13,   657,  1140,   217,   659,
-     745,    90,   112,   663,  1084,   658,   659,   807,   690,   691,
-    1337,   692,   693,  1337,   688,   689,  1337,  1532,   879,   852,
-    1532,  1313,  1324,  1307,  1211,   129,   292,   371,   588,  1254,
-     371,   657,   996,  1002,    63,   119,   122,   130,   149,   194,
-     252,   354,   357,   434,   572,   601,   988,   989,  1222,  1253,
-     658,  1307,  1307,  1211,    50,   488,  1247,  1211,  1211,  1257,
-      46,   355,   658,   631,  1235,  1211,  1307,  1211,  1211,  1211,
-    1211,   658,   658,   658,  1338,   658,  1031,  1026,  1024,  1026,
-    1027,  1337,  1318,  1194,  1644,  1532,   658,  1257,  1207,  1339,
-    1464,  1465,   182,   287,   213,   565,    20,   609,  1613,   457,
-    1618,  1618,  1618,   132,  1211,  1398,  1399,   158,   159,   797,
-     155,  1182,   271,   237,   455,  1494,   659,   901,   658,   219,
-     264,   916,   658,   659,   658,  1202,   659,  1393,  1397,  1398,
-    1395,  1389,  1387,  1518,  1532,   891,  1532,  1611,  1010,  1359,
-    1328,  1643,  1311,  1266,  1263,  1278,   261,   261,  1263,  1278,
-    1268,  1269,  1301,  1302,  1202,   632,   633,   659,  1320,  1328,
-    1211,  1329,   652,  1555,  1560,  1329,  1529,   694,  1406,  1313,
-    1399,   733,   734,   735,  1532,   512,  1684,     9,    33,   836,
-     377,   635,   699,   657,   657,  1525,   658,   658,   659,   884,
-    1494,   949,  1158,   657,   264,   264,  1041,   945,  1062,  1532,
-     945,   945,  1217,   152,   494,  1084,  1524,  1081,   659,  1338,
-    1010,  1529,  1371,  1092,  1524,  1524,   631,  1529,   975,  1084,
-     659,  1328,   894,  1084,  1089,  1084,   657,   658,  1532,  1525,
+    1255,  1011,  1227,  1213,  1226,  1259,  1213,  1213,  1011,  1255,
+    1259,   660,   250,   250,  1213,  1213,  1213,  1259,  1213,  1213,
+    1213,  1213,  1213,  1216,   660,   660,  1213,  1213,  1213,  1213,
+    1213,  1213,  1259,   250,  1213,  1213,  1213,   660,  1213,  1213,
+    1213,  1213,   201,  1213,   201,  1213,   201,  1213,  1213,  1213,
+      37,    63,  1028,  1029,  1030,  1031,  1032,  1340,  1339,   660,
+     660,  1196,  1197,  1198,  1652,  1653,  1654,  1189,   660,   486,
+    1645,  1536,  1213,  1649,  1215,   660,   661,   660,  1228,  1309,
+    1309,    18,  1213,  1649,  1319,  1213,   660,   661,  1258,  1259,
+    1534,  1366,  1597,   956,  1536,  1539,  1109,   683,   647,   198,
+     631,  1459,  1460,   647,   661,   660,   661,  1612,    50,   621,
+     631,  1614,     7,  1616,   667,   667,   576,   576,   576,  1586,
+    1331,   744,  1386,   661,  1179,  1181,  1533,   636,   284,    89,
+     791,   821,   823,   826,   824,   901,   902,   903,  1534,   913,
+    1216,    50,   659,   915,   905,   647,   659,   576,   201,  1135,
+    1133,   162,   940,  1387,   659,  1392,  1397,  1392,   660,   939,
+    1388,  1520,  1521,  1524,  1534,  1390,  1308,  1534,   647,   384,
+    1611,  1538,   201,   201,   201,  1186,  1360,  1536,   661,   661,
+      21,   138,  1330,  1335,  1336,   177,  1335,  1335,  1282,  1287,
+    1292,  1265,   261,   261,   390,  1294,   273,   470,  1276,  1294,
+    1265,  1267,  1278,  1289,  1290,  1213,    50,   220,  1317,   341,
+      20,  1209,  1531,  1534,   654,  1534,   673,  1539,   565,   565,
+     432,   453,   489,  1569,  1567,  1566,  1395,  1553,   661,  1557,
+    1559,  1563,   129,   193,   292,   371,   588,  1341,  1435,   170,
+     625,   371,  1444,  1315,  1440,  1122,   297,   696,  1124,  1407,
+    1408,  1524,   162,  1339,   335,     7,  1534,   659,   466,  1685,
+    1672,   724,   197,    49,   219,   479,  1061,  1061,   377,  1527,
+    1527,   277,   659,   882,   885,   949,   951,   952,  1018,  1012,
+     118,   118,   133,   253,   222,   292,   371,   588,   881,  1342,
+    1343,  1530,   863,  1531,  1531,  1531,  1531,  1339,  1531,  1531,
+     660,   661,   881,   881,   857,   661,   851,    81,    93,   401,
+     965,   975,   976,  1042,  1046,  1047,  1102,  1396,  1102,   401,
+    1396,  1396,  1102,  1396,   401,   401,  1396,  1396,   576,   143,
+    1396,   262,   557,   197,   401,   417,  1042,  1102,   262,  1396,
+     401,   557,   143,  1396,  1396,  1396,  1396,  1396,  1102,   401,
+      50,  1396,  1396,   893,  1396,   401,   403,    20,   576,   647,
+    1111,   401,   401,  1396,  1396,  1396,  1396,   146,   331,  1534,
+    1396,  1396,   401,  1396,   950,   661,   890,   891,  1085,   659,
+     667,   964,   977,  1526,  1534,  1395,  1664,    87,   481,   450,
+    1078,    13,    75,  1141,    99,   180,   751,   777,  1534,   162,
+     779,   665,   659,   417,  1305,  1306,  1307,  1534,   744,  1213,
+     659,   659,   659,  1339,  1531,  1531,  1341,  1531,  1339,  1531,
+    1531,  1531,  1531,  1531,  1531,  1531,  1339,  1339,  1531,   111,
+     367,   506,  1518,  1531,  1339,   689,  1531,  1340,   881,   881,
+     860,   215,  1396,   661,   854,   667,  1266,  1315,  1422,  1315,
+    1213,   660,  1213,   568,   659,  1002,  1003,  1003,  1003,   659,
+     997,   998,  1002,  1257,  1003,   252,  1003,   252,   660,   660,
+     660,    20,  1223,   660,    20,   660,   660,   660,  1243,  1213,
+    1213,   660,   660,   661,   660,   387,  1250,   661,   661,   660,
+     661,   660,   254,  1235,  1236,   660,   660,   660,   660,   661,
+     660,   660,  1213,   660,   198,   660,   660,   661,   660,   661,
+     661,   660,  1213,   660,  1213,   660,  1213,   660,   660,   660,
+     659,  1023,  1023,    21,   138,   468,   652,  1025,  1026,  1027,
+     661,   661,  1315,  1204,  1654,   660,  1641,  1285,  1648,   667,
+    1065,   660,  1259,  1215,   660,   661,   660,  1208,  1240,   660,
+     659,  1461,   432,    58,    68,    82,    94,    95,    96,   113,
+     333,   351,   464,   482,   544,   561,   776,   775,  1619,   631,
+    1622,   404,   565,  1536,   384,   654,   654,  1612,  1612,  1612,
+     659,   798,   377,  1402,  1177,  1527,  1181,   237,  1184,  1490,
+     794,  1534,   814,  1535,   814,   828,   828,   828,   660,   661,
+    1208,   899,   401,   916,   917,  1340,   901,  1539,   350,   454,
+    1200,  1393,  1394,  1524,  1398,   661,   659,  1389,   660,   660,
+     661,   667,  1637,   660,   661,   763,   201,  1613,  1613,  1613,
+    1010,  1013,  1354,  1522,  1336,   597,   660,  1641,  1288,   664,
+     261,  1294,  1294,  1280,   261,   377,   609,  1313,  1200,  1321,
+    1522,  1318,  1326,  1531,  1534,   667,   660,   660,    84,   589,
+     432,  1572,  1556,  1558,  1331,  1436,  1445,   647,   661,   661,
+    1406,  1395,   630,  1538,  1679,   130,   252,   434,   543,   960,
+     659,   724,   712,   118,  1527,   702,   703,  1527,   277,   939,
+     961,   962,   963,   964,   965,   889,   890,   661,   951,   710,
+     851,  1064,  1526,   947,    66,   197,   417,   598,   974,  1041,
+     947,  1042,  1043,  1043,   235,   946,   132,  1534,  1526,  1160,
+    1341,  1339,  1373,  1339,    13,  1086,  1094,  1095,  1534,  1160,
+    1531,  1531,  1010,  1396,  1339,   264,  1374,   264,  1373,  1373,
+    1536,  1095,  1396,   191,   267,   367,   959,  1339,   132,  1534,
+    1341,  1341,  1373,  1160,  1324,  1325,  1524,   132,  1339,   132,
+    1339,  1345,   892,  1531,  1160,  1527,  1160,  1160,    86,    88,
+     132,   156,   192,   395,   439,   958,   132,  1339,   132,  1339,
+     132,  1339,  1339,  1345,  1086,   953,     6,   152,  1098,   961,
+    1534,     9,   191,  1110,   440,   973,   974,  1035,   978,   667,
+     132,  1342,  1531,  1534,   659,  1665,  1219,  1628,    24,   175,
+     713,   576,   144,   160,   715,    13,   659,  1142,   217,   661,
+     747,    90,   112,   665,  1086,   660,   661,   809,   692,   693,
+    1339,   694,   695,  1339,   690,   691,  1339,  1534,   881,   854,
+    1534,  1315,  1326,  1309,  1213,   129,   292,   371,   588,  1256,
+     371,   659,   998,  1004,    63,   119,   122,   130,   149,   194,
+     252,   354,   357,   434,   572,   601,   990,   991,  1224,  1255,
+     660,  1309,  1309,  1213,    50,   488,  1249,  1213,  1213,  1259,
+      46,   355,   660,   631,  1237,  1213,  1309,  1213,  1213,  1213,
+    1213,   660,   660,   660,  1340,   660,  1033,  1028,  1026,  1028,
+    1029,  1339,  1320,  1196,  1646,  1534,   660,  1259,  1209,  1341,
+    1466,  1467,   182,   287,   213,   565,    20,   609,  1615,   457,
+    1620,  1620,  1620,   132,  1213,  1400,  1401,   158,   159,   799,
+     155,  1184,   271,   237,   455,  1496,   661,   903,   660,   219,
+     264,   918,   660,   661,   660,  1204,   661,  1395,  1399,  1400,
+    1397,  1391,  1389,  1520,  1534,   893,  1534,  1613,  1012,  1361,
+    1330,  1645,  1313,  1268,  1265,  1280,   261,   261,  1265,  1280,
+    1270,  1271,  1303,  1304,  1204,   632,   633,   661,  1322,  1330,
+    1213,  1331,   654,  1557,  1562,  1331,  1531,   696,  1408,  1315,
+    1401,   735,   736,   737,  1534,   512,  1686,     9,    33,   838,
+     377,   635,   701,   659,   659,  1527,   660,   660,   661,   886,
+    1496,   951,  1160,   659,   264,   264,  1043,   947,  1064,  1534,
+     947,   947,  1219,   152,   494,  1086,  1526,  1083,   661,  1340,
+    1012,  1531,  1373,  1094,  1526,  1526,   631,  1531,   977,  1086,
+     661,  1330,   896,  1086,  1091,  1086,   659,   660,  1534,  1527,
       36,    37,    42,    44,    46,    47,   119,   122,   130,   149,
      167,   192,   194,   208,   209,   252,   281,   290,   291,   293,
      327,   328,   329,   346,   347,   348,   354,   357,   373,   374,
      409,   410,   434,   490,   494,   508,   566,   569,   572,   573,
-     574,   575,   615,   616,   642,   986,   987,   988,   989,   990,
-     991,   992,   993,  1532,  1532,  1664,    20,   415,  1211,  1211,
-     377,   717,   722,   377,    83,   718,  1141,   240,   198,  1532,
-     986,  1006,   198,   198,   658,  1304,   568,   658,   659,   658,
-     659,   658,   659,   278,  1335,   658,   658,   658,   658,   658,
-      22,    37,    51,   595,  1008,  1018,  1019,   659,   371,  1001,
-     995,    63,  1001,   252,  1223,   658,   658,   658,   658,  1249,
-    1511,   658,   658,   659,   658,   341,   266,   427,   658,   658,
-     658,   658,   658,   658,  1022,   658,   659,  1315,   658,   658,
-     659,    18,  1466,   384,  1529,    67,   259,   363,   529,   546,
-     637,  1606,  1607,   631,  1619,  1619,  1619,   658,   659,   742,
-     793,  1401,   251,  1532,   657,   904,   898,   917,  1532,   915,
-     939,  1392,  1399,   658,  1638,    75,  1495,  1281,   377,  1271,
-    1278,  1278,   377,  1273,  1211,   657,  1299,  1300,  1289,  1520,
-     419,  1344,  1324,   658,   659,   736,  1529,   245,   254,   392,
-     737,   738,   739,   740,   136,   247,   603,   837,   481,  1534,
-     657,  1060,  1061,  1532,  1060,   658,   882,   881,   961,    20,
-     940,  1086,  1211,   945,  1062,  1532,   609,  1052,   586,  1062,
-    1062,   179,   132,   132,   975,  1152,  1093,  1015,  1524,  1107,
-     559,  1108,  1080,  1323,  1090,  1092,  1082,  1462,   657,  1034,
-    1000,  1000,  1001,  1001,   995,   413,   657,   995,   995,  1019,
-      63,   615,   988,   990,  1019,  1019,    63,   616,   616,   619,
-     995,   657,  1001,  1001,  1001,  1019,  1000,  1001,   977,   995,
-     619,  1000,  1019,    37,  1000,  1020,  1000,  1000,  1001,  1002,
-     665,   658,   659,  1665,  1666,  1307,   504,  1529,   151,  1077,
-    1144,  1532,    13,   657,  1142,   746,  1015,   132,   776,   752,
-     753,  1337,   747,   748,   742,   691,   693,   689,   475,  1333,
-    1414,  1018,  1009,  1020,   371,  1019,  1250,  1520,  1211,   341,
-     181,   658,  1337,  1324,  1465,   144,   565,   565,   565,    18,
-    1605,   213,   318,   319,   323,   324,   325,  1621,  1622,  1399,
-     264,   559,  1205,   907,   657,   613,   918,  1194,   161,   171,
-     385,   564,  1496,  1497,   280,  1498,  1644,  1270,   609,  1272,
-     609,  1306,   196,   237,   608,  1294,  1295,  1298,  1194,  1328,
-    1532,  1354,  1355,  1335,  1678,   735,  1006,   658,   659,   735,
-     377,   711,   383,  1060,   658,   659,  1328,   657,   658,  1638,
-     947,   657,   937,   402,   657,  1087,   658,  1062,  1052,   586,
-    1059,   964,  1059,   966,   967,   122,   569,   572,   650,   651,
-    1514,  1515,  1108,  1525,  1158,  1091,  1130,   658,  1035,  1532,
-     317,  1036,   502,   601,   643,   997,   998,   999,  1064,  1511,
-     997,   997,  1019,   619,   997,  1064,  1019,   997,    28,    73,
-      83,   132,   207,   370,   377,   417,   490,   598,   978,   979,
-    1003,  1004,  1005,  1032,  1217,  1528,   528,   994,  1019,  1020,
-    1019,  1020,   997,   997,  1532,  1532,   486,   657,  1667,   712,
-     719,   720,   658,   659,  1143,   517,   519,   750,   751,   752,
-     755,  1217,  1532,  1211,  1183,   177,   475,   465,  1417,   658,
-     659,  1328,   658,   658,  1329,    64,  1606,   384,  1337,  1337,
-    1337,  1516,   371,   650,  1336,  1622,   603,  1525,   911,   547,
-     912,   909,   910,  1532,   254,   274,    83,    91,   118,   241,
-     320,   339,   362,   557,   934,   935,   936,  1437,    50,    50,
-     161,    50,  1497,   530,   564,  1499,  1500,  1211,   657,  1211,
-     657,   658,  1040,  1040,  1295,  1345,  1201,   466,  1685,   739,
-    1205,   716,   717,   657,   658,    83,   263,   631,  1047,  1051,
-    1055,  1058,  1528,  1061,   371,  1048,  1050,  1055,  1057,   887,
-     937,   885,  1338,   914,   970,   968,  1059,   657,   965,   657,
-     657,  1516,  1516,   891,   251,   658,   659,   202,   400,   503,
-     377,  1037,   999,   658,   659,   658,  1014,  1529,   366,  1007,
-    1514,    15,   603,   132,   264,    20,  1005,   264,   370,  1393,
-     645,  1189,  1185,   631,  1668,   531,   714,   777,  1532,   417,
-    1145,  1146,  1532,   659,   777,   200,   177,  1202,  1520,  1344,
-     292,   371,  1407,  1408,  1522,  1276,  1206,  1338,   658,   659,
-     920,   567,  1394,  1394,   143,   143,  1394,  1394,  1394,  1394,
-     657,   929,   936,   166,  1511,  1511,    50,  1511,    50,    50,
-    1500,  1306,  1306,   198,  1293,  1293,   657,  1679,   724,  1671,
-     713,   707,   586,   609,  1046,  1049,  1054,  1055,  1056,  1529,
-    1394,   398,  1097,  1098,  1099,  1058,  1393,  1328,   658,  1097,
-    1057,   884,   658,  1635,   658,   657,   657,   969,  1060,   657,
-    1060,  1060,   657,  1532,   136,   603,  1019,  1511,  1019,   657,
-    1208,   366,   614,   657,   132,  1340,  1529,  1532,   371,   658,
-      55,    66,   284,  1211,   163,   715,   658,   659,   751,  1328,
-    1201,   659,  1393,  1489,   658,   908,   910,   657,   922,   924,
-     919,  1529,  1529,  1394,  1394,  1340,  1340,  1338,  1534,   548,
-     930,   931,  1394,  1511,  1511,  1511,   658,   658,   215,   261,
-     387,  1297,  1296,  1205,  1346,  1347,  1348,  1006,   725,   726,
-    1626,  1686,  1525,   718,   658,  1059,  1059,  1097,  1056,  1337,
-    1528,  1099,  1098,   132,  1340,  1529,  1532,   886,  1060,  1060,
-     657,   658,  1060,   658,   658,   914,    54,   367,   462,   494,
-    1038,  1038,   658,  1338,  1208,   985,  1638,    66,   384,    66,
-    1211,  1146,  1408,  1399,  1011,   912,   657,   923,   924,   925,
-     326,   921,   924,  1529,  1529,   932,   658,   659,   954,    50,
-      50,   657,   657,  1211,   658,   659,  1680,   141,   777,   198,
-     151,  1638,   658,   658,  1060,  1046,   658,  1047,  1048,   658,
-       5,   132,   370,   377,   377,   658,   658,   384,   384,  1490,
-     658,   659,   326,   927,   928,  1214,   933,  1534,   931,  1303,
-    1305,  1206,  1348,   724,  1205,   719,  1033,  1046,   658,  1046,
-     603,   136,   405,   623,   980,   475,  1501,   924,   659,   926,
-     934,   658,   658,  1681,  1672,  1046,  1038,  1038,    83,   598,
-     981,   982,   983,   233,  1495,   928,   658,   777,   157,  1529,
-     264,   983,    50,  1498,   477,  1511,   237,  1502,  1673,   371,
-     657,  1504,   777,   280,   475,  1503,   658,   664,  1505,  1506,
-    1522,   494,  1507,  1534,   658,   659,  1508,  1509,  1522,  1506,
-     659,  1393,  1509,  1205,  1399,  1206
+     574,   575,   615,   616,   642,   988,   989,   990,   991,   992,
+     993,   994,   995,  1534,  1534,  1666,    20,   415,  1213,  1213,
+     377,   719,   724,   377,    83,   720,  1143,   240,   198,  1534,
+     988,  1008,   198,   198,   660,  1306,   568,   660,   661,   660,
+     661,   660,   661,   278,  1337,   660,   660,   660,   660,   660,
+      22,    37,    51,   595,  1010,  1020,  1021,   661,   371,  1003,
+     997,    63,  1003,   252,  1225,   660,   660,   660,   660,  1251,
+    1513,   660,   660,   661,   660,   341,   266,   427,   660,   660,
+     660,   660,   660,   660,  1024,   660,   661,  1317,   660,   660,
+     661,    18,  1468,   384,  1531,    67,   259,   363,   529,   546,
+     637,  1608,  1609,   631,  1621,  1621,  1621,   660,   661,   744,
+     795,  1403,   251,  1534,   659,   906,   900,   919,  1534,   917,
+     941,  1394,  1401,   660,  1640,    75,  1497,  1283,   377,  1273,
+    1280,  1280,   377,  1275,  1213,   659,  1301,  1302,  1291,  1522,
+     419,  1346,  1326,   660,   661,   738,  1531,   245,   254,   392,
+     739,   740,   741,   742,   136,   247,   603,   839,   481,  1536,
+     659,  1062,  1063,  1534,  1062,   660,   884,   883,   963,    20,
+     942,  1088,  1213,   947,  1064,  1534,   609,  1054,   586,  1064,
+    1064,   179,   132,   132,   977,  1154,  1095,  1017,  1526,  1109,
+     559,  1110,  1082,  1325,  1092,  1094,  1084,  1464,   659,  1036,
+    1002,  1002,  1003,  1003,   997,   413,   659,   997,   997,  1021,
+      63,   615,   990,   992,  1021,  1021,    63,   616,   616,   619,
+     997,   659,  1003,  1003,  1003,  1021,  1002,  1003,   979,   997,
+     619,  1002,  1021,    37,  1002,  1022,  1002,  1002,  1003,  1004,
+     667,   660,   661,  1667,  1668,  1309,   504,  1531,   151,  1079,
+    1146,  1534,    13,   659,  1144,   748,  1017,   132,   778,   754,
+     755,  1339,   749,   750,   744,   693,   695,   691,   475,  1335,
+    1416,  1020,  1011,  1022,   371,  1021,  1252,  1522,  1213,   341,
+     181,   660,  1339,  1326,  1467,   144,   565,   565,   565,    18,
+    1607,   213,   318,   319,   323,   324,   325,  1623,  1624,  1401,
+     264,   559,  1207,   909,   659,   613,   920,  1196,   161,   171,
+     385,   564,  1498,  1499,   280,  1500,  1646,  1272,   609,  1274,
+     609,  1308,   196,   237,   608,  1296,  1297,  1300,  1196,  1330,
+    1534,  1356,  1357,  1337,  1680,   737,  1008,   660,   661,   737,
+     377,   713,   383,  1062,   660,   661,  1330,   659,   660,  1640,
+     949,   659,   939,   402,   659,  1089,   660,  1064,  1054,   586,
+    1061,   966,  1061,   968,   969,   122,   569,   572,   652,   653,
+    1516,  1517,  1110,  1527,  1160,  1093,  1132,   660,  1037,  1534,
+     317,  1038,   502,   601,   643,   999,  1000,  1001,  1066,  1513,
+     999,   999,  1021,   619,   999,  1066,  1021,   999,    28,    73,
+      83,   132,   207,   370,   377,   417,   490,   598,   980,   981,
+    1005,  1006,  1007,  1034,  1219,  1530,   528,   996,  1021,  1022,
+    1021,  1022,   999,   999,  1534,  1534,   486,   659,  1669,   714,
+     721,   722,   660,   661,  1145,   517,   519,   752,   753,   754,
+     757,  1219,  1534,  1213,  1185,   177,   475,   465,  1419,   660,
+     661,  1330,   660,   660,  1331,    64,  1608,   384,  1339,  1339,
+    1339,  1518,   371,   652,  1338,  1624,   603,  1527,   913,   547,
+     914,   911,   912,  1534,   254,   274,    83,    91,   118,   241,
+     320,   339,   362,   557,   936,   937,   938,  1439,    50,    50,
+     161,    50,  1499,   530,   564,  1501,  1502,  1213,   659,  1213,
+     659,   660,  1042,  1042,  1297,  1347,  1203,   466,  1687,   741,
+    1207,   718,   719,   659,   660,    83,   263,   631,  1049,  1053,
+    1057,  1060,  1530,  1063,   371,  1050,  1052,  1057,  1059,   889,
+     939,   887,  1340,   916,   972,   970,  1061,   659,   967,   659,
+     659,  1518,  1518,   893,   251,   660,   661,   202,   400,   503,
+     377,  1039,  1001,   660,   661,   660,  1016,  1531,   366,  1009,
+    1516,    15,   603,   132,   264,    20,  1007,   264,   370,  1395,
+     647,  1191,  1187,   631,  1670,   531,   716,   779,  1534,   417,
+    1147,  1148,  1534,   661,   779,   200,   177,  1204,  1522,  1346,
+     292,   371,  1409,  1410,  1524,  1278,  1208,  1340,   660,   661,
+     922,   567,  1396,  1396,   143,   143,  1396,  1396,  1396,  1396,
+     659,   931,   938,   166,  1513,  1513,    50,  1513,    50,    50,
+    1502,  1308,  1308,   198,  1295,  1295,   659,  1681,   726,  1673,
+     715,   709,   586,   609,  1048,  1051,  1056,  1057,  1058,  1531,
+    1396,   398,  1099,  1100,  1101,  1060,  1395,  1330,   660,  1099,
+    1059,   886,   660,  1637,   660,   659,   659,   971,  1062,   659,
+    1062,  1062,   659,  1534,   136,   603,  1021,  1513,  1021,   659,
+    1210,   366,   614,   659,   132,  1342,  1531,  1534,   371,   660,
+      55,    66,   284,  1213,   163,   717,   660,   661,   753,  1330,
+    1203,   661,  1395,  1491,   660,   910,   912,   659,   924,   926,
+     921,  1531,  1531,  1396,  1396,  1342,  1342,  1340,  1536,   548,
+     932,   933,  1396,  1513,  1513,  1513,   660,   660,   215,   261,
+     387,  1299,  1298,  1207,  1348,  1349,  1350,  1008,   727,   728,
+    1628,  1688,  1527,   720,   660,  1061,  1061,  1099,  1058,  1339,
+    1530,  1101,  1100,   132,  1342,  1531,  1534,   888,  1062,  1062,
+     659,   660,  1062,   660,   660,   916,    54,   367,   462,   494,
+    1040,  1040,   660,  1340,  1210,   987,  1640,    66,   384,    66,
+    1213,  1148,  1410,  1401,  1013,   914,   659,   925,   926,   927,
+     326,   923,   926,  1531,  1531,   934,   660,   661,   956,    50,
+      50,   659,   659,  1213,   660,   661,  1682,   141,   779,   198,
+     151,  1640,   660,   660,  1062,  1048,   660,  1049,  1050,   660,
+       5,   132,   370,   377,   377,   660,   660,   384,   384,  1492,
+     660,   661,   326,   929,   930,  1216,   935,  1536,   933,  1305,
+    1307,  1208,  1350,   726,  1207,   721,  1035,  1048,   660,  1048,
+     603,   136,   405,   623,   982,   475,  1503,   926,   661,   928,
+     936,   660,   660,  1683,  1674,  1048,  1040,  1040,    83,   598,
+     983,   984,   985,   233,  1497,   930,   660,   779,   157,  1531,
+     264,   985,    50,  1500,   477,  1513,   237,  1504,  1675,   371,
+     659,  1506,   779,   280,   475,  1505,   660,   666,  1507,  1508,
+    1524,   494,  1509,  1536,   660,   661,  1510,  1511,  1524,  1508,
+     661,  1395,  1511,  1207,  1401,  1208
 };
 
   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const yytype_uint16 yyr1[] =
 {
-       0,   667,   668,   669,   668,   668,   670,   670,   671,   671,
-     671,   672,   672,   672,   672,   672,   672,   672,   672,   672,
-     672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
-     672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
-     672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
-     672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
-     672,   672,   672,   672,   672,   672,   672,   673,   674,   674,
-     675,   676,   676,   678,   677,   679,   679,   680,   680,   681,
-     683,   682,   685,   684,   686,   686,   687,   687,   687,   687,
-     687,   687,   687,   687,   687,   687,   687,   687,   687,   687,
-     687,   687,   687,   687,   687,   688,   688,   688,   689,   690,
-     690,   690,   691,   692,   692,   692,   693,   694,   694,   694,
-     694,   694,   694,   694,   695,   695,   696,   698,   697,   699,
-     697,   700,   697,   701,   697,   702,   697,   703,   697,   697,
-     697,   697,   697,   704,   697,   706,   705,   707,   707,   708,
-     708,   708,   708,   708,   708,   708,   710,   709,   712,   711,
-     711,   713,   713,   713,   713,   714,   714,   715,   715,   716,
-     716,   717,   718,   718,   720,   719,   721,   722,   722,   723,
-     723,   724,   724,   725,   725,   725,   725,   725,   725,   725,
-     726,   726,   727,   727,   729,   728,   730,   730,   731,   731,
-     732,   732,   733,   733,   734,   734,   736,   735,   737,   737,
-     738,   738,   739,   740,   740,   740,   740,   741,   741,   742,
-     742,   743,   743,   745,   744,   744,   746,   744,   744,   748,
-     747,   749,   749,   750,   750,   751,   752,   752,   753,   754,
-     754,   755,   755,   755,   755,   755,   756,   757,   757,   758,
-     758,   759,   759,   760,   760,   761,   761,   761,   762,   762,
-     762,   762,   762,   762,   762,   762,   762,   762,   762,   762,
-     763,   764,   765,   765,   766,   766,   767,   767,   768,   769,
-     769,   770,   770,   771,   772,   772,   773,   774,   774,   774,
-     774,   774,   774,   774,   774,   774,   774,   774,   774,   774,
-     775,   775,   776,   776,   777,   777,   777,   777,   777,   777,
-     777,   777,   777,   777,   777,   778,   778,   778,   778,   780,
-     779,   782,   781,   784,   783,   785,   786,   787,   789,   788,
-     790,   791,   791,   791,   792,   792,   794,   795,   796,   793,
-     797,   797,   797,   799,   798,   801,   802,   800,   800,   803,
-     803,   804,   804,   806,   807,   805,   809,   810,   808,   811,
-     811,   812,   812,   814,   813,   816,   815,   818,   817,   820,
-     819,   821,   823,   822,   825,   824,   826,   827,   829,   828,
-     830,   828,   831,   828,   833,   832,   834,   832,   835,   832,
-     836,   836,   837,   837,   837,   838,   839,   840,   841,   841,
-     842,   842,   843,   844,   845,   845,   847,   846,   848,   848,
-     848,   849,   849,   849,   850,   851,   851,   851,   852,   852,
-     852,   852,   852,   852,   852,   852,   853,   854,   854,   854,
-     855,   855,   855,   855,   855,   856,   857,   857,   857,   858,
-     858,   858,   858,   858,   858,   858,   859,   860,   860,   860,
-     861,   861,   861,   862,   863,   864,   865,   866,   867,   867,
-     867,   868,   869,   870,   871,   872,   873,   874,   875,   876,
-     877,   877,   878,   878,   879,   879,   881,   880,   880,   882,
-     880,   880,   883,   883,   884,   885,   884,   886,   884,   887,
-     888,   888,   890,   889,   891,   893,   892,   894,   895,   896,
-     895,   895,   895,   895,   895,   897,   897,   898,   898,   899,
-     899,   900,   900,   901,   902,   903,   904,   905,   905,   906,
-     907,   906,   908,   906,   909,   909,   910,   911,   912,   912,
-     913,   913,   914,   914,   916,   915,   917,   918,   919,   918,
-     920,   918,   921,   921,   922,   922,   923,   923,   925,   926,
-     924,   927,   927,   928,   928,   929,   929,   930,   930,   932,
-     931,   933,   934,   934,   935,   935,   936,   936,   936,   936,
-     936,   936,   936,   936,   936,   938,   939,   937,   940,   940,
-     941,   941,   942,   942,   943,   943,   944,   944,   945,   945,
-     946,   946,   947,   947,   948,   948,   949,   949,   949,   950,
-     950,   950,   950,   950,   950,   950,   950,   950,   950,   950,
-     950,   950,   950,   950,   950,   950,   950,   950,   950,   951,
-     950,   950,   950,   950,   950,   950,   950,   950,   950,   950,
-     950,   950,   950,   950,   950,   950,   952,   953,   954,   955,
-     956,   956,   956,   956,   956,   956,   956,   957,   957,   957,
-     958,   958,   958,   958,   959,   960,   960,   961,   961,   962,
-     962,   964,   963,   965,   963,   966,   963,   967,   963,   968,
-     963,   969,   963,   970,   963,   963,   971,   971,   972,   973,
-     973,   974,   976,   977,   975,   978,   978,   979,   979,   980,
-     980,   980,   981,   981,   982,   982,   983,   983,   983,   984,
-     985,   986,   986,   986,   986,   986,   986,   986,   986,   986,
-     986,   986,   986,   986,   986,   986,   986,   986,   986,   986,
-     986,   986,   986,   986,   986,   986,   986,   986,   986,   986,
-     986,   986,   986,   986,   986,   986,   986,   986,   986,   986,
-     987,   987,   987,   987,   987,   987,   987,   987,   988,   989,
-     989,   990,   990,   991,   991,   991,   991,   991,   992,   992,
-     992,   992,   992,   993,   993,   993,   994,   994,   995,   995,
-     995,   996,   997,   997,   998,   998,   999,   999,   999,  1000,
-    1000,  1000,  1000,  1001,  1001,  1002,  1002,  1003,  1003,  1004,
-    1004,  1005,  1005,  1005,  1005,  1005,  1005,  1005,  1005,  1005,
-    1005,  1005,  1005,  1005,  1005,  1005,  1006,  1007,  1007,  1008,
-    1008,  1009,  1009,  1010,  1010,  1011,  1011,  1012,  1012,  1013,
-    1013,  1014,  1015,  1015,  1016,  1016,  1017,  1017,  1018,  1018,
-    1018,  1019,  1019,  1019,  1019,  1019,  1020,  1020,  1022,  1021,
-    1023,  1023,  1024,  1025,  1025,  1025,  1025,  1026,  1027,  1028,
-    1028,  1029,  1030,  1030,  1031,  1031,  1032,  1032,  1033,  1034,
-    1034,  1035,  1035,  1036,  1036,  1036,  1036,  1037,  1037,  1037,
-    1037,  1037,  1038,  1038,  1038,  1038,  1038,  1039,  1039,  1040,
-    1040,  1041,  1041,  1042,  1042,  1042,  1043,  1043,  1044,  1045,
-    1046,  1046,  1047,  1047,  1048,  1048,  1049,  1049,  1050,  1050,
-    1051,  1051,  1052,  1052,  1053,  1053,  1053,  1054,  1054,  1055,
-    1055,  1055,  1055,  1055,  1055,  1056,  1056,  1057,  1058,  1058,
-    1059,  1059,  1059,  1060,  1060,  1061,  1061,  1062,  1062,  1063,
-    1063,  1064,  1064,  1066,  1067,  1065,  1068,  1065,  1065,  1069,
-    1065,  1070,  1065,  1071,  1065,  1072,  1065,  1073,  1065,  1065,
-    1065,  1065,  1065,  1074,  1065,  1075,  1075,  1075,  1075,  1076,
-    1076,  1077,  1077,  1078,  1078,  1079,  1079,  1079,  1079,  1079,
-    1079,  1079,  1079,  1079,  1079,  1080,  1079,  1079,  1081,  1079,
-    1082,  1079,  1079,  1079,  1079,  1079,  1083,  1084,  1084,  1086,
-    1085,  1087,  1087,  1087,  1089,  1088,  1090,  1091,  1090,  1092,
-    1092,  1093,  1094,  1094,  1095,  1096,  1096,  1096,  1096,  1096,
-    1096,  1096,  1096,  1096,  1096,  1096,  1096,  1096,  1096,  1096,
-    1096,  1096,  1096,  1096,  1096,  1097,  1097,  1097,  1097,  1097,
-    1098,  1098,  1099,  1099,  1100,  1100,  1101,  1101,  1103,  1102,
-    1104,  1104,  1105,  1105,  1106,  1106,  1107,  1107,  1107,  1108,
-    1108,  1108,  1109,  1109,  1109,  1109,  1111,  1110,  1112,  1110,
-    1110,  1110,  1113,  1114,  1114,  1115,  1115,  1116,  1116,  1116,
-    1118,  1117,  1119,  1119,  1120,  1120,  1120,  1121,  1121,  1121,
-    1122,  1122,  1124,  1123,  1125,  1125,  1125,  1126,  1127,  1126,
-    1129,  1128,  1130,  1130,  1131,  1131,  1132,  1132,  1132,  1133,
-    1133,  1135,  1134,  1136,  1136,  1137,  1138,  1138,  1139,  1139,
-    1140,  1141,  1140,  1142,  1143,  1142,  1144,  1144,  1144,  1145,
-    1145,  1145,  1146,  1146,  1147,  1147,  1148,  1149,  1148,  1151,
-    1150,  1152,  1152,  1153,  1153,  1154,  1154,  1154,  1154,  1154,
-    1154,  1155,  1155,  1157,  1156,  1158,  1158,  1158,  1160,  1159,
-    1159,  1161,  1161,  1162,  1162,  1163,  1165,  1164,  1166,  1166,
-    1167,  1167,  1168,  1169,  1170,  1170,  1172,  1171,  1173,  1173,
-    1174,  1174,  1175,  1176,  1178,  1177,  1180,  1179,  1181,  1181,
-    1182,  1182,  1183,  1184,  1184,  1186,  1185,  1185,  1188,  1187,
-    1187,  1190,  1189,  1191,  1191,  1191,  1193,  1192,  1194,  1195,
-    1196,  1196,  1197,  1197,  1198,  1198,  1199,  1199,  1200,  1200,
-    1200,  1201,  1201,  1201,  1202,  1202,  1202,  1203,  1203,  1204,
-    1205,  1206,  1207,  1207,  1207,  1207,  1207,  1208,  1208,  1208,
-    1209,  1209,  1209,  1210,  1210,  1211,  1211,  1211,  1211,  1211,
-    1211,  1211,  1211,  1211,  1211,  1211,  1212,  1212,  1212,  1212,
-    1212,  1212,  1213,  1213,  1213,  1213,  1213,  1213,  1213,  1213,
+       0,   669,   670,   671,   670,   670,   672,   672,   673,   673,
+     673,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+     674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+     674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+     674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+     674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+     674,   674,   674,   674,   674,   674,   674,   675,   676,   676,
+     677,   678,   678,   680,   679,   681,   681,   682,   682,   683,
+     685,   684,   687,   686,   688,   688,   689,   689,   689,   689,
+     689,   689,   689,   689,   689,   689,   689,   689,   689,   689,
+     689,   689,   689,   689,   689,   690,   690,   690,   691,   692,
+     692,   692,   693,   694,   694,   694,   695,   696,   696,   696,
+     696,   696,   696,   696,   697,   697,   698,   700,   699,   701,
+     699,   702,   699,   703,   699,   704,   699,   705,   699,   699,
+     699,   699,   699,   706,   699,   708,   707,   709,   709,   710,
+     710,   710,   710,   710,   710,   710,   712,   711,   714,   713,
+     713,   715,   715,   715,   715,   716,   716,   717,   717,   718,
+     718,   719,   720,   720,   722,   721,   723,   724,   724,   725,
+     725,   726,   726,   727,   727,   727,   727,   727,   727,   727,
+     728,   728,   729,   729,   731,   730,   732,   732,   733,   733,
+     734,   734,   735,   735,   736,   736,   738,   737,   739,   739,
+     740,   740,   741,   742,   742,   742,   742,   743,   743,   744,
+     744,   745,   745,   747,   746,   746,   748,   746,   746,   750,
+     749,   751,   751,   752,   752,   753,   754,   754,   755,   756,
+     756,   757,   757,   757,   757,   757,   758,   759,   759,   760,
+     760,   761,   761,   762,   762,   763,   763,   763,   764,   764,
+     764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+     765,   766,   767,   767,   768,   768,   769,   769,   770,   771,
+     771,   772,   772,   773,   774,   774,   775,   776,   776,   776,
+     776,   776,   776,   776,   776,   776,   776,   776,   776,   776,
+     777,   777,   778,   778,   779,   779,   779,   779,   779,   779,
+     779,   779,   779,   779,   779,   780,   780,   780,   780,   782,
+     781,   784,   783,   786,   785,   787,   788,   789,   791,   790,
+     792,   793,   793,   793,   794,   794,   796,   797,   798,   795,
+     799,   799,   799,   801,   800,   803,   804,   802,   802,   805,
+     805,   806,   806,   808,   809,   807,   811,   812,   810,   813,
+     813,   814,   814,   816,   815,   818,   817,   820,   819,   822,
+     821,   823,   825,   824,   827,   826,   828,   829,   831,   830,
+     832,   830,   833,   830,   835,   834,   836,   834,   837,   834,
+     838,   838,   839,   839,   839,   840,   841,   842,   843,   843,
+     844,   844,   845,   846,   847,   847,   849,   848,   850,   850,
+     850,   851,   851,   851,   852,   853,   853,   853,   854,   854,
+     854,   854,   854,   854,   854,   854,   855,   856,   856,   856,
+     857,   857,   857,   857,   857,   858,   859,   859,   859,   860,
+     860,   860,   860,   860,   860,   860,   861,   862,   862,   862,
+     863,   863,   863,   864,   865,   866,   867,   868,   869,   869,
+     869,   870,   871,   872,   873,   874,   875,   876,   877,   878,
+     879,   879,   880,   880,   881,   881,   883,   882,   882,   884,
+     882,   882,   885,   885,   886,   887,   886,   888,   886,   889,
+     890,   890,   892,   891,   893,   895,   894,   896,   897,   898,
+     897,   897,   897,   897,   897,   899,   899,   900,   900,   901,
+     901,   902,   902,   903,   904,   905,   906,   907,   907,   908,
+     909,   908,   910,   908,   911,   911,   912,   913,   914,   914,
+     915,   915,   916,   916,   918,   917,   919,   920,   921,   920,
+     922,   920,   923,   923,   924,   924,   925,   925,   927,   928,
+     926,   929,   929,   930,   930,   931,   931,   932,   932,   934,
+     933,   935,   936,   936,   937,   937,   938,   938,   938,   938,
+     938,   938,   938,   938,   938,   940,   941,   939,   942,   942,
+     943,   943,   944,   944,   945,   945,   946,   946,   947,   947,
+     948,   948,   949,   949,   950,   950,   951,   951,   951,   952,
+     952,   952,   952,   952,   952,   952,   952,   952,   952,   952,
+     952,   952,   952,   952,   952,   952,   952,   952,   952,   953,
+     952,   952,   952,   952,   952,   952,   952,   952,   952,   952,
+     952,   952,   952,   952,   952,   952,   954,   955,   956,   957,
+     958,   958,   958,   958,   958,   958,   958,   959,   959,   959,
+     960,   960,   960,   960,   961,   962,   962,   963,   963,   964,
+     964,   966,   965,   967,   965,   968,   965,   969,   965,   970,
+     965,   971,   965,   972,   965,   965,   973,   973,   974,   975,
+     975,   976,   978,   979,   977,   980,   980,   981,   981,   982,
+     982,   982,   983,   983,   984,   984,   985,   985,   985,   986,
+     987,   988,   988,   988,   988,   988,   988,   988,   988,   988,
+     988,   988,   988,   988,   988,   988,   988,   988,   988,   988,
+     988,   988,   988,   988,   988,   988,   988,   988,   988,   988,
+     988,   988,   988,   988,   988,   988,   988,   988,   988,   988,
+     989,   989,   989,   989,   989,   989,   989,   989,   990,   991,
+     991,   992,   992,   993,   993,   993,   993,   993,   994,   994,
+     994,   994,   994,   995,   995,   995,   996,   996,   997,   997,
+     997,   998,   999,   999,  1000,  1000,  1001,  1001,  1001,  1002,
+    1002,  1002,  1002,  1003,  1003,  1004,  1004,  1005,  1005,  1006,
+    1006,  1007,  1007,  1007,  1007,  1007,  1007,  1007,  1007,  1007,
+    1007,  1007,  1007,  1007,  1007,  1007,  1008,  1009,  1009,  1010,
+    1010,  1011,  1011,  1012,  1012,  1013,  1013,  1014,  1014,  1015,
+    1015,  1016,  1017,  1017,  1018,  1018,  1019,  1019,  1020,  1020,
+    1020,  1021,  1021,  1021,  1021,  1021,  1022,  1022,  1024,  1023,
+    1025,  1025,  1026,  1027,  1027,  1027,  1027,  1028,  1029,  1030,
+    1030,  1031,  1032,  1032,  1033,  1033,  1034,  1034,  1035,  1036,
+    1036,  1037,  1037,  1038,  1038,  1038,  1038,  1039,  1039,  1039,
+    1039,  1039,  1040,  1040,  1040,  1040,  1040,  1041,  1041,  1042,
+    1042,  1043,  1043,  1044,  1044,  1044,  1045,  1045,  1046,  1047,
+    1048,  1048,  1049,  1049,  1050,  1050,  1051,  1051,  1052,  1052,
+    1053,  1053,  1054,  1054,  1055,  1055,  1055,  1056,  1056,  1057,
+    1057,  1057,  1057,  1057,  1057,  1058,  1058,  1059,  1060,  1060,
+    1061,  1061,  1061,  1062,  1062,  1063,  1063,  1064,  1064,  1065,
+    1065,  1066,  1066,  1068,  1069,  1067,  1070,  1067,  1067,  1071,
+    1067,  1072,  1067,  1073,  1067,  1074,  1067,  1075,  1067,  1067,
+    1067,  1067,  1067,  1076,  1067,  1077,  1077,  1077,  1077,  1078,
+    1078,  1079,  1079,  1080,  1080,  1081,  1081,  1081,  1081,  1081,
+    1081,  1081,  1081,  1081,  1081,  1082,  1081,  1081,  1083,  1081,
+    1084,  1081,  1081,  1081,  1081,  1081,  1085,  1086,  1086,  1088,
+    1087,  1089,  1089,  1089,  1091,  1090,  1092,  1093,  1092,  1094,
+    1094,  1095,  1096,  1096,  1097,  1098,  1098,  1098,  1098,  1098,
+    1098,  1098,  1098,  1098,  1098,  1098,  1098,  1098,  1098,  1098,
+    1098,  1098,  1098,  1098,  1098,  1099,  1099,  1099,  1099,  1099,
+    1100,  1100,  1101,  1101,  1102,  1102,  1103,  1103,  1105,  1104,
+    1106,  1106,  1107,  1107,  1108,  1108,  1109,  1109,  1109,  1110,
+    1110,  1110,  1111,  1111,  1111,  1111,  1113,  1112,  1114,  1112,
+    1112,  1112,  1115,  1116,  1116,  1117,  1117,  1118,  1118,  1118,
+    1120,  1119,  1121,  1121,  1122,  1122,  1122,  1123,  1123,  1123,
+    1124,  1124,  1126,  1125,  1127,  1127,  1127,  1128,  1129,  1128,
+    1131,  1130,  1132,  1132,  1133,  1133,  1134,  1134,  1134,  1135,
+    1135,  1137,  1136,  1138,  1138,  1139,  1140,  1140,  1141,  1141,
+    1142,  1143,  1142,  1144,  1145,  1144,  1146,  1146,  1146,  1147,
+    1147,  1147,  1148,  1148,  1149,  1149,  1150,  1151,  1150,  1153,
+    1152,  1154,  1154,  1155,  1155,  1156,  1156,  1156,  1156,  1156,
+    1156,  1157,  1157,  1159,  1158,  1160,  1160,  1160,  1162,  1161,
+    1161,  1163,  1163,  1164,  1164,  1165,  1167,  1166,  1168,  1168,
+    1169,  1169,  1170,  1171,  1172,  1172,  1174,  1173,  1175,  1175,
+    1176,  1176,  1177,  1178,  1180,  1179,  1182,  1181,  1183,  1183,
+    1184,  1184,  1185,  1186,  1186,  1188,  1187,  1187,  1190,  1189,
+    1189,  1192,  1191,  1193,  1193,  1193,  1195,  1194,  1196,  1197,
+    1198,  1198,  1199,  1199,  1200,  1200,  1201,  1201,  1202,  1202,
+    1202,  1203,  1203,  1203,  1204,  1204,  1204,  1205,  1205,  1206,
+    1207,  1208,  1209,  1209,  1209,  1209,  1209,  1210,  1210,  1210,
+    1211,  1211,  1211,  1212,  1212,  1213,  1213,  1213,  1213,  1213,
     1213,  1213,  1213,  1213,  1213,  1213,  1214,  1214,  1214,  1214,
-    1214,  1214,  1214,  1214,  1214,  1214,  1214,  1214,  1214,  1214,
-    1214,  1215,  1215,  1216,  1216,  1217,  1217,  1218,  1218,  1219,
-    1219,  1219,  1219,  1219,  1219,  1220,  1220,  1221,  1221,  1222,
-    1222,  1222,  1222,  1222,  1222,  1223,  1222,  1222,  1222,  1222,
-    1222,  1224,  1225,  1225,  1226,  1226,  1226,  1226,  1226,  1226,
-    1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,
-    1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,  1226,
-    1226,  1226,  1226,  1226,  1227,  1227,  1227,  1227,  1227,  1227,
-    1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,
-    1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,  1227,
-    1227,  1227,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,
+    1214,  1214,  1215,  1215,  1215,  1215,  1215,  1215,  1215,  1215,
+    1215,  1215,  1215,  1215,  1215,  1215,  1216,  1216,  1216,  1216,
+    1216,  1216,  1216,  1216,  1216,  1216,  1216,  1216,  1216,  1216,
+    1216,  1217,  1217,  1218,  1218,  1219,  1219,  1220,  1220,  1221,
+    1221,  1221,  1221,  1221,  1221,  1222,  1222,  1223,  1223,  1224,
+    1224,  1224,  1224,  1224,  1224,  1225,  1224,  1224,  1224,  1224,
+    1224,  1226,  1227,  1227,  1228,  1228,  1228,  1228,  1228,  1228,
+    1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,
     1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,
-    1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1228,  1229,
+    1228,  1228,  1228,  1228,  1229,  1229,  1229,  1229,  1229,  1229,
     1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,
     1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,
-    1229,  1229,  1229,  1229,  1229,  1230,  1230,  1230,  1230,  1230,
-    1230,  1230,  1230,  1232,  1231,  1231,  1233,  1233,  1234,  1234,
-    1235,  1235,  1236,  1236,  1237,  1237,  1238,  1239,  1239,  1239,
-    1239,  1239,  1239,  1239,  1240,  1241,  1239,  1239,  1239,  1239,
-    1239,  1239,  1239,  1239,  1239,  1239,  1239,  1242,  1239,  1244,
-    1243,  1245,  1245,  1245,  1246,  1246,  1247,  1247,  1248,  1249,
-    1248,  1250,  1250,  1252,  1251,  1253,  1254,  1253,  1253,  1253,
-    1253,  1253,  1253,  1253,  1253,  1253,  1253,  1253,  1255,  1253,
-    1256,  1256,  1257,  1257,  1258,  1258,  1259,  1259,  1260,  1260,
-    1261,  1261,  1262,  1262,  1263,  1263,  1264,  1265,  1265,  1266,
-    1266,  1267,  1268,  1267,  1269,  1267,  1267,  1270,  1267,  1271,
-    1267,  1267,  1272,  1267,  1273,  1267,  1267,  1274,  1274,  1274,
-    1275,  1275,  1276,  1276,  1277,  1279,  1278,  1278,  1278,  1280,
-    1281,  1280,  1282,  1284,  1283,  1286,  1285,  1288,  1289,  1287,
-    1290,  1291,  1292,  1292,  1293,  1293,  1293,  1293,  1294,  1294,
-    1296,  1295,  1297,  1295,  1298,  1298,  1299,  1300,  1299,  1302,
-    1301,  1303,  1303,  1304,  1304,  1305,  1305,  1306,  1306,  1307,
-    1307,  1307,  1307,  1307,  1307,  1307,  1307,  1307,  1307,  1307,
-    1307,  1308,  1308,  1308,  1308,  1308,  1308,  1308,  1308,  1308,
-    1309,  1309,  1309,  1309,  1310,  1310,  1310,  1311,  1311,  1312,
-    1312,  1313,  1314,  1313,  1315,  1316,  1315,  1317,  1317,  1318,
-    1318,  1319,  1319,  1320,  1320,  1320,  1321,  1322,  1322,  1323,
-    1324,  1324,  1326,  1325,  1327,  1327,  1328,  1328,  1328,  1329,
-    1329,  1330,  1331,  1331,  1331,  1332,  1332,  1332,  1333,  1333,
-    1333,  1333,  1333,  1334,  1335,  1335,  1335,  1335,  1336,  1336,
-    1336,  1337,  1337,  1337,  1337,  1337,  1337,  1338,  1338,  1338,
-    1338,  1338,  1339,  1339,  1339,  1339,  1339,  1340,  1340,  1340,
-    1340,  1340,  1341,  1342,  1342,  1343,  1343,  1344,  1345,  1344,
-    1346,  1346,  1347,  1347,  1348,  1350,  1349,  1351,  1351,  1352,
-    1353,  1353,  1354,  1354,  1356,  1355,  1358,  1359,  1357,  1357,
-    1357,  1361,  1360,  1363,  1362,  1364,  1362,  1362,  1362,  1362,
-    1362,  1362,  1362,  1365,  1362,  1362,  1362,  1362,  1362,  1362,
-    1366,  1366,  1367,  1368,  1369,  1369,  1370,  1371,  1371,  1372,
-    1372,  1373,  1373,  1375,  1376,  1374,  1378,  1379,  1377,  1380,
-    1380,  1380,  1380,  1381,  1381,  1382,  1382,  1383,  1384,  1384,
-    1384,  1385,  1384,  1386,  1386,  1387,  1387,  1388,  1387,  1389,
-    1387,  1390,  1390,  1391,  1391,  1392,  1393,  1393,  1394,  1394,
-    1396,  1395,  1397,  1397,  1398,  1398,  1399,  1399,  1400,  1401,
-    1400,  1403,  1404,  1402,  1405,  1405,  1406,  1407,  1407,  1408,
-    1409,  1409,  1411,  1410,  1413,  1414,  1412,  1415,  1412,  1416,
-    1412,  1417,  1417,  1418,  1418,  1419,  1419,  1420,  1420,  1421,
-    1421,  1422,  1422,  1422,  1424,  1423,  1425,  1425,  1426,  1426,
-    1427,  1427,  1428,  1428,  1428,  1428,  1428,  1428,  1428,  1428,
-    1428,  1429,  1429,  1431,  1430,  1432,  1432,  1432,  1432,  1432,
-    1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1433,
-    1432,  1434,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,
-    1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,
-    1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,
-    1432,  1432,  1432,  1432,  1432,  1432,  1432,  1432,  1435,  1435,
-    1435,  1436,  1436,  1437,  1437,  1438,  1438,  1439,  1439,  1440,
-    1440,  1441,  1441,  1442,  1442,  1443,  1443,  1443,  1445,  1444,
-    1446,  1444,  1447,  1447,  1447,  1447,  1447,  1448,  1448,  1449,
-    1450,  1450,  1450,  1451,  1451,  1452,  1452,  1452,  1454,  1453,
-    1456,  1455,  1455,  1457,  1457,  1458,  1459,  1458,  1460,  1460,
-    1461,  1461,  1461,  1461,  1461,  1461,  1461,  1461,  1461,  1461,
-    1461,  1461,  1461,  1461,  1461,  1461,  1462,  1462,  1463,  1463,
-    1464,  1464,  1464,  1465,  1466,  1466,  1468,  1467,  1469,  1469,
-    1471,  1470,  1472,  1470,  1470,  1473,  1473,  1474,  1474,  1476,
-    1475,  1477,  1478,  1478,  1480,  1479,  1481,  1481,  1481,  1482,
-    1482,  1482,  1482,  1483,  1483,  1484,  1485,  1487,  1488,  1489,
-    1490,  1486,  1491,  1491,  1492,  1492,  1493,  1493,  1493,  1494,
-    1494,  1494,  1495,  1495,  1496,  1496,  1497,  1497,  1497,  1497,
-    1498,  1498,  1499,  1499,  1500,  1500,  1501,  1501,  1502,  1502,
-    1503,  1503,  1504,  1504,  1504,  1505,  1505,  1506,  1506,  1507,
-    1507,  1508,  1508,  1509,  1510,  1510,  1510,  1510,  1511,  1511,
-    1512,  1512,  1512,  1513,  1514,  1514,  1514,  1515,  1515,  1515,
-    1515,  1515,  1515,  1515,  1515,  1515,  1515,  1516,  1516,  1516,
-    1516,  1516,  1517,  1517,  1517,  1518,  1518,  1519,  1519,  1520,
-    1521,  1521,  1522,  1522,  1523,  1523,  1523,  1524,  1524,  1524,
-    1524,  1525,  1525,  1525,  1526,  1526,  1527,  1528,  1528,  1529,
-    1530,  1531,  1532,  1532,  1533,  1533,  1534,  1534,  1534,  1535,
-    1535,  1535,  1536,  1536,  1537,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,  1538,
-    1538,  1538,  1538,  1538,  1538,  1538,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,  1539,
-    1539,  1539,  1539,  1539,  1539,  1541,  1540,  1542,  1543,  1540,
-    1544,  1544,  1546,  1545,  1547,  1545,  1548,  1545,  1550,  1549,
-    1549,  1551,  1551,  1553,  1552,  1554,  1552,  1556,  1555,  1555,
-    1557,  1557,  1557,  1558,  1558,  1558,  1558,  1559,  1559,  1559,
-    1559,  1560,  1561,  1561,  1561,  1561,  1561,  1561,  1561,  1561,
-    1561,  1561,  1562,  1562,  1562,  1563,  1563,  1563,  1563,  1564,
-    1565,  1566,  1566,  1567,  1567,  1567,  1567,  1568,  1568,  1569,
-    1569,  1569,  1570,  1570,  1570,  1570,  1570,  1572,  1571,  1573,
-    1573,  1574,  1574,  1575,  1576,  1576,  1576,  1576,  1576,  1578,
-    1577,  1579,  1579,  1580,  1579,  1581,  1581,  1582,  1582,  1583,
-    1583,  1583,  1583,  1584,  1583,  1585,  1585,  1585,  1585,  1585,
-    1586,  1587,  1587,  1587,  1587,  1587,  1587,  1588,  1588,  1589,
-    1590,  1590,  1590,  1590,  1590,  1591,  1591,  1592,  1592,  1593,
-    1593,  1594,  1595,  1595,  1596,  1596,  1597,  1597,  1598,  1598,
-    1599,  1599,  1601,  1600,  1602,  1600,  1603,  1600,  1604,  1600,
-    1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,
-    1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,  1600,
-    1600,  1600,  1600,  1600,  1600,  1600,  1605,  1605,  1606,  1606,
-    1607,  1607,  1607,  1608,  1608,  1608,  1608,  1609,  1609,  1610,
-    1610,  1611,  1611,  1612,  1612,  1613,  1613,  1614,  1614,  1614,
-    1614,  1614,  1615,  1615,  1616,  1616,  1617,  1618,  1618,  1618,
-    1618,  1618,  1619,  1619,  1620,  1620,  1621,  1621,  1622,  1622,
-    1622,  1622,  1622,  1622,  1624,  1623,  1625,  1626,  1626,  1627,
-    1627,  1628,  1628,  1628,  1629,  1629,  1629,  1630,  1630,  1631,
-    1632,  1632,  1633,  1634,  1635,  1635,  1637,  1636,  1638,  1638,
-    1639,  1639,  1641,  1640,  1642,  1642,  1643,  1643,  1643,  1644,
-    1644,  1645,  1646,  1645,  1647,  1648,  1649,  1650,  1650,  1651,
-    1651,  1652,  1652,  1652,  1652,  1652,  1652,  1652,  1652,  1653,
-    1653,  1653,  1654,  1654,  1654,  1654,  1654,  1655,  1655,  1655,
-    1655,  1655,  1655,  1656,  1656,  1657,  1658,  1659,  1659,  1659,
-    1660,  1660,  1660,  1662,  1661,  1663,  1663,  1664,  1664,  1666,
-    1665,  1667,  1667,  1668,  1668,  1668,  1668,  1670,  1671,  1672,
-    1673,  1669,  1674,  1674,  1675,  1677,  1678,  1679,  1680,  1681,
-    1676,  1683,  1684,  1685,  1686,  1682,  1687,  1687,  1687,  1687,
-    1687,  1687,  1688,  1688,  1688,  1689,  1689,  1690,  1690,  1690,
-    1691,  1691,  1692,  1693,  1692,  1694,  1694,  1695,  1695,  1696,
-    1696,  1697
+    1229,  1229,  1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,
+    1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,
+    1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,  1230,  1231,
+    1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,
+    1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,  1231,
+    1231,  1231,  1231,  1231,  1231,  1232,  1232,  1232,  1232,  1232,
+    1232,  1232,  1232,  1234,  1233,  1233,  1235,  1235,  1236,  1236,
+    1237,  1237,  1238,  1238,  1239,  1239,  1240,  1241,  1241,  1241,
+    1241,  1241,  1241,  1241,  1242,  1243,  1241,  1241,  1241,  1241,
+    1241,  1241,  1241,  1241,  1241,  1241,  1241,  1244,  1241,  1246,
+    1245,  1247,  1247,  1247,  1248,  1248,  1249,  1249,  1250,  1251,
+    1250,  1252,  1252,  1254,  1253,  1255,  1256,  1255,  1255,  1255,
+    1255,  1255,  1255,  1255,  1255,  1255,  1255,  1255,  1257,  1255,
+    1258,  1258,  1259,  1259,  1260,  1260,  1261,  1261,  1262,  1262,
+    1263,  1263,  1264,  1264,  1265,  1265,  1266,  1267,  1267,  1268,
+    1268,  1269,  1270,  1269,  1271,  1269,  1269,  1272,  1269,  1273,
+    1269,  1269,  1274,  1269,  1275,  1269,  1269,  1276,  1276,  1276,
+    1277,  1277,  1278,  1278,  1279,  1281,  1280,  1280,  1280,  1282,
+    1283,  1282,  1284,  1286,  1285,  1288,  1287,  1290,  1291,  1289,
+    1292,  1293,  1294,  1294,  1295,  1295,  1295,  1295,  1296,  1296,
+    1298,  1297,  1299,  1297,  1300,  1300,  1301,  1302,  1301,  1304,
+    1303,  1305,  1305,  1306,  1306,  1307,  1307,  1308,  1308,  1309,
+    1309,  1309,  1309,  1309,  1309,  1309,  1309,  1309,  1309,  1309,
+    1309,  1310,  1310,  1310,  1310,  1310,  1310,  1310,  1310,  1310,
+    1311,  1311,  1311,  1311,  1312,  1312,  1312,  1313,  1313,  1314,
+    1314,  1315,  1316,  1315,  1317,  1318,  1317,  1319,  1319,  1320,
+    1320,  1321,  1321,  1322,  1322,  1322,  1323,  1324,  1324,  1325,
+    1326,  1326,  1328,  1327,  1329,  1329,  1330,  1330,  1330,  1331,
+    1331,  1332,  1333,  1333,  1333,  1334,  1334,  1334,  1335,  1335,
+    1335,  1335,  1335,  1336,  1337,  1337,  1337,  1337,  1338,  1338,
+    1338,  1339,  1339,  1339,  1339,  1339,  1339,  1340,  1340,  1340,
+    1340,  1340,  1341,  1341,  1341,  1341,  1341,  1342,  1342,  1342,
+    1342,  1342,  1343,  1344,  1344,  1345,  1345,  1346,  1347,  1346,
+    1348,  1348,  1349,  1349,  1350,  1352,  1351,  1353,  1353,  1354,
+    1355,  1355,  1356,  1356,  1358,  1357,  1360,  1361,  1359,  1359,
+    1359,  1363,  1362,  1365,  1364,  1366,  1364,  1364,  1364,  1364,
+    1364,  1364,  1364,  1367,  1364,  1364,  1364,  1364,  1364,  1364,
+    1368,  1368,  1369,  1370,  1371,  1371,  1372,  1373,  1373,  1374,
+    1374,  1375,  1375,  1377,  1378,  1376,  1380,  1381,  1379,  1382,
+    1382,  1382,  1382,  1383,  1383,  1384,  1384,  1385,  1386,  1386,
+    1386,  1387,  1386,  1388,  1388,  1389,  1389,  1390,  1389,  1391,
+    1389,  1392,  1392,  1393,  1393,  1394,  1395,  1395,  1396,  1396,
+    1398,  1397,  1399,  1399,  1400,  1400,  1401,  1401,  1402,  1403,
+    1402,  1405,  1406,  1404,  1407,  1407,  1408,  1409,  1409,  1410,
+    1411,  1411,  1413,  1412,  1415,  1416,  1414,  1417,  1414,  1418,
+    1414,  1419,  1419,  1420,  1420,  1421,  1421,  1422,  1422,  1423,
+    1423,  1424,  1424,  1424,  1426,  1425,  1427,  1427,  1428,  1428,
+    1429,  1429,  1430,  1430,  1430,  1430,  1430,  1430,  1430,  1430,
+    1430,  1431,  1431,  1433,  1432,  1434,  1434,  1434,  1434,  1434,
+    1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1435,
+    1434,  1436,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,
+    1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,
+    1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,
+    1434,  1434,  1434,  1434,  1434,  1434,  1434,  1434,  1437,  1437,
+    1437,  1438,  1438,  1439,  1439,  1440,  1440,  1441,  1441,  1442,
+    1442,  1443,  1443,  1444,  1444,  1445,  1445,  1445,  1447,  1446,
+    1448,  1446,  1449,  1449,  1449,  1449,  1449,  1450,  1450,  1451,
+    1452,  1452,  1452,  1453,  1453,  1454,  1454,  1454,  1456,  1455,
+    1458,  1457,  1457,  1459,  1459,  1460,  1461,  1460,  1462,  1462,
+    1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,
+    1463,  1463,  1463,  1463,  1463,  1463,  1464,  1464,  1465,  1465,
+    1466,  1466,  1466,  1467,  1468,  1468,  1470,  1469,  1471,  1471,
+    1473,  1472,  1474,  1472,  1472,  1475,  1475,  1476,  1476,  1478,
+    1477,  1479,  1480,  1480,  1482,  1481,  1483,  1483,  1483,  1484,
+    1484,  1484,  1484,  1485,  1485,  1486,  1487,  1489,  1490,  1491,
+    1492,  1488,  1493,  1493,  1494,  1494,  1495,  1495,  1495,  1496,
+    1496,  1496,  1497,  1497,  1498,  1498,  1499,  1499,  1499,  1499,
+    1500,  1500,  1501,  1501,  1502,  1502,  1503,  1503,  1504,  1504,
+    1505,  1505,  1506,  1506,  1506,  1507,  1507,  1508,  1508,  1509,
+    1509,  1510,  1510,  1511,  1512,  1512,  1512,  1512,  1513,  1513,
+    1514,  1514,  1514,  1515,  1516,  1516,  1516,  1517,  1517,  1517,
+    1517,  1517,  1517,  1517,  1517,  1517,  1517,  1518,  1518,  1518,
+    1518,  1518,  1519,  1519,  1519,  1520,  1520,  1521,  1521,  1522,
+    1523,  1523,  1524,  1524,  1525,  1525,  1525,  1526,  1526,  1526,
+    1526,  1527,  1527,  1527,  1528,  1528,  1529,  1530,  1530,  1531,
+    1532,  1533,  1534,  1534,  1535,  1535,  1536,  1536,  1536,  1537,
+    1537,  1537,  1538,  1538,  1539,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,  1540,
+    1540,  1540,  1540,  1540,  1540,  1540,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,  1541,
+    1541,  1541,  1541,  1541,  1541,  1543,  1542,  1544,  1545,  1542,
+    1546,  1546,  1548,  1547,  1549,  1547,  1550,  1547,  1552,  1551,
+    1551,  1553,  1553,  1555,  1554,  1556,  1554,  1558,  1557,  1557,
+    1559,  1559,  1559,  1560,  1560,  1560,  1560,  1561,  1561,  1561,
+    1561,  1562,  1563,  1563,  1563,  1563,  1563,  1563,  1563,  1563,
+    1563,  1563,  1564,  1564,  1564,  1565,  1565,  1565,  1565,  1566,
+    1567,  1568,  1568,  1569,  1569,  1569,  1569,  1570,  1570,  1571,
+    1571,  1571,  1572,  1572,  1572,  1572,  1572,  1574,  1573,  1575,
+    1575,  1576,  1576,  1577,  1578,  1578,  1578,  1578,  1578,  1580,
+    1579,  1581,  1581,  1582,  1581,  1583,  1583,  1584,  1584,  1585,
+    1585,  1585,  1585,  1586,  1585,  1587,  1587,  1587,  1587,  1587,
+    1588,  1589,  1589,  1589,  1589,  1589,  1589,  1590,  1590,  1591,
+    1592,  1592,  1592,  1592,  1592,  1593,  1593,  1594,  1594,  1595,
+    1595,  1596,  1597,  1597,  1598,  1598,  1599,  1599,  1600,  1600,
+    1601,  1601,  1603,  1602,  1604,  1602,  1605,  1602,  1606,  1602,
+    1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,
+    1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,  1602,
+    1602,  1602,  1602,  1602,  1602,  1602,  1607,  1607,  1608,  1608,
+    1609,  1609,  1609,  1610,  1610,  1610,  1610,  1611,  1611,  1612,
+    1612,  1613,  1613,  1614,  1614,  1615,  1615,  1616,  1616,  1616,
+    1616,  1616,  1617,  1617,  1618,  1618,  1619,  1620,  1620,  1620,
+    1620,  1620,  1621,  1621,  1622,  1622,  1623,  1623,  1624,  1624,
+    1624,  1624,  1624,  1624,  1626,  1625,  1627,  1628,  1628,  1629,
+    1629,  1630,  1630,  1630,  1631,  1631,  1631,  1632,  1632,  1633,
+    1634,  1634,  1635,  1636,  1637,  1637,  1639,  1638,  1640,  1640,
+    1641,  1641,  1643,  1642,  1644,  1644,  1645,  1645,  1645,  1646,
+    1646,  1647,  1648,  1647,  1649,  1650,  1651,  1652,  1652,  1653,
+    1653,  1654,  1654,  1654,  1654,  1654,  1654,  1654,  1654,  1655,
+    1655,  1655,  1656,  1656,  1656,  1656,  1656,  1657,  1657,  1657,
+    1657,  1657,  1657,  1658,  1658,  1659,  1660,  1661,  1661,  1661,
+    1662,  1662,  1662,  1664,  1663,  1665,  1665,  1666,  1666,  1668,
+    1667,  1669,  1669,  1670,  1670,  1670,  1670,  1672,  1673,  1674,
+    1675,  1671,  1676,  1676,  1677,  1679,  1680,  1681,  1682,  1683,
+    1678,  1685,  1686,  1687,  1688,  1684,  1689,  1689,  1689,  1689,
+    1689,  1689,  1690,  1690,  1690,  1691,  1691,  1692,  1692,  1692,
+    1693,  1693,  1694,  1695,  1694,  1696,  1696,  1697,  1697,  1698,
+    1698,  1699
 };
 
   /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
@@ -19944,7 +19965,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             thd->lex->sql_command= SQLCOM_EMPTY_QUERY;
             YYLIP->found_semicolon= NULL;
           }
-#line 19948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 19969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 3:
@@ -19971,7 +19992,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               lip->found_semicolon= NULL;
             }
           }
-#line 19975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 19996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 5:
@@ -19980,7 +20001,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Single query, not terminated. */
             YYLIP->found_semicolon= NULL;
           }
-#line 19984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20005 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 67:
@@ -19990,7 +20011,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_DEALLOCATE_PREPARE;
             lex->prepared_stmt_name= (yyvsp[0].lex_str);
           }
-#line 19994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 70:
@@ -20000,7 +20021,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_PREPARE;
             lex->prepared_stmt_name= (yyvsp[-2].lex_str);
           }
-#line 20004 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 71:
@@ -20010,7 +20031,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->prepared_stmt_code= (yyvsp[0].lex_str);
             lex->prepared_stmt_code_is_varref= FALSE;
           }
-#line 20014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20035 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 72:
@@ -20020,7 +20041,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->prepared_stmt_code= (yyvsp[0].lex_str);
             lex->prepared_stmt_code_is_varref= TRUE;
           }
-#line 20024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 73:
@@ -20030,13 +20051,13 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_EXECUTE;
             lex->prepared_stmt_name= (yyvsp[0].lex_str);
           }
-#line 20034 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 74:
 #line 2183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20040 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 79:
@@ -20048,7 +20069,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                                                thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 20052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 80:
@@ -20057,7 +20078,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->sphead)
               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HELP"));
           }
-#line 20061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20082 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 81:
@@ -20067,7 +20088,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_HELP;
             lex->help_arg= (yyvsp[0].lex_str).str;
           }
-#line 20071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 82:
@@ -20075,13 +20096,13 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->sql_command = SQLCOM_CHANGE_MASTER;
           }
-#line 20079 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20100 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 83:
 #line 2231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 86:
@@ -20089,7 +20110,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.host = (yyvsp[0].lex_str).str;
           }
-#line 20093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 87:
@@ -20097,7 +20118,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.user = (yyvsp[0].lex_str).str;
           }
-#line 20101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 88:
@@ -20105,7 +20126,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.password = (yyvsp[0].lex_str).str;
           }
-#line 20109 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20130 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 89:
@@ -20113,7 +20134,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.port = (yyvsp[0].ulong_num);
           }
-#line 20117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 90:
@@ -20121,7 +20142,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.connect_retry = (yyvsp[0].ulong_num);
           }
-#line 20125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 91:
@@ -20130,7 +20151,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->mi.ssl= (yyvsp[0].ulong_num) ? 
               LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
           }
-#line 20134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 92:
@@ -20138,7 +20159,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_ca= (yyvsp[0].lex_str).str;
           }
-#line 20142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20163 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 93:
@@ -20146,7 +20167,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_capath= (yyvsp[0].lex_str).str;
           }
-#line 20150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 94:
@@ -20154,7 +20175,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_cert= (yyvsp[0].lex_str).str;
           }
-#line 20158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 95:
@@ -20162,7 +20183,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_cipher= (yyvsp[0].lex_str).str;
           }
-#line 20166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20187 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 96:
@@ -20170,7 +20191,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_key= (yyvsp[0].lex_str).str;
           }
-#line 20174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20195 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 97:
@@ -20179,7 +20200,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->mi.ssl_verify_server_cert= (yyvsp[0].ulong_num) ?
               LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
           }
-#line 20183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 98:
@@ -20187,7 +20208,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_crl= (yyvsp[0].lex_str).str;
           }
-#line 20191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 99:
@@ -20195,7 +20216,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.ssl_crlpath= (yyvsp[0].lex_str).str;
           }
-#line 20199 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 100:
@@ -20226,7 +20247,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             Lex->mi.heartbeat_opt=  LEX_MASTER_INFO::LEX_MI_ENABLE;
           }
-#line 20230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 101:
@@ -20234,7 +20255,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.repl_ignore_server_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
            }
-#line 20238 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20259 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 102:
@@ -20242,7 +20263,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.repl_do_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
           }
-#line 20246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 103:
@@ -20250,7 +20271,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.repl_ignore_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
           }
-#line 20254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 108:
@@ -20258,7 +20279,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             insert_dynamic(&Lex->mi.repl_ignore_server_ids, (uchar*) &((yyvsp[0].ulong_num)));
           }
-#line 20262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 112:
@@ -20266,7 +20287,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             insert_dynamic(&Lex->mi.repl_do_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
           }
-#line 20270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 116:
@@ -20274,7 +20295,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             insert_dynamic(&Lex->mi.repl_ignore_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
           }
-#line 20278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 117:
@@ -20282,7 +20303,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.log_file_name = (yyvsp[0].lex_str).str;
           }
-#line 20286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20307 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 118:
@@ -20301,7 +20322,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->mi.pos= MY_MAX(BIN_LOG_HEADER_SIZE, (yyvsp[0].ulonglong_number));
           }
-#line 20305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 119:
@@ -20309,7 +20330,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
     {
             Lex->mi.relay_log_name = (yyvsp[0].lex_str).str;
           }
-#line 20313 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20334 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 120:
@@ -20319,7 +20340,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
             Lex->mi.relay_log_pos= MY_MAX(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos);
           }
-#line 20323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 121:
@@ -20329,7 +20350,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_CURRENT_POS;
           }
-#line 20333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 122:
@@ -20339,7 +20360,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_SLAVE_POS;
           }
-#line 20343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 123:
@@ -20349,7 +20370,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_NO;
           }
-#line 20353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 124:
@@ -20358,7 +20379,7 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             LEX *lex= thd->lex;
             lex->mi.connection_name= null_lex_str;
           }
-#line 20362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 126:
@@ -20370,13 +20391,15 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_WRONG_ARGUMENTS, MYF(0), "MASTER_CONNECTION_NAME"));
 #endif
          }
-#line 20374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 127:
 #line 2455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
+            if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_table()))
+              MYSQL_YYABORT;
             lex->create_info.init();
             if (lex->set_command_with_check(SQLCOM_CREATE_TABLE, (yyvsp[-3].num), (yyvsp[-4].object_ddl_options) | (yyvsp[-1].object_ddl_options)))
                MYSQL_YYABORT;
@@ -20394,102 +20417,92 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->name= null_lex_str;
             lex->create_last_non_select_table= lex->last_table();
           }
-#line 20398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 128:
-#line 2475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->current_select= &lex->select_lex; 
-            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
-                !lex->create_info.db_type)
-            {
-              lex->create_info.use_default_db_type(thd);
-              push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
-                                  ER_WARN_USING_OTHER_HANDLER,
-                                  ER_THD(thd, ER_WARN_USING_OTHER_HANDLER),
-                                  hton_name(lex->create_info.db_type)->str,
-                                  (yyvsp[-2].table)->table.str);
-            }
             create_table_set_open_action_and_adjust_tables(lex);
           }
-#line 20418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 129:
-#line 2493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_create_index_prepare(Lex, (yyvsp[0].table)))
               MYSQL_YYABORT;
             if (Lex->add_create_index((yyvsp[-6].key_type), (yyvsp[-3].lex_str), (yyvsp[-2].key_alg), (yyvsp[-7].object_ddl_options) | (yyvsp[-4].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 20429 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 130:
-#line 2500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2492 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 131:
-#line 2503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_create_index_prepare(Lex, (yyvsp[0].table)))
               MYSQL_YYABORT;
             if (Lex->add_create_index((yyvsp[-5].key_type), (yyvsp[-2].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-6].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 20446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20459 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 132:
-#line 2510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20465 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 133:
-#line 2513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_create_index_prepare(Lex, (yyvsp[0].table)))
               MYSQL_YYABORT;
             if (Lex->add_create_index((yyvsp[-5].key_type), (yyvsp[-2].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-6].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 20463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 134:
-#line 2520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20469 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 135:
-#line 2522 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.default_table_charset= NULL;
             Lex->create_info.used_fields= 0;
           }
-#line 20478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 136:
-#line 2527 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->set_command_with_check(SQLCOM_CREATE_DB, 0, (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
                MYSQL_YYABORT;
             lex->name= (yyvsp[-2].lex_str);
           }
-#line 20489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 137:
-#line 2534 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.set((yyvsp[0].object_ddl_options));
             Lex->create_view_mode= ((yyvsp[0].object_ddl_options).or_replace() ? VIEW_CREATE_OR_REPLACE :
@@ -20497,141 +20510,141 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->create_view_algorithm= DTYPE_ALGORITHM_UNDEFINED;
             Lex->create_view_suid= TRUE;
           }
-#line 20501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 138:
-#line 2541 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20520 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 139:
-#line 2543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2535 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->set_command_with_check(SQLCOM_CREATE_USER, (yyvsp[-4].object_ddl_options) | (yyvsp[-2].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 20516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 140:
-#line 2549 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2541 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->set_command_with_check(SQLCOM_CREATE_ROLE, (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 20525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 141:
-#line 2554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP;
           }
-#line 20533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 142:
-#line 2558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE;
           }
-#line 20541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 143:
-#line 2561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->set_command(SQLCOM_CREATE_SERVER, (yyvsp[0].object_ddl_options)); }
-#line 20547 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 144:
-#line 2563 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20553 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 145:
-#line 2568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->add_create_options_with_check((yyvsp[-1].object_ddl_options)))
               MYSQL_YYABORT;
             Lex->server_options.reset((yyvsp[0].lex_str));
           }
-#line 20563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 146:
-#line 2575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->server_options.scheme= (yyvsp[-4].lex_str); }
-#line 20569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 149:
-#line 2585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.username.str == 0);
             Lex->server_options.username= (yyvsp[0].lex_str);
           }
-#line 20578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 150:
-#line 2590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2582 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.host.str == 0);
             Lex->server_options.host= (yyvsp[0].lex_str);
           }
-#line 20587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 151:
-#line 2595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.db.str == 0);
             Lex->server_options.db= (yyvsp[0].lex_str);
           }
-#line 20596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 152:
-#line 2600 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.owner.str == 0);
             Lex->server_options.owner= (yyvsp[0].lex_str);
           }
-#line 20605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 153:
-#line 2605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.password.str == 0);
             Lex->server_options.password= (yyvsp[0].lex_str);
           }
-#line 20614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 154:
-#line 2610 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2602 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS(Lex->server_options.socket.str == 0);
             Lex->server_options.socket= (yyvsp[0].lex_str);
           }
-#line 20623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 155:
-#line 2615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->server_options.port= (yyvsp[0].ulong_num);
           }
-#line 20631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 156:
-#line 2622 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2614 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
@@ -20647,11 +20660,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_CREATE_EVENT;
             /* We need that for disallowing subqueries */
           }
-#line 20651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 157:
-#line 2642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               sql_command is set here because some rules in ev_sql_stmt
@@ -20659,123 +20672,123 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->sql_command= SQLCOM_CREATE_EVENT;
           }
-#line 20663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 158:
-#line 2653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->item_expression= (yyvsp[-1].item);
             Lex->event_parse_data->interval= (yyvsp[0].interval);
           }
-#line 20672 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 160:
-#line 2660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->item_execute_at= (yyvsp[0].item);
           }
-#line 20680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20693 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 161:
-#line 2666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 20686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 162:
-#line 2668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->status= Event_parse_data::ENABLED;
             Lex->event_parse_data->status_changed= true;
             (yyval.num)= 1;
           }
-#line 20696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 163:
-#line 2674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
             Lex->event_parse_data->status_changed= true; 
             (yyval.num)= 1;
           }
-#line 20706 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 164:
-#line 2680 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2672 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->status= Event_parse_data::DISABLED;
             Lex->event_parse_data->status_changed= true;
             (yyval.num)= 1;
           }
-#line 20716 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 165:
-#line 2689 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2681 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_func_now_local(thd, 0);
             if (item == NULL)
               MYSQL_YYABORT;
             Lex->event_parse_data->item_starts= item;
           }
-#line 20727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 166:
-#line 2696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2688 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->item_starts= (yyvsp[0].item);
           }
-#line 20735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20748 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 168:
-#line 2704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->item_ends= (yyvsp[0].item);
           }
-#line 20743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 169:
-#line 2710 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 20749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 171:
-#line 2716 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->event_parse_data->on_completion= (yyvsp[-1].num)
                                     ? Event_parse_data::ON_COMPLETION_DROP
                                     : Event_parse_data::ON_COMPLETION_PRESERVE;
             (yyval.num)= 1;
           }
-#line 20760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 172:
-#line 2725 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 20766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20779 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 173:
-#line 2727 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->comment= Lex->event_parse_data->comment= (yyvsp[0].lex_str);
             (yyval.num)= 1;
           }
-#line 20775 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20788 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 174:
-#line 2734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -20806,11 +20819,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sp_chistics.suid= SP_IS_SUID;  //always the definer!
             lex->sphead->set_body_start(thd, lip->get_cpp_ptr());
           }
-#line 20810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 175:
-#line 2765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
 
@@ -20820,11 +20833,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             lex->event_parse_data->body_changed= TRUE;
           }
-#line 20824 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20837 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 176:
-#line 2778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2770 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
            LEX *lex=Lex;
            lex->users_list.empty();
@@ -20836,11 +20849,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
            lex->ssl_cipher= lex->x509_subject= lex->x509_issuer= 0;
            bzero((char *)&(lex->mqh),sizeof(lex->mqh));
          }
-#line 20840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 177:
-#line 2793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!(yyvsp[-2].lex_str).str || check_db_name(&(yyvsp[-2].lex_str)))
               my_yyabort_error((ER_WRONG_DB_NAME, MYF(0), (yyvsp[-2].lex_str).str));
@@ -20851,11 +20864,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (yyval.spname)->init_qname(thd);
           }
-#line 20855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 178:
-#line 2804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2796 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             LEX_STRING db;
@@ -20870,105 +20883,105 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (yyval.spname)->init_qname(thd);
           }
-#line 20874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 179:
-#line 2821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 180:
-#line 2822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2814 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 181:
-#line 2826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20905 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 182:
-#line 2827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20911 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 183:
-#line 2833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.comment= (yyvsp[0].lex_str); }
-#line 20904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 184:
-#line 2835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* Just parse it, we only have one language for now. */ }
-#line 20910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 185:
-#line 2837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.daccess= SP_NO_SQL; }
-#line 20916 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 186:
-#line 2839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; }
-#line 20922 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20935 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 187:
-#line 2841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; }
-#line 20928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 188:
-#line 2843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; }
-#line 20934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 189:
-#line 2845 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 190:
-#line 2850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 20946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 191:
-#line 2851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sp_chistics.detistic= ! (yyvsp[-1].num); }
-#line 20952 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 192:
-#line 2856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sp_chistics.suid= SP_IS_SUID;
           }
-#line 20960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20973 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 193:
-#line 2860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2852 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sp_chistics.suid= SP_IS_NOT_SUID;
           }
-#line 20968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 194:
-#line 2867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex = Lex;
 
@@ -20977,33 +20990,33 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->value_list.empty();
             sp_add_used_routine(lex, thd, (yyvsp[0].spname), TYPE_ENUM_PROCEDURE);
           }
-#line 20981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 20994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 195:
-#line 2875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 20987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 200:
-#line 2891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
            Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 20995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 201:
-#line 2895 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2887 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 21003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 206:
-#line 2913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2905 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *spc= lex->spcont;
@@ -21017,11 +21030,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                  thd->variables.collation_database);
             (yyval.spvar)= spvar;
           }
-#line 21021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21034 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 207:
-#line 2927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_variable *spvar= (yyvsp[-1].spvar);
@@ -21037,61 +21050,61 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             (yyval.spvar)= spvar;
           }
-#line 21041 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 212:
-#line 2956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyvsp[0].spvar)->mode=(yyvsp[-1].spvar_mode); }
-#line 21047 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 213:
-#line 2960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spvar_mode)= sp_variable::MODE_IN; }
-#line 21053 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 214:
-#line 2961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spvar_mode)= sp_variable::MODE_IN; }
-#line 21059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 215:
-#line 2962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spvar_mode)= sp_variable::MODE_OUT; }
-#line 21065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 216:
-#line 2963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spvar_mode)= sp_variable::MODE_INOUT; }
-#line 21071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 217:
-#line 2967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 21077 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 219:
-#line 2972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 21083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 221:
-#line 2978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
           }
-#line 21091 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 222:
-#line 2982 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* We check for declarations out of (standard) order this way
               because letting the grammar rules reflect it caused tricky
@@ -21106,11 +21119,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.spblock).hndlrs= (yyvsp[-2].spblock).hndlrs + (yyvsp[-1].spblock).hndlrs;
             (yyval.spblock).curs= (yyvsp[-2].spblock).curs + (yyvsp[-1].spblock).curs;
           }
-#line 21110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21123 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 223:
-#line 3000 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 2992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *pctx= lex->spcont;
@@ -21125,11 +21138,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             thd->lex->init_last_field(&spvar->field_def, spvar->name.str,
                                       thd->variables.collation_database);
           }
-#line 21129 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 224:
-#line 3016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *pctx= lex->spcont;
@@ -21185,11 +21198,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.spblock).vars= (yyvsp[-3].num);
             (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
           }
-#line 21189 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21202 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 225:
-#line 3072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *spc= lex->spcont;
@@ -21201,11 +21214,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.spblock).vars= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
             (yyval.spblock).conds= 1;
           }
-#line 21205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 226:
-#line 3084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -21232,11 +21245,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (sp->push_backpatch(i, ctx->push_label(thd, empty_lex_str, 0)))
               MYSQL_YYABORT;
           }
-#line 21236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21249 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 227:
-#line 3111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -21268,11 +21281,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).curs= 0;
             (yyval.spblock).hndlrs= 1;
           }
-#line 21272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 228:
-#line 3143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3135 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -21291,19 +21304,19 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= 0;
             (yyval.spblock).curs= 1;
           }
-#line 21295 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 229:
-#line 3164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sphead->reset_lex(thd);
           }
-#line 21303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21316 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 230:
-#line 3168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -21316,35 +21329,35 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 21320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 231:
-#line 3183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= sp_handler::EXIT; }
-#line 21326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 232:
-#line 3184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= sp_handler::CONTINUE; }
-#line 21332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 233:
-#line 3190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 21338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 234:
-#line 3192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)+= 1; }
-#line 21344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 235:
-#line 3197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -21356,11 +21369,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             sp_instr_hpush_jump *i= (sp_instr_hpush_jump *)sp->last_instruction();
             i->add_condition((yyvsp[0].spcondvalue));
           }
-#line 21360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 236:
-#line 3212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* mysql errno */
             if ((yyvsp[0].ulong_num) == 0)
               my_yyabort_error((ER_WRONG_VALUE, MYF(0), "CONDITION", "0"));
@@ -21368,11 +21381,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.spcondvalue) == NULL)
               MYSQL_YYABORT;
           }
-#line 21372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 238:
-#line 3224 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* SQLSTATE */
 
             /*
@@ -21388,71 +21401,71 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.spcondvalue) == NULL)
               MYSQL_YYABORT;
           }
-#line 21392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21405 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 239:
-#line 3242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 21398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21411 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 240:
-#line 3243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 21404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 241:
-#line 3248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spcondvalue)= (yyvsp[0].spcondvalue);
           }
-#line 21412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 242:
-#line 3252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spcondvalue)= Lex->spcont->find_condition((yyvsp[0].lex_str), false);
             if ((yyval.spcondvalue) == NULL)
               my_yyabort_error((ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 21422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 243:
-#line 3258 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::WARNING);
             if ((yyval.spcondvalue) == NULL)
               MYSQL_YYABORT;
           }
-#line 21432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 244:
-#line 3264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::NOT_FOUND);
             if ((yyval.spcondvalue) == NULL)
               MYSQL_YYABORT;
           }
-#line 21442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21455 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 245:
-#line 3270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
             if ((yyval.spcondvalue) == NULL)
               MYSQL_YYABORT;
           }
-#line 21452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21465 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 246:
-#line 3279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Yacc_state *state= & thd->m_parser_state->m_yacc;
@@ -21463,11 +21476,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 21467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 247:
-#line 3293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3285 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_condition_value *cond;
@@ -21482,37 +21495,37 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SIGNAL_BAD_CONDITION_TYPE, MYF(0)));
             (yyval.spcondvalue)= cond;
           }
-#line 21486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21499 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 248:
-#line 3308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
-#line 21492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 249:
-#line 3313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spcondvalue)= NULL; }
-#line 21498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 250:
-#line 3315 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
-#line 21504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21517 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 251:
-#line 3320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             thd->m_parser_state->m_yacc.m_set_signal_info.clear();
           }
-#line 21512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 253:
-#line 3328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Set_signal_information *info;
             info= &thd->m_parser_state->m_yacc.m_set_signal_info;
@@ -21520,11 +21533,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             info->clear();
             info->m_item[index]= (yyvsp[0].item);
           }
-#line 21524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21537 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 254:
-#line 3337 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3329 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Set_signal_information *info;
             info= &thd->m_parser_state->m_yacc.m_set_signal_info;
@@ -21534,17 +21547,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                 Diag_condition_item_names[index].str));
             info->m_item[index]= (yyvsp[0].item);
           }
-#line 21538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 255:
-#line 3353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 21544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 256:
-#line 3355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].item)->type() == Item::FUNC_ITEM)
             {
@@ -21562,89 +21575,89 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             (yyval.item)= (yyvsp[0].item);
           }
-#line 21566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 257:
-#line 3373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 21572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 258:
-#line 3379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CLASS_ORIGIN; }
-#line 21578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 259:
-#line 3381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_SUBCLASS_ORIGIN; }
-#line 21584 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 260:
-#line 3383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_CATALOG; }
-#line 21590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21603 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 261:
-#line 3385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_SCHEMA; }
-#line 21596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 262:
-#line 3387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_NAME; }
-#line 21602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 263:
-#line 3389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CATALOG_NAME; }
-#line 21608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 264:
-#line 3391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_SCHEMA_NAME; }
-#line 21614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 265:
-#line 3393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_TABLE_NAME; }
-#line 21620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21633 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 266:
-#line 3395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_COLUMN_NAME; }
-#line 21626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21639 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 267:
-#line 3397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_CURSOR_NAME; }
-#line 21632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21645 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 268:
-#line 3399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_MESSAGE_TEXT; }
-#line 21638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 269:
-#line 3401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_condition_item_name)= DIAG_MYSQL_ERRNO; }
-#line 21644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21657 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 270:
-#line 3406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Yacc_state *state= & thd->m_parser_state->m_yacc;
@@ -21656,11 +21669,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 21660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 271:
-#line 3421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Diagnostics_information *info= (yyvsp[0].diag_info);
 
@@ -21672,73 +21685,73 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 21676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 272:
-#line 3436 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3428 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
-#line 21682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 273:
-#line 3438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3430 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
-#line 21688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 274:
-#line 3443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3435 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.diag_info)= new (thd->mem_root) Statement_information((yyvsp[0].stmt_info_list));
             if ((yyval.diag_info) == NULL)
               MYSQL_YYABORT;
           }
-#line 21698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 275:
-#line 3449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.diag_info)= new (thd->mem_root) Condition_information((yyvsp[-1].item), (yyvsp[0].cond_info_list));
             if ((yyval.diag_info) == NULL)
               MYSQL_YYABORT;
           }
-#line 21708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 276:
-#line 3458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.stmt_info_list)= new (thd->mem_root) List;
             if ((yyval.stmt_info_list) == NULL || (yyval.stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 21718 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21731 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 277:
-#line 3464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[-2].stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root))
               MYSQL_YYABORT;
             (yyval.stmt_info_list)= (yyvsp[-2].stmt_info_list);
           }
-#line 21728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 278:
-#line 3473 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.stmt_info_item)= new (thd->mem_root) Statement_information_item((yyvsp[0].stmt_info_item_name), (yyvsp[-2].item));
             if ((yyval.stmt_info_item) == NULL)
               MYSQL_YYABORT;
           }
-#line 21738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 279:
-#line 3481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3473 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex_input_stream *lip= &thd->m_parser_state->m_lip;
             (yyval.item)= create_item_for_sp_var(thd, (yyvsp[0].lex_str), NULL,
@@ -21747,147 +21760,147 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 21751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21764 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 280:
-#line 3490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3482 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, (yyvsp[0].lex_str));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 21761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 281:
-#line 3499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
-#line 21767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 282:
-#line 3501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.stmt_info_item_name)= Statement_information_item::ROW_COUNT; }
-#line 21773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 283:
-#line 3510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 21779 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 284:
-#line 3515 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.cond_info_list)= new (thd->mem_root) List;
             if ((yyval.cond_info_list) == NULL || (yyval.cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 21789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 285:
-#line 3521 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[-2].cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root))
               MYSQL_YYABORT;
             (yyval.cond_info_list)= (yyvsp[-2].cond_info_list);
           }
-#line 21799 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 286:
-#line 3530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3522 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.cond_info_item)= new (thd->mem_root) Condition_information_item((yyvsp[0].cond_info_item_name), (yyvsp[-2].item));
             if ((yyval.cond_info_item) == NULL)
               MYSQL_YYABORT;
           }
-#line 21809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 287:
-#line 3538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CLASS_ORIGIN; }
-#line 21815 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 288:
-#line 3540 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3532 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::SUBCLASS_ORIGIN; }
-#line 21821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 289:
-#line 3542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3534 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_CATALOG; }
-#line 21827 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 290:
-#line 3544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3536 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_SCHEMA; }
-#line 21833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 291:
-#line 3546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_NAME; }
-#line 21839 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 292:
-#line 3548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3540 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CATALOG_NAME; }
-#line 21845 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 293:
-#line 3550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::SCHEMA_NAME; }
-#line 21851 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 294:
-#line 3552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::TABLE_NAME; }
-#line 21857 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 295:
-#line 3554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::COLUMN_NAME; }
-#line 21863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 296:
-#line 3556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::CURSOR_NAME; }
-#line 21869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 297:
-#line 3558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::MESSAGE_TEXT; }
-#line 21875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 298:
-#line 3560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::MYSQL_ERRNO; }
-#line 21881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 299:
-#line 3562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cond_info_item_name)= Condition_information_item::RETURNED_SQLSTATE; }
-#line 21887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 300:
-#line 3567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* NOTE: field definition is filled in sp_decl section. */
 
@@ -21899,11 +21912,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             spc->add_variable(thd, (yyvsp[0].lex_str));
             (yyval.num)= 1;
           }
-#line 21903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21916 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 301:
-#line 3579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* NOTE: field definition is filled in sp_decl section. */
 
@@ -21915,39 +21928,39 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             spc->add_variable(thd, (yyvsp[0].lex_str));
             (yyval.num)= (yyvsp[-2].num) + 1;
           }
-#line 21919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 302:
-#line 3593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = NULL; }
-#line 21925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 303:
-#line 3594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = (yyvsp[0].item); }
-#line 21931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 319:
-#line 3620 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (maybe_start_compound_statement(thd))
               MYSQL_YYABORT;
             Lex->sphead->new_cont_backpatch(NULL);
           }
-#line 21941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 320:
-#line 3626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sphead->do_cont_backpatch(); }
-#line 21947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 321:
-#line 3630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3622 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -21955,11 +21968,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sphead->reset_lex(thd);
             lex->sphead->m_tmp_query= lip->get_tok_start();
           }
-#line 21959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 21972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 322:
-#line 3638 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -22001,17 +22014,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (sp->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22005 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 323:
-#line 3683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sphead->reset_lex(thd); }
-#line 22011 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 324:
-#line 3685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22031,11 +22044,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (sp->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22035 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22048 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 325:
-#line 3708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp = lex->sphead;
@@ -22082,11 +22095,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             sp->push_backpatch(i, lab);  /* Jumping forward */
             sp->add_instr(i);
           }
-#line 22086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 326:
-#line 3758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3750 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22124,11 +22137,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 sp->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 327:
-#line 3799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22143,11 +22156,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 sp->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22147 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 328:
-#line 3817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22162,17 +22175,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 sp->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 329:
-#line 3832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 22172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 330:
-#line 3837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22187,11 +22200,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 sp->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 334:
-#line 3861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3853 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22205,11 +22218,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
             i->add_to_varlist(spv);
           }
-#line 22209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 335:
-#line 3875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22223,17 +22236,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
             i->add_to_varlist(spv);
           }
-#line 22227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 336:
-#line 3891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sphead->reset_lex(thd); }
-#line 22233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 337:
-#line 3893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22249,11 +22262,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (sp->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 338:
-#line 3909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3901 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_head *sp= Lex->sphead;
             sp_pcontext *ctx= Lex->spcont;
@@ -22265,21 +22278,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             sp->backpatch(ctx->pop_label());
             sp->push_backpatch(i, ctx->push_label(thd, empty_lex_str, 0));
           }
-#line 22269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 339:
-#line 3921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
             lex->sphead->backpatch(lex->spcont->pop_label());
           }
-#line 22279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 343:
-#line 3936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3928 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (maybe_start_compound_statement(thd))
               MYSQL_YYABORT;
@@ -22329,11 +22342,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->spcont->push_label(thd, empty_lex_str, Lex->sphead->instructions());
           }
-#line 22333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22346 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 344:
-#line 3989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               BACKPATCH: Resolving forward jump from
@@ -22347,17 +22360,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             Lex->sphead->do_cont_backpatch();
           }
-#line 22351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 345:
-#line 4005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3997 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sphead->reset_lex(thd); /* For expr $2 */ }
-#line 22357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22370 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 346:
-#line 4007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 3999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (case_stmt_action_expr(Lex, (yyvsp[0].item)))
               MYSQL_YYABORT;
@@ -22365,31 +22378,31 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->sphead->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22382 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 347:
-#line 4015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 22375 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22388 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 348:
-#line 4017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 22381 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 353:
-#line 4032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sphead->reset_lex(thd); /* For expr $3 */
           }
-#line 22389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 354:
-#line 4036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* Simple case:  =  */
 
@@ -22400,29 +22413,29 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 355:
-#line 4048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (case_stmt_action_then(lex))
               MYSQL_YYABORT;
           }
-#line 22414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 356:
-#line 4057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sphead->reset_lex(thd); /* For expr $3 */
           }
-#line 22422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 357:
-#line 4061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (case_stmt_action_when(lex, (yyvsp[0].item), false))
@@ -22431,21 +22444,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 358:
-#line 4071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (case_stmt_action_then(lex))
               MYSQL_YYABORT;
           }
-#line 22445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 359:
-#line 4080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22456,23 +22469,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 sp->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22473 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 361:
-#line 4094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= null_lex_str; }
-#line 22466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22479 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 362:
-#line 4095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 22472 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 363:
-#line 4100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *ctx= lex->spcont;
@@ -22482,11 +22495,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_LABEL_REDEFINE, MYF(0), (yyvsp[-2].lex_str).str));
             lex->name= (yyvsp[-2].lex_str);
           }
-#line 22486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22499 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 364:
-#line 4110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).str)
             {
@@ -22494,41 +22507,41 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 my_yyabort_error((ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[0].lex_str).str));
             }
           }
-#line 22498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 365:
-#line 4121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->name= empty_lex_str; // Unlabeled blocks get an empty label
           }
-#line 22506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22519 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 366:
-#line 4125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 367:
-#line 4130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (maybe_start_compound_statement(thd))
               MYSQL_YYABORT;
             Lex->name= empty_lex_str; // Unlabeled blocks get an empty label
           }
-#line 22522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 368:
-#line 4136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 369:
-#line 4140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_label *lab= lex->spcont->push_label(thd, lex->name,
@@ -22537,11 +22550,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->spcont= lex->spcont->push_context(thd,
                                                    sp_pcontext::REGULAR_SCOPE);
           }
-#line 22541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 370:
-#line 4151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22568,11 +22581,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->spcont= ctx->pop_context();
             (yyval.splabel) = lex->spcont->pop_label();
           }
-#line 22572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 371:
-#line 4181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             uint ip= lex->sphead->instructions();
@@ -22583,11 +22596,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 lex->sphead->add_instr(i))
               MYSQL_YYABORT;
           }
-#line 22587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 372:
-#line 4195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -22603,11 +22616,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (sp->restore_lex(thd))
               MYSQL_YYABORT;
           }
-#line 22607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 373:
-#line 4211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             uint ip= lex->sphead->instructions();
@@ -22619,17 +22632,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->sphead->do_cont_backpatch();
           }
-#line 22623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 374:
-#line 4226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sphead->reset_lex(thd); }
-#line 22629 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 375:
-#line 4228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             uint ip= lex->sphead->instructions();
@@ -22644,11 +22657,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* We can shortcut the cont_backpatch here */
             i->m_cont_dest= ip+1;
           }
-#line 22648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 376:
-#line 4246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_label *lab;
             Lex->sphead->backpatch(lab= Lex->spcont->pop_label());
@@ -22659,207 +22672,207 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 my_yyabort_error((ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[0].lex_str).str));
             }
           }
-#line 22663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 377:
-#line 4259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_label *lab;
             Lex->sphead->backpatch(lab= Lex->spcont->pop_label());
             DBUG_ASSERT(lab->name.length == 0);
           }
-#line 22673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 378:
-#line 4268 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4260 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_label(thd, (yyvsp[-2].lex_str)))
               MYSQL_YYABORT;
           }
-#line 22682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 379:
-#line 4273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 380:
-#line 4275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_label(thd, (yyvsp[-2].lex_str)))
               MYSQL_YYABORT;
             Lex->sphead->reset_lex(thd);
           }
-#line 22698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 381:
-#line 4281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 382:
-#line 4283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_label(thd, (yyvsp[-2].lex_str)))
               MYSQL_YYABORT;
           }
-#line 22713 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 383:
-#line 4288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 384:
-#line 4293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4285 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_empty_label(thd))
               MYSQL_YYABORT;
           }
-#line 22728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 385:
-#line 4299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 386:
-#line 4301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_empty_label(thd))
               MYSQL_YYABORT;
             Lex->sphead->reset_lex(thd);
           }
-#line 22744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22757 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 387:
-#line 4308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22763 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 388:
-#line 4310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (push_sp_empty_label(thd))
               MYSQL_YYABORT;
           }
-#line 22759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 389:
-#line 4316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 22765 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 390:
-#line 4321 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->trg_chistics.action_time= TRG_ACTION_BEFORE; }
-#line 22771 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 391:
-#line 4323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4315 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->trg_chistics.action_time= TRG_ACTION_AFTER; }
-#line 22777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 392:
-#line 4328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->trg_chistics.event= TRG_EVENT_INSERT; }
-#line 22783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 393:
-#line 4330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->trg_chistics.event= TRG_EVENT_UPDATE; }
-#line 22789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 394:
-#line 4332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->trg_chistics.event= TRG_EVENT_DELETE; }
-#line 22795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 398:
-#line 4366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 22801 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 399:
-#line 4368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].lex_str).str;
           }
-#line 22810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 400:
-#line 4378 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE; 
           }
-#line 22818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 401:
-#line 4384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE; 
           }
-#line 22826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22839 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 406:
-#line 4407 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 22832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22845 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 453:
-#line 4501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->data_file_name= (yyvsp[0].lex_str).str;
           }
-#line 22841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 454:
-#line 4509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->undo_file_name= (yyvsp[0].lex_str).str;
           }
-#line 22850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 455:
-#line 4517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->redo_file_name= (yyvsp[0].lex_str).str;
           }
-#line 22859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 456:
-#line 4525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info= (new (thd->mem_root)
@@ -22869,11 +22882,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_tablespace_info->tablespace_name= (yyvsp[0].lex_str).str;
             lex->sql_command= SQLCOM_ALTER_TABLESPACE;
           }
-#line 22873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 457:
-#line 4538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info= (new (thd->mem_root)
@@ -22883,114 +22896,114 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].lex_str).str;
             lex->sql_command= SQLCOM_ALTER_TABLESPACE;
           }
-#line 22887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 458:
-#line 4551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY;
           }
-#line 22896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 459:
-#line 4556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE;
           }
-#line 22905 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 460:
-#line 4561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE;
           }
-#line 22914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 461:
-#line 4569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->initial_size= (yyvsp[0].ulonglong_number);
           }
-#line 22923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 462:
-#line 4577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->autoextend_size= (yyvsp[0].ulonglong_number);
           }
-#line 22932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 463:
-#line 4585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->max_size= (yyvsp[0].ulonglong_number);
           }
-#line 22941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 464:
-#line 4593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->extent_size= (yyvsp[0].ulonglong_number);
           }
-#line 22950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 465:
-#line 4601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->undo_buffer_size= (yyvsp[0].ulonglong_number);
           }
-#line 22959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 466:
-#line 4609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->redo_buffer_size= (yyvsp[0].ulonglong_number);
           }
-#line 22968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 467:
-#line 4617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP)
               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NODEGROUP"));
             lex->alter_tablespace_info->nodegroup_id= (yyvsp[0].ulong_num);
           }
-#line 22979 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 22992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 468:
-#line 4627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4619 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->alter_tablespace_info->ts_comment != NULL)
               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"COMMENT"));
             lex->alter_tablespace_info->ts_comment= (yyvsp[0].lex_str).str;
           }
-#line 22990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 469:
-#line 4637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4629 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->alter_tablespace_info->storage_engine != NULL)
@@ -22998,37 +23011,37 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                 "STORAGE ENGINE"));
             lex->alter_tablespace_info->storage_engine= (yyvsp[0].db_type);
           }
-#line 23002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 472:
-#line 4653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->wait_until_completed= TRUE;
           }
-#line 23011 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 473:
-#line 4658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4650 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (!(lex->alter_tablespace_info->wait_until_completed))
               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NO_WAIT"));
             lex->alter_tablespace_info->wait_until_completed= FALSE;
           }
-#line 23022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23035 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 474:
-#line 4667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulonglong_number)= (yyvsp[0].ulonglong_number);}
-#line 23028 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23041 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 475:
-#line 4669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4661 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             ulonglong number;
             uint text_shift_number= 0;
@@ -23059,41 +23072,41 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_WRONG_SIZE_NUMBER, MYF(0)));
             (yyval.ulonglong_number)= number;
           }
-#line 23063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 476:
-#line 4707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_info.option_list= NULL; }
-#line 23069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23082 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 477:
-#line 4708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23088 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 478:
-#line 4709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4701 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 479:
-#line 4715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->set_braces(1);}
-#line 23087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23100 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 480:
-#line 4715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 481:
-#line 4717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 
             Lex->create_info.add(DDL_options_st::OPT_LIKE);
@@ -23104,53 +23117,53 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* CREATE TABLE ... LIKE is not allowed for views. */
             src_table->required_type= FRMTYPE_TABLE;
           }
-#line 23108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 482:
-#line 4730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4722 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table)= (yyvsp[0].table); }
-#line 23114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 483:
-#line 4731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4723 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table)= (yyvsp[-1].table); }
-#line 23120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23133 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 484:
-#line 4735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4727 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 485:
-#line 4737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->set_braces(0);}
-#line 23132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 486:
-#line 4738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23151 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 487:
-#line 4740 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->set_braces(1);}
-#line 23144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 488:
-#line 4741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23163 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 489:
-#line 4746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Remove all tables used in PARTITION clause from the global table
@@ -23160,17 +23173,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             last_non_sel_table->next_global= 0;
             Lex->query_tables_last= &last_non_sel_table->next_global;
           }
-#line 23164 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 490:
-#line 4782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 492:
-#line 4788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4780 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->part_info= new (thd->mem_root) partition_info();
@@ -23184,11 +23197,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               lex->alter_info.flags|= Alter_info::ALTER_PARTITION;
             }
           }
-#line 23188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 494:
-#line 4806 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4798 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 #ifdef WITH_PARTITION_STORAGE_ENGINE
             LEX_STRING partition_name={C_STRING_WITH_LEN("partition")};
@@ -23200,11 +23213,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                               "--with-plugin-partition"));
 #endif
           }
-#line 23204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 495:
-#line 4821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (!lex->part_info)
@@ -23217,82 +23230,82 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               partition info string into part_info data structure.
             */
           }
-#line 23221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 496:
-#line 4833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 498:
-#line 4842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4834 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->list_of_part_fields= TRUE;
             part_info->column_list= FALSE;
             part_info->part_type= HASH_PARTITION;
           }
-#line 23238 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 499:
-#line 4849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->part_type= HASH_PARTITION; }
-#line 23244 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 500:
-#line 4850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23250 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 501:
-#line 4852 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4844 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->part_type= RANGE_PARTITION; }
-#line 23256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 502:
-#line 4854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->part_type= RANGE_PARTITION; }
-#line 23262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 503:
-#line 4856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->part_type= LIST_PARTITION; }
-#line 23268 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 504:
-#line 4858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->part_type= LIST_PARTITION; }
-#line 23274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 505:
-#line 4862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 506:
-#line 4864 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->linear_hash_ind= TRUE;}
-#line 23286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 507:
-#line 4869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_NONE;}
-#line 23292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 508:
-#line 4871 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             switch ((yyvsp[0].ulong_num)) {
             case 1:
@@ -23306,35 +23319,35 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 509:
-#line 4887 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23316 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 510:
-#line 4888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23322 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 511:
-#line 4892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 512:
-#line 4893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23334 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 513:
-#line 4898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->num_columns++;
@@ -23347,21 +23360,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
                                 "list of partition fields"));
           }
-#line 23351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 514:
-#line 4914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4906 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->column_list= TRUE;
             part_info->list_of_part_fields= TRUE;
           }
-#line 23361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 515:
-#line 4924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4916 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->set_part_expr((yyvsp[-3].simple_string)+1, (yyvsp[-2].item), (yyvsp[-1].simple_string), FALSE))
@@ -23369,26 +23382,26 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             part_info->num_columns= 1;
             part_info->column_list= FALSE;
           }
-#line 23373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 516:
-#line 4935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->part_info->set_part_expr((yyvsp[-3].simple_string)+1, (yyvsp[-2].item), (yyvsp[-1].simple_string), TRUE))
             { MYSQL_YYABORT; }
           }
-#line 23382 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 517:
-#line 4943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23388 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 518:
-#line 4945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             uint num_parts= (yyvsp[0].ulong_num);
             partition_info *part_info= Lex->part_info;
@@ -23398,57 +23411,57 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             part_info->num_parts= num_parts;
             part_info->use_default_num_partitions= FALSE;
           }
-#line 23402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 519:
-#line 4957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 520:
-#line 4959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->subpart_type= HASH_PARTITION; }
-#line 23414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 521:
-#line 4960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 522:
-#line 4963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->subpart_type= HASH_PARTITION;
             part_info->list_of_subpart_fields= TRUE;
           }
-#line 23430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 523:
-#line 4968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 524:
-#line 4972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23455 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 525:
-#line 4973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 526:
-#line 4978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->subpart_field_list.push_back((yyvsp[0].lex_str).str, thd->mem_root))
@@ -23460,11 +23473,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
                                 "list of subpartition fields"));
           }
-#line 23464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 527:
-#line 4993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 4985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             bool not_corr_func;
@@ -23477,17 +23490,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             (yyval.item)=(yyvsp[0].item);
           }
-#line 23481 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 528:
-#line 5008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5000 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 529:
-#line 5010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             uint num_parts= (yyvsp[0].ulong_num);
             LEX *lex= Lex;
@@ -23496,11 +23509,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->part_info->num_subparts= num_parts;
             lex->part_info->use_default_num_subpartitions= FALSE;
           }
-#line 23500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 530:
-#line 5022 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->part_type == RANGE_PARTITION)
@@ -23510,11 +23523,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
                                 "LIST"));
           }
-#line 23514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 531:
-#line 5032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             uint count_curr_parts= part_info->partitions.elements;
@@ -23533,23 +23546,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             part_info->count_curr_subparts= 0;
           }
-#line 23537 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 532:
-#line 5053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 533:
-#line 5054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23549 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 534:
-#line 5059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             partition_element *p_elem= new (thd->mem_root) partition_element();
@@ -23566,17 +23579,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             part_info->use_default_partitions= FALSE;
             part_info->use_default_num_partitions= FALSE;
           }
-#line 23570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23583 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 535:
-#line 5079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23589 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 536:
-#line 5084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             partition_element *p_elem= part_info->curr_part_elem;
@@ -23584,11 +23597,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             p_elem->partition_name= (yyvsp[0].lex_str).str;
           }
-#line 23588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23601 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 537:
-#line 5095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             partition_info *part_info= lex->part_info;
@@ -23600,11 +23613,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else
               part_info->part_type= HASH_PARTITION;
           }
-#line 23604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 538:
-#line 5107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             partition_info *part_info= lex->part_info;
@@ -23617,17 +23630,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else
               part_info->part_type= RANGE_PARTITION;
           }
-#line 23621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 539:
-#line 5119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 540:
-#line 5121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             partition_info *part_info= lex->part_info;
@@ -23640,17 +23653,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else
               part_info->part_type= LIST_PARTITION;
           }
-#line 23644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23657 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 541:
-#line 5133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 542:
-#line 5138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
 
@@ -23672,17 +23685,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 543:
-#line 5159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 544:
-#line 5164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             partition_info *part_info= lex->part_info;
@@ -23711,11 +23724,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               }
             }
           }
-#line 23715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 545:
-#line 5193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->num_columns < 2U)
@@ -23724,23 +23737,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 546:
-#line 5204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 547:
-#line 5205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 548:
-#line 5210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->print_debug("( part_value_item", NULL);
@@ -23752,17 +23765,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23769 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 549:
-#line 5221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23775 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 550:
-#line 5223 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->print_debug(") part_value_item", NULL);
@@ -23783,23 +23796,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             part_info->curr_list_object= 0;
           }
-#line 23787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 551:
-#line 5246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23793 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 552:
-#line 5247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23799 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 553:
-#line 5252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->part_type == LIST_PARTITION)
@@ -23812,11 +23825,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 554:
-#line 5265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             partition_info *part_info= lex->part_info;
@@ -23832,11 +23845,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23849 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 555:
-#line 5285 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->num_subparts != 0 &&
@@ -23850,11 +23863,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 23854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23867 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 556:
-#line 5299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             if (part_info->num_subparts != 0)
@@ -23877,23 +23890,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             part_info->count_curr_subparts= 0;
           }
-#line 23881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 557:
-#line 5324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 558:
-#line 5325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5317 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 559:
-#line 5330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             partition_element *curr_part= part_info->current_partition;
@@ -23927,113 +23940,113 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             part_info->use_default_num_subpartitions= FALSE;
             part_info->count_curr_subparts++;
           }
-#line 23931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 560:
-#line 5363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 561:
-#line 5368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (check_ident_length(&(yyvsp[0].lex_str)))
               MYSQL_YYABORT;
             Lex->part_info->curr_part_elem->partition_name= (yyvsp[0].lex_str).str;
           }
-#line 23947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 562:
-#line 5376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 563:
-#line 5377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 564:
-#line 5381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 565:
-#line 5382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 23971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 566:
-#line 5387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->tablespace_name= (yyvsp[0].lex_str).str; }
-#line 23977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 23990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 567:
-#line 5389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->curr_part_elem->engine_type= (yyvsp[0].db_type);
             part_info->default_engine_type= (yyvsp[0].db_type);
           }
-#line 23987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 568:
-#line 5395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->part_info->curr_part_elem->connect_string.str= (yyvsp[0].lex_str).str;
             lex->part_info->curr_part_elem->connect_string.length= (yyvsp[0].lex_str).length;
           }
-#line 23997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 569:
-#line 5401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[0].ulong_num); }
-#line 24003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 570:
-#line 5403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
-#line 24009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 571:
-#line 5405 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
-#line 24015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24028 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 572:
-#line 5407 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[0].lex_str).str; }
-#line 24021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24034 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 573:
-#line 5409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[0].lex_str).str; }
-#line 24027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24040 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 574:
-#line 5411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->part_info->curr_part_elem->part_comment= (yyvsp[0].lex_str).str; }
-#line 24033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 575:
-#line 5420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->sql_command == SQLCOM_INSERT)
@@ -24048,19 +24061,19 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             mysql_init_select(lex);
             lex->current_select->parsing_place= SELECT_LIST;
           }
-#line 24052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 576:
-#line 5435 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 24060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 577:
-#line 5439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               The following work only with the local list, the global list
@@ -24068,170 +24081,180 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->current_select->table_list.push_front(&Lex->save_list);
           }
-#line 24072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 578:
-#line 5449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24091 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 579:
-#line 5450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 580:
-#line 5454 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24103 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 581:
-#line 5455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5447 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24109 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 582:
-#line 5459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24115 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 583:
-#line 5460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5452 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 584:
-#line 5464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 585:
-#line 5465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24133 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 586:
-#line 5470 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5462 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->check_exists= FALSE;
           }
-#line 24128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 587:
-#line 5474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->check_exists= TRUE;
           }
-#line 24136 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 588:
-#line 5481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5473 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.object_ddl_options).init();
           }
-#line 24144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 589:
-#line 5485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_NOT_EXISTS);
           }
-#line 24152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 590:
-#line 5492 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.object_ddl_options).init();
           }
-#line 24160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 591:
-#line 5496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5488 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.object_ddl_options).set(DDL_options_st::OPT_OR_REPLACE);
           }
-#line 24168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24181 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 599:
-#line 5519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5511 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
-            Lex->create_info.db_type= (yyvsp[0].db_type);
-            Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
+            LEX *lex= Lex;
+            if (!lex->m_sql_cmd)
+            {
+              DBUG_ASSERT(lex->sql_command == SQLCOM_ALTER_TABLE);
+              if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table()))
+                MYSQL_YYABORT;
+            }
+            Storage_engine_name *opt=
+              lex->m_sql_cmd->option_storage_engine_name();
+            DBUG_ASSERT(opt); // Expect a proper Sql_cmd
+            *opt= Storage_engine_name((yyvsp[0].lex_str));
+            lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
           }
-#line 24177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 600:
-#line 5524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.max_rows= (yyvsp[0].ulonglong_number);
             Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;
           }
-#line 24186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 601:
-#line 5529 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5531 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.min_rows= (yyvsp[0].ulonglong_number);
             Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;
           }
-#line 24195 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 602:
-#line 5534 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5536 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.avg_row_length=(yyvsp[0].ulong_num);
             Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;
           }
-#line 24204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 603:
-#line 5539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5541 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.password=(yyvsp[0].lex_str).str;
             Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD;
           }
-#line 24213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 604:
-#line 5544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.comment=(yyvsp[0].lex_str);
             Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
           }
-#line 24222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 605:
-#line 5549 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.auto_increment_value=(yyvsp[0].ulonglong_number);
             Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;
           }
-#line 24231 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 606:
-#line 5554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             switch((yyvsp[0].ulong_num)) {
             case 0:
@@ -24246,21 +24269,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
           }
-#line 24250 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24273 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 607:
-#line 5569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.table_options&=
               ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS);
             Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
           }
-#line 24260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 608:
-#line 5575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             switch((yyvsp[0].ulong_num)) {
             case 0:
@@ -24275,20 +24298,20 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
           }
-#line 24279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 609:
-#line 5590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_DEFAULT;
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
           }
-#line 24288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 610:
-#line 5595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             switch((yyvsp[0].ulong_num)) {
             case 0:
@@ -24303,21 +24326,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
           }
-#line 24307 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 611:
-#line 5610 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.table_options&=
               ~(HA_OPTION_STATS_PERSISTENT | HA_OPTION_NO_STATS_PERSISTENT);
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
           }
-#line 24317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 612:
-#line 5616 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* From user point of view STATS_SAMPLE_PAGES can be specified as
             STATS_SAMPLE_PAGES=N (where 0create_info.stats_sample_pages=(yyvsp[0].ulong_num);
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
           }
-#line 24339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 613:
-#line 5634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.stats_sample_pages=0;
             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
           }
-#line 24348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 614:
-#line 5639 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
             Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
           }
-#line 24357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24380 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 615:
-#line 5644 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5646 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
              Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
           }
-#line 24366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 616:
-#line 5649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.used_fields|= HA_CREATE_USED_PAGE_CHECKSUM;
             Lex->create_info.page_checksum= (yyvsp[0].choice);
           }
-#line 24375 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 617:
-#line 5654 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE;
             Lex->create_info.used_fields|= HA_CREATE_USED_DELAY_KEY_WRITE;
           }
-#line 24384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 618:
-#line 5659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5661 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.row_type= (yyvsp[0].row_type);
             Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT;
           }
-#line 24393 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 619:
-#line 5664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->select_lex.table_list.save_and_clear(&Lex->save_list);
           }
-#line 24401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 620:
-#line 5668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5670 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Move the union list to the merge_list and exclude its tables
@@ -24423,84 +24446,84 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             lex->create_info.used_fields|= HA_CREATE_USED_UNION;
           }
-#line 24427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 623:
-#line 5692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5694 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.merge_insert_method= (yyvsp[0].ulong_num);
             Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;
           }
-#line 24436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24459 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 624:
-#line 5697 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.data_file_name= (yyvsp[0].lex_str).str;
             Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR;
           }
-#line 24445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 625:
-#line 5702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.index_file_name= (yyvsp[0].lex_str).str;
             Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
           }
-#line 24454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 626:
-#line 5707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {Lex->create_info.tablespace= (yyvsp[0].lex_str).str;}
-#line 24460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 627:
-#line 5709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {Lex->create_info.storage_media= HA_SM_DISK;}
-#line 24466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 628:
-#line 5711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {Lex->create_info.storage_media= HA_SM_MEMORY;}
-#line 24472 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 629:
-#line 5713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.connect_string.str= (yyvsp[0].lex_str).str;
             Lex->create_info.connect_string.length= (yyvsp[0].lex_str).length;
             Lex->create_info.used_fields|= HA_CREATE_USED_CONNECTION;
           }
-#line 24482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 630:
-#line 5719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE;
             Lex->create_info.key_block_size= (yyvsp[0].ulong_num);
           }
-#line 24491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 631:
-#line 5724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 	    Lex->create_info.used_fields|= HA_CREATE_USED_TRANSACTIONAL;
             Lex->create_info.transactional= (yyvsp[0].choice);
           }
-#line 24500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24523 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 632:
-#line 5729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -24508,11 +24531,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), true, &Lex->create_info.option_list,
                                   &Lex->option_list_last);
           }
-#line 24512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 633:
-#line 5737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -24520,40 +24543,40 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), false, &Lex->create_info.option_list,
                                   &Lex->option_list_last);
           }
-#line 24524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24547 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 634:
-#line 5745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].ulonglong_number), &Lex->create_info.option_list,
                                   &Lex->option_list_last, thd->mem_root);
           }
-#line 24534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 635:
-#line 5751 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), &Lex->create_info.option_list,
                                   &Lex->option_list_last);
           }
-#line 24544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24567 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 636:
-#line 5760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->create_info.add_table_option_default_charset((yyvsp[0].charset)))
               MYSQL_YYABORT;
           }
-#line 24553 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 637:
-#line 5768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5770 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             HA_CREATE_INFO *cinfo= &Lex->create_info;
             if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
@@ -24567,33 +24590,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->create_info.default_table_charset= (yyvsp[0].charset);
             Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
           }
-#line 24571 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24594 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 638:
-#line 5785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
-            plugin_ref plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str),
-                                            thd->lex->create_info.tmp_table());
-
-            if (plugin)
-              (yyval.db_type)= plugin_hton(plugin);
-            else
-            {
-              if (thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION)
-                my_yyabort_error((ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str));
-              (yyval.db_type)= 0;
-              push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
-                                  ER_UNKNOWN_STORAGE_ENGINE,
-                                  ER_THD(thd, ER_UNKNOWN_STORAGE_ENGINE),
-                                  (yyvsp[0].lex_str).str);
-            }
+            if (Storage_engine_name((yyvsp[0].lex_str)).
+                 resolve_storage_engine_with_error(thd, &(yyval.db_type),
+                                            thd->lex->create_info.tmp_table()))
+              MYSQL_YYABORT;
           }
-#line 24593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 639:
-#line 5806 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             plugin_ref plugin;
             if ((plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str), false)))
@@ -24601,199 +24613,199 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else
               my_yyabort_error((ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 24605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 640:
-#line 5816 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_DEFAULT; }
-#line 24611 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 641:
-#line 5817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_FIXED; }
-#line 24617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24629 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 642:
-#line 5818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_DYNAMIC; }
-#line 24623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 643:
-#line 5819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_COMPRESSED; }
-#line 24629 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 644:
-#line 5820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5811 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_REDUNDANT; }
-#line 24635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 645:
-#line 5821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5812 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_COMPACT; }
-#line 24641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 646:
-#line 5822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.row_type)= ROW_TYPE_PAGE; }
-#line 24647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 647:
-#line 5826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= MERGE_INSERT_DISABLED; }
-#line 24653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24665 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 648:
-#line 5827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; }
-#line 24659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 649:
-#line 5828 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; }
-#line 24665 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 650:
-#line 5832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5823 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num) = (int) STRING_RESULT; }
-#line 24671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 651:
-#line 5833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num) = (int) REAL_RESULT; }
-#line 24677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 652:
-#line 5834 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num) = (int) DECIMAL_RESULT; }
-#line 24683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 653:
-#line 5835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num) = (int) INT_RESULT; }
-#line 24689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 654:
-#line 5841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->create_last_non_select_table= Lex->last_table();
         }
-#line 24697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 661:
-#line 5863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key(Key::MULTIPLE, (yyvsp[-1].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24707 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 662:
-#line 5868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24713 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24725 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 663:
-#line 5870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key(Key::MULTIPLE, (yyvsp[-2].lex_str), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 664:
-#line 5875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5866 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 665:
-#line 5877 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key((yyvsp[-3].key_type), (yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 666:
-#line 5882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24745 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24757 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 667:
-#line 5884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key((yyvsp[-3].key_type), (yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 668:
-#line 5889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 669:
-#line 5893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key((yyvsp[-3].key_type), (yyvsp[-1].lex_str).str ? (yyvsp[-1].lex_str) : (yyvsp[-4].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24771 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 670:
-#line 5898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 671:
-#line 5901 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_list= NULL;
             if (Lex->add_key((yyvsp[-4].key_type), (yyvsp[-2].lex_str).str ? (yyvsp[-2].lex_str) : (yyvsp[-5].lex_str), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 24787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24799 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 672:
-#line 5906 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24793 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24805 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 673:
-#line 5908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->check_add_key((yyvsp[-1].object_ddl_options)) ||
                !(Lex->last_key= (new (thd->mem_root)
@@ -24802,11 +24814,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Lex->option_list= NULL;
           }
-#line 24806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 674:
-#line 5917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Key *key= (new (thd->mem_root)
@@ -24832,35 +24844,35 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Only used for ALTER TABLE. Ignored otherwise. */
             lex->alter_info.flags|= Alter_info::ADD_FOREIGN_KEY;
           }
-#line 24836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 675:
-#line 5942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 24842 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 679:
-#line 5955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= null_lex_str; }
-#line 24848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 680:
-#line 5956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 24854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 681:
-#line 5960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 24860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 682:
-#line 5965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Create_field *f= new (thd->mem_root) Create_field();
@@ -24874,17 +24886,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             lex->init_last_field(f, (yyvsp[0].lex_str).str, NULL);
           }
-#line 24878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 683:
-#line 5978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->set_last_field_type((yyvsp[0].field_type)); }
-#line 24884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 684:
-#line 5980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Create_field *f= lex->last_field;
@@ -24899,91 +24911,91 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else if (f->flags & (UNIQUE_FLAG | UNIQUE_KEY_FLAG))
               add_key_to_list(lex, &(yyvsp[-4].lex_str), Key::UNIQUE, Lex->check_exists);
           }
-#line 24903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 687:
-#line 6004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 688:
-#line 6005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 5996 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 689:
-#line 6010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
           }
-#line 24923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24935 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 690:
-#line 6014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
           }
-#line 24931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24943 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 691:
-#line 6018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_field->vcol_info->set_stored_in_db_flag(TRUE);
           }
-#line 24939 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 692:
-#line 6024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 693:
-#line 6025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 694:
-#line 6029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6020 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 24957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 696:
-#line 6035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->last_field->flags|= UNIQUE_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 24967 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24979 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 697:
-#line 6041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->last_field->flags|= UNIQUE_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 24977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 698:
-#line 6046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->comment= (yyvsp[0].lex_str); }
-#line 24983 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 24995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 699:
-#line 6051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               "PARSE_VCOL_EXPR" can only be used by the SQL server
@@ -24993,11 +25005,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!Lex->parse_vcol_expr)
               my_yyabort_error((ER_SYNTAX_ERROR, MYF(0)));
           }
-#line 24997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 700:
-#line 6064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Virtual_column_info *v= new (thd->mem_root) Virtual_column_info();
             if (!v)
@@ -25011,23 +25023,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             v->expr_item= (yyvsp[-1].item);
             Lex->last_field->vcol_info= v;
           }
-#line 25015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 701:
-#line 6080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=(yyvsp[-2].field_type); }
-#line 25021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 702:
-#line 6081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=(yyvsp[-2].field_type); }
-#line 25027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 703:
-#line 6083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)=MYSQL_TYPE_FLOAT;
             if (Lex->length && !Lex->dec)
@@ -25042,127 +25054,127 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               Lex->length= 0;
             }
           }
-#line 25046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25058 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 704:
-#line 6098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             (yyval.field_type)=MYSQL_TYPE_BIT;
           }
-#line 25055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25067 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 705:
-#line 6103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)=MYSQL_TYPE_BIT;
           }
-#line 25063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 706:
-#line 6107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             (yyval.field_type)=MYSQL_TYPE_TINY;
           }
-#line 25072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 707:
-#line 6112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             (yyval.field_type)=MYSQL_TYPE_TINY;
           }
-#line 25081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 708:
-#line 6117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)=MYSQL_TYPE_STRING;
           }
-#line 25089 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 709:
-#line 6121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             (yyval.field_type)=MYSQL_TYPE_STRING;
           }
-#line 25098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 710:
-#line 6126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)=MYSQL_TYPE_STRING;
             bincmp_collation(national_charset_info, (yyvsp[0].num));
           }
-#line 25107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 711:
-#line 6131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             (yyval.field_type)=MYSQL_TYPE_STRING;
             bincmp_collation(national_charset_info, (yyvsp[0].num));
           }
-#line 25117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25129 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 712:
-#line 6137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_STRING;
           }
-#line 25126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 713:
-#line 6142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= (char*) "1";
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_STRING;
           }
-#line 25136 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25148 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 714:
-#line 6148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)= MYSQL_TYPE_VARCHAR;
           }
-#line 25144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 715:
-#line 6152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)= MYSQL_TYPE_VARCHAR;
             bincmp_collation(national_charset_info, (yyvsp[0].num));
           }
-#line 25153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 716:
-#line 6157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)= MYSQL_TYPE_VARCHAR;
           }
-#line 25162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 717:
-#line 6162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->length)
             {
@@ -25180,24 +25192,24 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             (yyval.field_type)=MYSQL_TYPE_YEAR;
           }
-#line 25184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 718:
-#line 6180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_DATE; }
-#line 25190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25202 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 719:
-#line 6182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)= opt_mysql56_temporal_format ?
                 MYSQL_TYPE_TIME2 : MYSQL_TYPE_TIME; }
-#line 25197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 720:
-#line 6185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (thd->variables.sql_mode & MODE_MAXDB)
               (yyval.field_type)= opt_mysql56_temporal_format ?
@@ -25214,36 +25226,36 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                               : MYSQL_TYPE_TIMESTAMP;
             }
           }
-#line 25218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 721:
-#line 6202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)= opt_mysql56_temporal_format ?
                 MYSQL_TYPE_DATETIME2 : MYSQL_TYPE_DATETIME; }
-#line 25225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25237 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 722:
-#line 6205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_TINY_BLOB;
           }
-#line 25234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 723:
-#line 6210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_BLOB;
           }
-#line 25243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25255 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 724:
-#line 6215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 #ifdef HAVE_SPATIAL
             Lex->charset=&my_charset_bin;
@@ -25254,519 +25266,519 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                               sym_group_geom.needed_define));
 #endif
           }
-#line 25258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 725:
-#line 6226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_MEDIUM_BLOB;
           }
-#line 25267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 726:
-#line 6231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_LONG_BLOB;
           }
-#line 25276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 727:
-#line 6236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->charset=&my_charset_bin;
             (yyval.field_type)=MYSQL_TYPE_MEDIUM_BLOB;
           }
-#line 25285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 728:
-#line 6241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_MEDIUM_BLOB; }
-#line 25291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 729:
-#line 6243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_TINY_BLOB; }
-#line 25297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 730:
-#line 6245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_BLOB; }
-#line 25303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 731:
-#line 6247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_MEDIUM_BLOB; }
-#line 25309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 732:
-#line 6249 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_LONG_BLOB; }
-#line 25315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 733:
-#line 6251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_NEWDECIMAL;}
-#line 25321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 734:
-#line 6253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_NEWDECIMAL;}
-#line 25327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 735:
-#line 6255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_NEWDECIMAL;}
-#line 25333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 736:
-#line 6257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_ENUM; }
-#line 25339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 737:
-#line 6259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_SET; }
-#line 25345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 738:
-#line 6261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_MEDIUM_BLOB; }
-#line 25351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25363 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 739:
-#line 6263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)=MYSQL_TYPE_LONGLONG;
             Lex->last_field->flags|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG |
               UNIQUE_FLAG);
           }
-#line 25361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 740:
-#line 6271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_GEOMETRY; }
-#line 25367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 741:
-#line 6272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_GEOMETRYCOLLECTION; }
-#line 25373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 742:
-#line 6274 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->length= const_cast(STRINGIFY_ARG
                                            (MAX_LEN_GEOM_POINT_FIELD));
             (yyval.geom_type)= Field::GEOM_POINT;
           }
-#line 25383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 743:
-#line 6279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_MULTIPOINT; }
-#line 25389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 744:
-#line 6280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_LINESTRING; }
-#line 25395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 745:
-#line 6281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_MULTILINESTRING; }
-#line 25401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 746:
-#line 6282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_POLYGON; }
-#line 25407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25419 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 747:
-#line 6283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6274 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.geom_type)= Field::GEOM_MULTIPOLYGON; }
-#line 25413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 748:
-#line 6287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25419 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 749:
-#line 6291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25437 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 750:
-#line 6292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 751:
-#line 6296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25437 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 752:
-#line 6297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25455 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 753:
-#line 6301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 754:
-#line 6302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25455 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 755:
-#line 6303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25473 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 756:
-#line 6304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6295 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25479 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 757:
-#line 6305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25473 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 758:
-#line 6309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_LONG; }
-#line 25479 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 759:
-#line 6310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_TINY; }
-#line 25485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 760:
-#line 6311 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_SHORT; }
-#line 25491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 761:
-#line 6312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_INT24; }
-#line 25497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 762:
-#line 6313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_LONGLONG; }
-#line 25503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 763:
-#line 6318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.field_type)= thd->variables.sql_mode & MODE_REAL_AS_FLOAT ?
               MYSQL_TYPE_FLOAT : MYSQL_TYPE_DOUBLE;
           }
-#line 25512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 764:
-#line 6323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_DOUBLE; }
-#line 25518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 765:
-#line 6325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.field_type)=MYSQL_TYPE_DOUBLE; }
-#line 25524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25536 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 766:
-#line 6330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6321 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->srid= 0; }
-#line 25530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 767:
-#line 6333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_field->srid=atoi((yyvsp[0].lex_str).str);
           }
-#line 25538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 768:
-#line 6340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->dec=Lex->length= (char*)0; }
-#line 25544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 769:
-#line 6342 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->dec= (char*)0; }
-#line 25550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 770:
-#line 6344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 771:
-#line 6349 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->length=(yyvsp[-3].lex_str).str;
             lex->dec=(yyvsp[-1].lex_str).str;
           }
-#line 25566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 772:
-#line 6357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25584 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 773:
-#line 6358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6349 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 774:
-#line 6362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25584 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 775:
-#line 6363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 776:
-#line 6367 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 777:
-#line 6368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->flags|= UNSIGNED_FLAG;}
-#line 25602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 778:
-#line 6369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->flags|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
-#line 25608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 779:
-#line 6373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->length= (yyvsp[-1].lex_str).str; }
-#line 25614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 780:
-#line 6374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->length= (yyvsp[-1].lex_str).str; }
-#line 25620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 781:
-#line 6375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->length= (yyvsp[-1].lex_str).str; }
-#line 25626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 782:
-#line 6376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6367 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->length= (yyvsp[-1].lex_str).str; }
-#line 25632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 783:
-#line 6379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->length=(char*) 0; /* use default length */ }
-#line 25638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 784:
-#line 6380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 25644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 785:
-#line 6384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 786:
-#line 6385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 787:
-#line 6389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 788:
-#line 6390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 789:
-#line 6394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 791:
-#line 6399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->flags&= ~ NOT_NULL_FLAG; }
-#line 25680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 792:
-#line 6400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->flags|= NOT_NULL_FLAG; }
-#line 25686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 793:
-#line 6401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->def= (yyvsp[0].item); }
-#line 25692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 794:
-#line 6403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
             if (item == NULL)
               MYSQL_YYABORT;
             Lex->last_field->on_update= item;
           }
-#line 25703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 795:
-#line 6409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; }
-#line 25709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 796:
-#line 6411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX *lex=Lex;
             lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 25719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25731 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 797:
-#line 6417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6408 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->last_field->flags|= PRI_KEY_FLAG | NOT_NULL_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 25729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 798:
-#line 6423 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6414 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->last_field->flags|= UNIQUE_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 25739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 799:
-#line 6429 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->last_field->flags|= UNIQUE_KEY_FLAG;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; 
           }
-#line 25749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 800:
-#line 6434 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->comment= (yyvsp[0].lex_str); }
-#line 25755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 801:
-#line 6436 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->charset && !my_charset_same(Lex->charset,(yyvsp[0].charset)))
               my_yyabort_error((ER_COLLATION_CHARSET_MISMATCH, MYF(0),
                                 (yyvsp[0].charset)->name,Lex->charset->csname));
             Lex->last_field->charset= (yyvsp[0].charset);
           }
-#line 25766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 802:
-#line 6443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6434 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -25774,11 +25786,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), true, &Lex->last_field->option_list,
                                   &Lex->option_list_last);
           }
-#line 25778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 803:
-#line 6451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -25786,30 +25798,30 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), false, &Lex->last_field->option_list,
                                   &Lex->option_list_last);
           }
-#line 25790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 804:
-#line 6459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].ulonglong_number), &Lex->last_field->option_list,
                                   &Lex->option_list_last, thd->mem_root);
           }
-#line 25800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 805:
-#line 6465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), &Lex->last_field->option_list, &Lex->option_list_last);
           }
-#line 25809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 806:
-#line 6474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyval.field_type)= (yyvsp[-1].field_type);
 
@@ -25820,214 +25832,214 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
           }
           Lex->set_last_field_type((yyvsp[-1].field_type));
         }
-#line 25824 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 807:
-#line 6489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 25834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 808:
-#line 6495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6486 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=(yyvsp[0].item); }
-#line 25840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 809:
-#line 6499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 810:
-#line 6500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 811:
-#line 6505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,MY_CS_PRIMARY,MYF(0))))
               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 25861 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 812:
-#line 6509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= &my_charset_bin; }
-#line 25867 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25879 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 813:
-#line 6513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=(yyvsp[0].charset);   }
-#line 25873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25885 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 814:
-#line 6514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=NULL; }
-#line 25879 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25891 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 815:
-#line 6518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= NULL; }
-#line 25885 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 816:
-#line 6519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= (yyvsp[0].charset); }
-#line 25891 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 817:
-#line 6524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6515 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,MY_CS_PRIMARY,MYF(0))) &&
                 !((yyval.charset)=get_old_charset_by_name((yyvsp[0].lex_str).str)))
               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 25901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 818:
-#line 6529 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= &my_charset_bin; }
-#line 25907 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 819:
-#line 6533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=(yyvsp[0].charset);   }
-#line 25913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 820:
-#line 6534 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=NULL; }
-#line 25919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 821:
-#line 6539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.charset)= mysqld_collation_get_by_name((yyvsp[0].lex_str).str)))
               MYSQL_YYABORT;
           }
-#line 25928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 822:
-#line 6546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=NULL; }
-#line 25934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 823:
-#line 6547 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=(yyvsp[0].charset); }
-#line 25940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25952 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 824:
-#line 6551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=(yyvsp[0].charset); }
-#line 25946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 825:
-#line 6552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)=NULL; }
-#line 25952 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 826:
-#line 6556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6547 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 827:
-#line 6557 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 25964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 828:
-#line 6561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= (yyvsp[0].charset); }
-#line 25970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25982 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 829:
-#line 6562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.charset)= &my_charset_latin1; }
-#line 25976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 830:
-#line 6564 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.charset)= get_charset_by_csname("ucs2", MY_CS_PRIMARY,MYF(0))))
               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), "ucs2"));
           }
-#line 25985 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 25997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 831:
-#line 6571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { bincmp_collation(NULL, false); }
-#line 25991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 832:
-#line 6572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6563 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { bincmp_collation(&my_charset_bin, false); }
-#line 25997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 833:
-#line 6573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6564 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { bincmp_collation((yyvsp[-1].charset), (yyvsp[0].num)); }
-#line 26003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 834:
-#line 6574 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { bincmp_collation(NULL, true); }
-#line 26009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 835:
-#line 6575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { bincmp_collation((yyvsp[0].charset), true); }
-#line 26015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 836:
-#line 6579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= false; }
-#line 26021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 837:
-#line 6580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= true; }
-#line 26027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 838:
-#line 6585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6576 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           if ((yyvsp[0].ulong_num) == 0)
           {
@@ -26035,148 +26047,148 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             MYSQL_YYABORT;
           }
         }
-#line 26039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 839:
-#line 6593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6584 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[-2].ulong_num); }
-#line 26045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 840:
-#line 6597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6588 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= 0; }
-#line 26051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 841:
-#line 6598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= 1 << MY_STRXFRM_DESC_SHIFT; }
-#line 26057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 842:
-#line 6602 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= 1 << MY_STRXFRM_REVERSE_SHIFT; }
-#line 26063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 843:
-#line 6605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6596 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= 0; }
-#line 26069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 844:
-#line 6606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
-#line 26075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 845:
-#line 6607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[-1].ulong_num) | (yyvsp[0].ulong_num); }
-#line 26081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 846:
-#line 6608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6599 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num) ; }
-#line 26087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 847:
-#line 6613 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6604 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyval.ulong_num)= (yyvsp[0].ulong_num) < 1 ? 1 : ((yyvsp[0].ulong_num) > MY_STRXFRM_NLEVELS ? MY_STRXFRM_NLEVELS : (yyvsp[0].ulong_num));
           (yyval.ulong_num)--;
         }
-#line 26096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 848:
-#line 6621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyval.ulong_num)= (1 | (yyvsp[0].ulong_num)) << (yyvsp[-1].ulong_num);
         }
-#line 26104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 849:
-#line 6627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
-#line 26110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 850:
-#line 6628 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6619 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)|= (yyvsp[0].ulong_num); }
-#line 26116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 851:
-#line 6633 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6624 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           uint start= (yyvsp[-2].ulong_num);
           uint end= (yyvsp[0].ulong_num);
           for ((yyval.ulong_num)= 0; start <= end; start++)
             (yyval.ulong_num)|= (1 << start);
         }
-#line 26127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 852:
-#line 6642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6633 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
-#line 26133 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 853:
-#line 6643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
-#line 26139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26151 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 854:
-#line 6647 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6638 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= 0; }
-#line 26145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 855:
-#line 6648 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6639 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
-#line 26151 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26163 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 858:
-#line 6662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.table)=(yyvsp[-3].table);
           }
-#line 26159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 859:
-#line 6669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ref_list.empty(); }
-#line 26165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 861:
-#line 6675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Key_part_spec *key= new (thd->mem_root) Key_part_spec((yyvsp[0].lex_str), 0);
             if (key == NULL)
               MYSQL_YYABORT;
             Lex->ref_list.push_back(key, thd->mem_root);
           }
-#line 26176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 862:
-#line 6682 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6673 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Key_part_spec *key= new (thd->mem_root) Key_part_spec((yyvsp[0].lex_str), 0);
             if (key == NULL)
@@ -26185,181 +26197,181 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->ref_list.empty();
             lex->ref_list.push_back(key, thd->mem_root);
           }
-#line 26189 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 863:
-#line 6694 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->fk_match_option= Foreign_key::FK_MATCH_UNDEF; }
-#line 26195 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 864:
-#line 6696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->fk_match_option= Foreign_key::FK_MATCH_FULL; }
-#line 26201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 865:
-#line 6698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6689 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->fk_match_option= Foreign_key::FK_MATCH_PARTIAL; }
-#line 26207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26219 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 866:
-#line 6700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6691 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->fk_match_option= Foreign_key::FK_MATCH_SIMPLE; }
-#line 26213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 867:
-#line 6705 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->fk_update_opt= FK_OPTION_UNDEF;
             lex->fk_delete_opt= FK_OPTION_UNDEF;
           }
-#line 26223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 868:
-#line 6711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->fk_update_opt= (yyvsp[0].m_fk_option);
             lex->fk_delete_opt= FK_OPTION_UNDEF;
           }
-#line 26233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 869:
-#line 6717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->fk_update_opt= FK_OPTION_UNDEF;
             lex->fk_delete_opt= (yyvsp[0].m_fk_option);
           }
-#line 26243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26255 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 870:
-#line 6724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->fk_update_opt= (yyvsp[-3].m_fk_option);
             lex->fk_delete_opt= (yyvsp[0].m_fk_option);
           }
-#line 26253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26265 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 871:
-#line 6731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6722 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->fk_update_opt= (yyvsp[0].m_fk_option);
             lex->fk_delete_opt= (yyvsp[-3].m_fk_option);
           }
-#line 26263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 872:
-#line 6739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_fk_option)= FK_OPTION_RESTRICT; }
-#line 26269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 873:
-#line 6740 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_fk_option)= FK_OPTION_CASCADE; }
-#line 26275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 874:
-#line 6741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_fk_option)= FK_OPTION_SET_NULL; }
-#line 26281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 875:
-#line 6742 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_fk_option)= FK_OPTION_NO_ACTION; }
-#line 26287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 876:
-#line 6743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_fk_option)= FK_OPTION_SET_DEFAULT; }
-#line 26293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 877:
-#line 6747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_type)= Key::PRIMARY; }
-#line 26299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 878:
-#line 6748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_type)= Key::UNIQUE; }
-#line 26305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 879:
-#line 6752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 880:
-#line 6753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 881:
-#line 6757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 883:
-#line 6762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 884:
-#line 6763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 885:
-#line 6764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 886:
-#line 6768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_type)= Key::MULTIPLE; }
-#line 26347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 887:
-#line 6769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_type)= Key::UNIQUE; }
-#line 26353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 888:
-#line 6773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_type)= Key::FULLTEXT;}
-#line 26359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 889:
-#line 6778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 #ifdef HAVE_SPATIAL
             (yyval.key_type)= Key::SPATIAL;
@@ -26368,101 +26380,101 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                               sym_group_geom.needed_define));
 #endif
           }
-#line 26372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 890:
-#line 6789 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6780 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 891:
-#line 6790 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6781 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->option_list= Lex->option_list; }
-#line 26384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 892:
-#line 6794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 893:
-#line 6795 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6786 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->option_list= Lex->option_list; }
-#line 26396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 894:
-#line 6799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6790 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 895:
-#line 6800 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->option_list= Lex->option_list; }
-#line 26408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 902:
-#line 6819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
-#line 26414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 903:
-#line 6820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6811 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= (yyvsp[0].key_alg); }
-#line 26420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 904:
-#line 6824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
-#line 26426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 905:
-#line 6825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6816 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= (yyvsp[0].key_alg); }
-#line 26432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 906:
-#line 6826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= (yyvsp[0].key_alg); }
-#line 26438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 907:
-#line 6830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
-#line 26444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 908:
-#line 6832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6823 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
-#line 26450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 909:
-#line 6837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6828 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->key_create_info.block_size= (yyvsp[0].ulong_num); }
-#line 26456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 910:
-#line 6839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_key->key_create_info.comment= (yyvsp[0].lex_str); }
-#line 26462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 911:
-#line 6841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -26470,11 +26482,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), true, &Lex->option_list,
                                   &Lex->option_list_last);
           }
-#line 26474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 912:
-#line 6849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH)
               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].lex_str).str));
@@ -26482,85 +26494,85 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].lex_str), false, &Lex->option_list,
                                   &Lex->option_list_last);
           }
-#line 26486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 913:
-#line 6857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), (yyvsp[0].ulonglong_number), &Lex->option_list,
                                   &Lex->option_list_last, thd->mem_root);
           }
-#line 26496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 914:
-#line 6863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             new (thd->mem_root)
               engine_option_value((yyvsp[-2].lex_str), &Lex->option_list, &Lex->option_list_last);
           }
-#line 26505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26517 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 919:
-#line 6881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (plugin_is_ready(&(yyvsp[0].lex_str), MYSQL_FTPARSER_PLUGIN))
               Lex->last_key->key_create_info.parser_name= (yyvsp[0].lex_str);
             else
               my_yyabort_error((ER_FUNCTION_NOT_DEFINED, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 26516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 920:
-#line 6890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= HA_KEY_ALG_BTREE; }
-#line 26522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 921:
-#line 6891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= HA_KEY_ALG_RTREE; }
-#line 26528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26540 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 922:
-#line 6892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.key_alg)= HA_KEY_ALG_HASH; }
-#line 26534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 923:
-#line 6897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
           }
-#line 26542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 924:
-#line 6901 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
           }
-#line 26550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 925:
-#line 6908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.key_part)= new (thd->mem_root) Key_part_spec((yyvsp[0].lex_str), 0);
             if ((yyval.key_part) == NULL)
               MYSQL_YYABORT;
           }
-#line 26560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 926:
-#line 6914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6905 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             int key_part_len= atoi((yyvsp[-1].lex_str).str);
             if (!key_part_len)
@@ -26569,47 +26581,47 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.key_part) == NULL)
               MYSQL_YYABORT;
           }
-#line 26573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 927:
-#line 6925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6916 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= null_lex_str; }
-#line 26579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 928:
-#line 6926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 26585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 929:
-#line 6930 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= null_lex_str; }
-#line 26591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26603 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 930:
-#line 6931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6922 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 26597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 931:
-#line 6936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
-#line 26603 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 932:
-#line 6938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
-#line 26609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 933:
-#line 6946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->name= null_lex_str;
             Lex->only_view= FALSE;
@@ -26623,11 +26635,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->create_info.storage_media= HA_SM_DEFAULT;
             DBUG_ASSERT(!Lex->m_sql_cmd);
           }
-#line 26627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26639 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 934:
-#line 6960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Lex->select_lex.add_table_to_list(thd, (yyvsp[0].table), NULL,
                                                    TL_OPTION_UPDATING,
@@ -26637,11 +26649,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->select_lex.db= (Lex->select_lex.table_list.first)->db;
             Lex->create_last_non_select_table= Lex->last_table();
           }
-#line 26641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 935:
-#line 6970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Lex->m_sql_cmd)
             {
@@ -26651,20 +26663,20 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 26655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26667 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 936:
-#line 6980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_info.default_table_charset= NULL;
             Lex->create_info.used_fields= 0;
           }
-#line 26664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 937:
-#line 6985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command=SQLCOM_ALTER_DB;
@@ -26673,11 +26685,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 lex->copy_db_to(&lex->name.str, &lex->name.length))
               MYSQL_YYABORT;
           }
-#line 26677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 938:
-#line 6994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->sphead)
@@ -26685,11 +26697,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_ALTER_DB_UPGRADE;
             lex->name= (yyvsp[-4].lex_str);
           }
-#line 26689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 939:
-#line 7002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 6993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -26697,22 +26709,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE"));
             bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
           }
-#line 26701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26713 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 940:
-#line 7010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
             lex->sql_command= SQLCOM_ALTER_PROCEDURE;
             lex->spname= (yyvsp[-2].spname);
           }
-#line 26712 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26724 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 941:
-#line 7017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -26720,22 +26732,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"));
             bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
           }
-#line 26724 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26736 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 942:
-#line 7025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
             lex->sql_command= SQLCOM_ALTER_FUNCTION;
             lex->spname= (yyvsp[-2].spname);
           }
-#line 26735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 943:
-#line 7032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7023 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -26743,17 +26755,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "ALTER VIEW"));
             lex->create_view_mode= VIEW_ALTER;
           }
-#line 26747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 944:
-#line 7040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26765 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 945:
-#line 7047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -26762,17 +26774,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->create_view_algorithm= VIEW_ALGORITHM_INHERIT;
             lex->create_view_mode= VIEW_ALTER;
           }
-#line 26766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 946:
-#line 7056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 26772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 947:
-#line 7058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* 
               It is safe to use Lex->spname because
@@ -26789,11 +26801,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->sql_command= SQLCOM_ALTER_EVENT;
             Lex->stmt_definition_begin= (yyvsp[-2].simple_string);
           }
-#line 26793 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26805 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 948:
-#line 7079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyvsp[-4].num) || (yyvsp[-3].num) || (yyvsp[-2].num) || (yyvsp[-1].num) || (yyvsp[0].num)))
             {
@@ -26807,93 +26819,93 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->sql_command= SQLCOM_ALTER_EVENT;
             Lex->stmt_definition_end= (char*)YYLIP->get_cpp_ptr();
           }
-#line 26811 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 949:
-#line 7093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE;
           }
-#line 26820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 950:
-#line 7098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP;
           }
-#line 26829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 951:
-#line 7103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE;
           }
-#line 26838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 952:
-#line 7108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE;
           }
-#line 26847 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 953:
-#line 7113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7104 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_ALTER_SERVER;
             lex->server_options.reset((yyvsp[0].lex_str));
           }
-#line 26857 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 954:
-#line 7117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 26863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 955:
-#line 7121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;}
-#line 26869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 956:
-#line 7122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 26875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 957:
-#line 7123 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 26881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 958:
-#line 7124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 26887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 959:
-#line 7128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;}
-#line 26893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26905 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 960:
-#line 7130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Use lex's spname to hold the new name.
@@ -26902,35 +26914,35 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->spname= (yyvsp[0].spname); 
             (yyval.num)= 1;
           }
-#line 26906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 961:
-#line 7141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;}
-#line 26912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 962:
-#line 7142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 26918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 963:
-#line 7146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= null_lex_str; }
-#line 26924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 964:
-#line 7147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 26930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 966:
-#line 7153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->m_sql_cmd= new (thd->mem_root)
               Sql_cmd_discard_import_tablespace(
@@ -26938,11 +26950,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 26942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 967:
-#line 7161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->m_sql_cmd= new (thd->mem_root)
               Sql_cmd_discard_import_tablespace(
@@ -26950,31 +26962,31 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 26954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 973:
-#line 7183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_DROP_PARTITION;
             DBUG_ASSERT(!Lex->if_exists());
             Lex->create_info.add((yyvsp[-1].object_ddl_options));
           }
-#line 26964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 974:
-#line 7190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_info.flags|= Alter_info::ALTER_REBUILD_PARTITION;
             lex->no_write_to_binlog= (yyvsp[-1].num);
           }
-#line 26974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 26986 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 975:
-#line 7197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->no_write_to_binlog= (yyvsp[-1].num);
@@ -26985,11 +26997,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 26989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 977:
-#line 7210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->no_write_to_binlog= (yyvsp[-1].num);
@@ -27000,11 +27012,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
                MYSQL_YYABORT;
           }
-#line 27004 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 978:
-#line 7221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->check_opt.init();
@@ -27014,11 +27026,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 980:
-#line 7233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7224 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->no_write_to_binlog= (yyvsp[-1].num);
@@ -27029,22 +27041,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 982:
-#line 7245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_info.flags|= Alter_info::ALTER_COALESCE_PARTITION;
             lex->no_write_to_binlog= (yyvsp[-1].num);
             lex->alter_info.num_parts= (yyvsp[0].ulong_num);
           }
-#line 27044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 983:
-#line 7252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->check_opt.init();
@@ -27054,11 +27066,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27058 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27070 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 985:
-#line 7264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             size_t dummy;
@@ -27081,27 +27093,27 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 986:
-#line 7290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_REMOVE_PARTITIONING;
           }
-#line 27093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 987:
-#line 7297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_ALL_PARTITION;
           }
-#line 27101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27113 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 989:
-#line 7306 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->part_info= new (thd->mem_root) partition_info();
@@ -27115,34 +27127,34 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->create_info.set((yyvsp[-1].object_ddl_options));
             lex->no_write_to_binlog= (yyvsp[0].num);
           }
-#line 27119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 990:
-#line 7320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7311 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 992:
-#line 7326 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7317 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->part_info->num_parts= lex->part_info->partitions.elements;
           }
-#line 27134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 993:
-#line 7331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->part_info->num_parts= (yyvsp[0].ulong_num);
           }
-#line 27142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 994:
-#line 7338 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7329 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->part_info= new (thd->mem_root) partition_info();
@@ -27153,48 +27165,48 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             lex->no_write_to_binlog= (yyvsp[0].num);
           }
-#line 27157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27169 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 996:
-#line 7353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_TABLE_REORG;
           }
-#line 27165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 997:
-#line 7357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_REORGANIZE_PARTITION;
           }
-#line 27173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 998:
-#line 7361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             partition_info *part_info= Lex->part_info;
             part_info->num_parts= part_info->partitions.elements;
           }
-#line 27182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 999:
-#line 7368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1000:
-#line 7369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1001:
-#line 7374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->alter_info.partition_names.push_back((yyvsp[0].lex_str).str,
                                                           thd->mem_root))
@@ -27203,66 +27215,66 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 27207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27219 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1004:
-#line 7395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->alter_info.flags|= Alter_info::ALTER_ADD_COLUMN;
           }
-#line 27216 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1005:
-#line 7403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_last_non_select_table= Lex->last_table();
           }
-#line 27224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1006:
-#line 7407 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->create_last_non_select_table= Lex->last_table();
             Lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
           }
-#line 27233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1007:
-#line 7412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_ADD_COLUMN |
                                     Alter_info::ALTER_ADD_INDEX;
           }
-#line 27242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1008:
-#line 7418 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN;
             Lex->create_last_non_select_table= Lex->last_table();
             Lex->last_field->change= (yyvsp[-2].lex_str).str;
           }
-#line 27252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1009:
-#line 7425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7416 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN;
             Lex->create_last_non_select_table= Lex->last_table();
             Lex->last_field->change= Lex->last_field->field_name;
           }
-#line 27262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1010:
-#line 7431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7422 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_drop *ad= (new (thd->mem_root)
@@ -27272,11 +27284,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
             lex->alter_info.flags|= Alter_info::ALTER_DROP_COLUMN;
           }
-#line 27276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1011:
-#line 7441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_drop *ad= (new (thd->mem_root)
@@ -27286,11 +27298,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
             lex->alter_info.flags|= Alter_info::DROP_FOREIGN_KEY;
           }
-#line 27290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1012:
-#line 7451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_drop *ad= (new (thd->mem_root)
@@ -27301,11 +27313,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
             lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX;
           }
-#line 27305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1013:
-#line 7462 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_drop *ad= (new (thd->mem_root)
@@ -27315,31 +27327,31 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
             lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX;
           }
-#line 27319 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1014:
-#line 7472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->alter_info.keys_onoff= Alter_info::DISABLE;
             lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF;
           }
-#line 27329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1015:
-#line 7478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->alter_info.keys_onoff= Alter_info::ENABLE;
             lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF;
           }
-#line 27339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1016:
-#line 7484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_column *ac= new (thd->mem_root) Alter_column((yyvsp[-3].lex_str).str,(yyvsp[0].item));
@@ -27348,11 +27360,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.alter_list.push_back(ac, thd->mem_root);
             lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT;
           }
-#line 27352 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1017:
-#line 7493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_column *ac= (new (thd->mem_root)
@@ -27362,11 +27374,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->alter_info.alter_list.push_back(ac, thd->mem_root);
             lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT;
           }
-#line 27366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1018:
-#line 7503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7494 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             size_t dummy;
@@ -27382,11 +27394,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->name= (yyvsp[0].table)->table;
             lex->alter_info.flags|= Alter_info::ALTER_RENAME;
           }
-#line 27386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1019:
-#line 7519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!(yyvsp[-1].charset))
             {
@@ -27400,244 +27412,239 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Lex->alter_info.flags|= Alter_info::ALTER_OPTIONS;
           }
-#line 27404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1020:
-#line 7533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->alter_info.flags|= Alter_info::ALTER_OPTIONS;
-            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
-                !lex->create_info.db_type)
-            {
-              lex->create_info.used_fields&= ~HA_CREATE_USED_ENGINE;
-            }
           }
-#line 27418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1021:
-#line 7543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7529 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_RECREATE;
           }
-#line 27426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1022:
-#line 7547 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->alter_info.flags|= Alter_info::ALTER_ORDER;
           }
-#line 27435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1030:
-#line 7564 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.requested_algorithm=
               Alter_info::ALTER_TABLE_ALGORITHM_DEFAULT;
           }
-#line 27444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27451 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1031:
-#line 7569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->alter_info.set_requested_algorithm(&(yyvsp[0].lex_str)))
               my_yyabort_error((ER_UNKNOWN_ALTER_ALGORITHM, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 27453 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1032:
-#line 7577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7563 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.requested_lock=
               Alter_info::ALTER_TABLE_LOCK_DEFAULT;
           }
-#line 27462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27469 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1033:
-#line 7582 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->alter_info.set_requested_lock(&(yyvsp[0].lex_str)))
               my_yyabort_error((ER_UNKNOWN_ALTER_LOCK, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 27471 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1034:
-#line 7589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1035:
-#line 7590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7576 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1036:
-#line 7594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 0;}
-#line 27489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1037:
-#line 7595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 1;}
-#line 27495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1038:
-#line 7599 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 0;}
-#line 27501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1044:
-#line 7613 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7599 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 1;}
-#line 27507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1045:
-#line 7615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.requested_lock=
               Alter_info::ALTER_TABLE_LOCK_NONE;
           }
-#line 27516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27523 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1046:
-#line 7622 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->drop_mode= DROP_DEFAULT; }
-#line 27522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1047:
-#line 7623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->drop_mode= DROP_RESTRICT; }
-#line 27528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1048:
-#line 7624 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7610 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->drop_mode= DROP_CASCADE; }
-#line 27534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1049:
-#line 7628 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7614 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27540 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27547 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1050:
-#line 7630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7616 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             store_position_for_column((yyvsp[0].lex_str).str);
             Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER;
           }
-#line 27549 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1051:
-#line 7635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             store_position_for_column(first_keyword);
             Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER;
           }
-#line 27558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27565 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1052:
-#line 7642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7628 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27564 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27571 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1053:
-#line 7643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7629 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27577 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1054:
-#line 7644 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27583 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1055:
-#line 7645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27589 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1056:
-#line 7650 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_SLAVE_START;
             lex->type = 0;
             /* If you change this code don't forget to update SLAVE START too */
           }
-#line 27593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1057:
-#line 7657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1058:
-#line 7659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_SLAVE_ALL_START;
             lex->type = 0;
           }
-#line 27609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1059:
-#line 7664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7650 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1060:
-#line 7666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_SLAVE_STOP;
             lex->type = 0;
             /* If you change this code don't forget to update SLAVE STOP too */
           }
-#line 27626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27633 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1061:
-#line 7673 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_SLAVE_ALL_STOP;
             lex->type = 0;
             /* If you change this code don't forget to update SLAVE STOP too */
           }
-#line 27637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1062:
-#line 7683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_BEGIN;
@@ -27650,103 +27657,103 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             lex->start_transaction_opt= (yyvsp[0].num);
           }
-#line 27654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1063:
-#line 7699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= 0;
           }
-#line 27662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1064:
-#line 7703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7689 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= (yyvsp[0].num);
           }
-#line 27670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1065:
-#line 7710 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= (yyvsp[0].num);
           }
-#line 27678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1066:
-#line 7714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= (yyvsp[-2].num) | (yyvsp[0].num);
           }
-#line 27686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27693 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1067:
-#line 7721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
           }
-#line 27694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1068:
-#line 7725 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= MYSQL_START_TRANS_OPT_READ_ONLY;
           }
-#line 27702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1069:
-#line 7729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= MYSQL_START_TRANS_OPT_READ_WRITE;
           }
-#line 27710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1070:
-#line 7735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->slave_thd_opt= 0; }
-#line 27716 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1071:
-#line 7737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7723 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1074:
-#line 7746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1075:
-#line 7747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->slave_thd_opt|=SLAVE_SQL; }
-#line 27734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1076:
-#line 7748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->slave_thd_opt|=SLAVE_IO; }
-#line 27740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1077:
-#line 7752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1078:
-#line 7754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7740 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (((lex->mi.log_file_name || lex->mi.pos) &&
@@ -27755,60 +27762,60 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                   (lex->mi.relay_log_name && lex->mi.relay_log_pos)))
                my_yyabort_error((ER_BAD_SLAVE_UNTIL_COND, MYF(0)));
           }
-#line 27759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1079:
-#line 7763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->mi.gtid_pos_str = (yyvsp[0].lex_str);
           }
-#line 27767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1082:
-#line 7775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7761 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_CHECKSUM;
             /* Will be overriden during execution. */
             YYPS->m_lock_type= TL_UNLOCK;
           }
-#line 27778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27785 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1083:
-#line 7782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27791 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1084:
-#line 7786 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags= 0; }
-#line 27790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27797 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1085:
-#line 7787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags= T_QUICK; }
-#line 27796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1086:
-#line 7788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags= T_EXTEND; }
-#line 27802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1088:
-#line 7793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7779 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->only_view= TRUE; }
-#line 27808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27815 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1090:
-#line 7798 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7784 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_REPAIR;
@@ -27818,11 +27825,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Will be overriden during execution. */
             YYPS->m_lock_type= TL_UNLOCK;
           }
-#line 27822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1091:
-#line 7808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= thd->lex;
             DBUG_ASSERT(!lex->m_sql_cmd);
@@ -27830,65 +27837,65 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1092:
-#line 7818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags = T_MEDIUM; }
-#line 27840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27847 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1093:
-#line 7819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7805 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1094:
-#line 7823 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1095:
-#line 7824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27865 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1096:
-#line 7828 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7814 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_QUICK; }
-#line 27864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27871 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1097:
-#line 7829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_EXTEND; }
-#line 27870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27877 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1098:
-#line 7830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7816 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.sql_flags|= TT_USEFRM; }
-#line 27876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27883 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1099:
-#line 7834 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 27882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27889 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1100:
-#line 7835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.sql_flags|= TT_FROM_MYSQL; }
-#line 27888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27895 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1101:
-#line 7840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_ANALYZE;
@@ -27898,11 +27905,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Will be overriden during execution. */
             YYPS->m_lock_type= TL_UNLOCK;
           }
-#line 27902 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1102:
-#line 7850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= thd->lex;
             DBUG_ASSERT(!lex->m_sql_cmd);
@@ -27910,149 +27917,149 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 27914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1106:
-#line 7870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27920 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1107:
-#line 7872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             thd->lex->with_persistent_for_clause= TRUE;
           }
-#line 27928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27935 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1108:
-#line 7879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1109:
-#line 7881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1110:
-#line 7884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1111:
-#line 7886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX* lex= thd->lex;
             lex->column_list= new (thd->mem_root) List;
             if (lex->column_list == NULL)
               MYSQL_YYABORT;
           }
-#line 27957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1113:
-#line 7897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1114:
-#line 7899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX* lex= thd->lex;
             lex->index_list= new (thd->mem_root) List;
             if (lex->index_list == NULL)
               MYSQL_YYABORT;
           }
-#line 27974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1116:
-#line 7911 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 27980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1117:
-#line 7913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->column_list->push_back((LEX_STRING*)
                 thd->memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)), thd->mem_root);
           }
-#line 27989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 27996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1118:
-#line 7918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7904 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->column_list->push_back((LEX_STRING*)
                 thd->memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)), thd->mem_root);
           }
-#line 27998 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28005 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1119:
-#line 7926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28004 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28011 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1122:
-#line 7933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->index_list->push_back((LEX_STRING*)
                                        thd->memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)),
                                        thd->mem_root);
           }
-#line 28014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1123:
-#line 7940 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX_STRING str= {(char*) "PRIMARY", 7};
             Lex->index_list->push_back((LEX_STRING*)
                                         thd->memdup(&str, sizeof(LEX_STRING)),
                                         thd->mem_root);
           }
-#line 28025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1124:
-#line 7950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
             Lex->comment= (yyvsp[0].lex_str);
             Lex->ident.str=    NULL;
             Lex->ident.length= 0;
           }
-#line 28036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28043 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1125:
-#line 7958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
             Lex->comment= (yyvsp[-3].lex_str);
             Lex->ident=   (yyvsp[0].lex_str);
           }
-#line 28046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28053 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1127:
-#line 7967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->only_view= TRUE; }
-#line 28052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1129:
-#line 7971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
@@ -28062,11 +28069,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Will be overriden during execution. */
             YYPS->m_lock_type= TL_UNLOCK;
           }
-#line 28066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1130:
-#line 7981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= thd->lex;
             if (lex->sphead)
@@ -28076,83 +28083,83 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 28080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1131:
-#line 7993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags = T_MEDIUM; }
-#line 28086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1132:
-#line 7994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1133:
-#line 7998 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1134:
-#line 7999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28111 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1135:
-#line 8003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_QUICK; }
-#line 28110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1136:
-#line 8004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_FAST; }
-#line 28116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28123 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1137:
-#line 8005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_MEDIUM; }
-#line 28122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28129 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1138:
-#line 8006 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_EXTEND; }
-#line 28128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28135 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1139:
-#line 8007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
-#line 28134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1140:
-#line 8008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
-#line 28140 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28147 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1141:
-#line 8012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7998 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 28146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1142:
-#line 8013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 7999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
-#line 28152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1143:
-#line 8018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_OPTIMIZE;
@@ -28162,11 +28169,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* Will be overriden during execution. */
             YYPS->m_lock_type= TL_UNLOCK;
           }
-#line 28166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1144:
-#line 8028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= thd->lex;
             DBUG_ASSERT(!lex->m_sql_cmd);
@@ -28174,71 +28181,71 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 28178 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1145:
-#line 8038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 28184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1146:
-#line 8039 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 28190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1147:
-#line 8040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 28196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28203 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1148:
-#line 8045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_RENAME_TABLE;
           }
-#line 28204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1149:
-#line 8049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28210 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1150:
-#line 8051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_RENAME_USER;
           }
-#line 28218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1151:
-#line 8058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
                 Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 28228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1152:
-#line 8064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
                 Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 28238 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1155:
-#line 8078 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             SELECT_LEX *sl= lex->current_select;
@@ -28248,146 +28255,146 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                        TL_IGNORE, MDL_EXCLUSIVE))
               MYSQL_YYABORT;
           }
-#line 28252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28259 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1156:
-#line 8091 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.reset();
           }
-#line 28260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1157:
-#line 8095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 28270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28277 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1162:
-#line 8114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL, 0, TL_READ,
                                            MDL_SHARED_READ,
                                            Select->pop_index_hints()))
               MYSQL_YYABORT;
           }
-#line 28281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1163:
-#line 8124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, 0, TL_READ, 
                                            MDL_SHARED_READ,
                                            Select->pop_index_hints()))
               MYSQL_YYABORT;
           }
-#line 28292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1164:
-#line 8133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 28298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1165:
-#line 8134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str) = default_key_cache_base; }
-#line 28304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1166:
-#line 8139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command=SQLCOM_PRELOAD_KEYS;
             lex->alter_info.reset();
           }
-#line 28314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1167:
-#line 8145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1172:
-#line 8160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, (yyvsp[0].num), TL_READ,
                                            MDL_SHARED_READ,
                                            Select->pop_index_hints()))
               MYSQL_YYABORT;
           }
-#line 28331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1173:
-#line 8170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-3].table), NULL, (yyvsp[0].num), TL_READ,
                                            MDL_SHARED_READ,
                                            Select->pop_index_hints()))
               MYSQL_YYABORT;
           }
-#line 28342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1174:
-#line 8180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->alter_info.flags|= Alter_info::ALTER_ADMIN_PARTITION;
           }
-#line 28350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1176:
-#line 8187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->select_lex.alloc_index_hints(thd);
             Select->set_index_hint_type(INDEX_HINT_USE, 
                                         INDEX_HINT_MASK_ALL);
           }
-#line 28360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1178:
-#line 8196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 28366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1180:
-#line 8202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 28372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1181:
-#line 8203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= TL_OPTION_IGNORE_LEAVES; }
-#line 28378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1182:
-#line 8213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SELECT;
           }
-#line 28387 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1185:
-#line 8226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               In order to correctly parse UNION's global ORDER BY we need to
@@ -28395,47 +28402,47 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->current_select->set_braces(true);
           }
-#line 28399 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1186:
-#line 8234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (setup_select_in_parentheses(Lex))
               MYSQL_YYABORT;
           }
-#line 28408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1188:
-#line 8243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->current_select->set_braces(true);
           }
-#line 28416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1189:
-#line 8248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (setup_select_in_parentheses(Lex))
               MYSQL_YYABORT;
           }
-#line 28425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1191:
-#line 8257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             /* Parentheses carry no meaning here */
             lex->current_select->set_braces(false);
           }
-#line 28435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1195:
-#line 8287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[-9].num) && (yyvsp[-1].num))         /* double "INTO" clause */
               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "INTO", "INTO"));
@@ -28443,11 +28450,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyvsp[-2].num) && ((yyvsp[-9].num) || (yyvsp[-1].num))) /* "INTO" with "PROCEDURE ANALYSE" */
               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "PROCEDURE", "INTO"));
           }
-#line 28447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1196:
-#line 8297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             SELECT_LEX *sel= lex->current_select;
@@ -28455,38 +28462,38 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               mysql_init_select(lex);
             lex->current_select->parsing_place= SELECT_LIST;
           }
-#line 28459 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1197:
-#line 8305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 28467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1202:
-#line 8332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->context.table_list=
               Select->context.first_name_resolution_table=
                 Select->table_list.first;
           }
-#line 28477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1205:
-#line 8347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Select->options & SELECT_DISTINCT && Select->options & SELECT_ALL)
               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "ALL", "DISTINCT"));
           }
-#line 28486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28493 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1209:
-#line 8361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* 
               Allow this flag only on the first top-level SELECT statement, if
@@ -28503,11 +28510,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->select_lex.options&= ~OPTION_TO_QUERY_CACHE;
             Lex->select_lex.sql_cache= SELECT_LEX::SQL_NO_CACHE;
           }
-#line 28507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1210:
-#line 8378 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* 
               Allow this flag only on the first top-level SELECT statement, if
@@ -28524,22 +28531,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->select_lex.options|= OPTION_TO_QUERY_CACHE;
             Lex->select_lex.sql_cache= SELECT_LEX::SQL_CACHE;
           }
-#line 28528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1212:
-#line 8399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->current_select->lock_type= TL_WRITE;
             lex->current_select->set_lock_for_tables(TL_WRITE, false);
             lex->safe_to_cache_query=0;
           }
-#line 28539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1213:
-#line 8406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->current_select->lock_type= TL_READ_WITH_SHARED_LOCKS;
@@ -28547,11 +28554,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               set_lock_for_tables(TL_READ_WITH_SHARED_LOCKS, false);
             lex->safe_to_cache_query=0;
           }
-#line 28551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1216:
-#line 8419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8405 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root)
                           Item_field(thd, &thd->lex->current_select->context,
@@ -28562,20 +28569,20 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (thd->lex->current_select->with_wild)++;
           }
-#line 28566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1217:
-#line 8433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_item_to_list(thd, (yyvsp[-1].item)))
               MYSQL_YYABORT;
           }
-#line 28575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1218:
-#line 8438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT((yyvsp[-3].simple_string) < (yyvsp[-1].simple_string));
 
@@ -28594,113 +28601,113 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               (yyvsp[-2].item)->set_name((yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
             }
           }
-#line 28598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1219:
-#line 8459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.simple_string)= (char*) YYLIP->get_tok_start();
           }
-#line 28606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28613 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1220:
-#line 8465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_start();
           }
-#line 28614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1221:
-#line 8471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_end();
           }
-#line 28622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28629 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1222:
-#line 8477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=null_lex_str;}
-#line 28628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1223:
-#line 8478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 28634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1224:
-#line 8479 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 28640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1225:
-#line 8480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 28646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1226:
-#line 8481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8467 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 28652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1227:
-#line 8485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= NOT_FIXED_DEC;  }
-#line 28658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28665 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1228:
-#line 8486 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= NOT_FIXED_DEC;  }
-#line 28664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1229:
-#line 8487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8473 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (yyvsp[-1].ulong_num); }
-#line 28670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1230:
-#line 8491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;  }
-#line 28676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1231:
-#line 8492 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;  }
-#line 28682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1232:
-#line 8493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8479 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (yyvsp[-1].ulong_num); }
-#line 28688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1233:
-#line 8497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8483 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1234:
-#line 8498 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 28700 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28707 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1235:
-#line 8504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Design notes:
@@ -28751,22 +28758,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 28755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1236:
-#line 8555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8541 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* XOR is a proprietary extension */
             (yyval.item)= new (thd->mem_root) Item_func_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1237:
-#line 8562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* See comments in rule expr: expr or expr */
             Item_cond_and *item1;
@@ -28809,141 +28816,141 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 28813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1238:
-#line 8605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= negate_expression(thd, (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1239:
-#line 8611 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_istrue(thd, (yyvsp[-2].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1240:
-#line 8617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8603 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnottrue(thd, (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1241:
-#line 8623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isfalse(thd, (yyvsp[-2].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1242:
-#line 8629 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnotfalse(thd, (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1243:
-#line 8635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1244:
-#line 8641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28883 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1246:
-#line 8651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1247:
-#line 8657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1248:
-#line 8663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_equal(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28920 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1249:
-#line 8669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8655 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= (*(yyvsp[-1].boolfunc2creator))(0)->create(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1250:
-#line 8675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8661 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= all_any_subquery_creator(thd, (yyvsp[-5].item), (yyvsp[-4].boolfunc2creator), (yyvsp[-3].num), (yyvsp[-1].select_lex));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1252:
-#line 8685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8671 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-4].item), (yyvsp[-1].select_lex));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28943 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1253:
-#line 8691 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-5].item), (yyvsp[-1].select_lex));
             if (item == NULL)
@@ -28952,21 +28959,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1254:
-#line 8700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-4].item), true, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28973 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1255:
-#line 8706 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
             (yyvsp[-1].item_list)->push_front((yyvsp[-6].item), thd->mem_root);
@@ -28974,21 +28981,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28985 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1256:
-#line 8714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-5].item), false, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 28988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 28995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1257:
-#line 8720 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8706 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
             (yyvsp[-1].item_list)->push_front((yyvsp[-7].item), thd->mem_root);
@@ -28998,21 +29005,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             item->negate();
             (yyval.item)= item;
           }
-#line 29002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1258:
-#line 8730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8716 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_between(thd, (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1259:
-#line 8736 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8722 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_func_between *item;
             item= new (thd->mem_root) Item_func_between(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item));
@@ -29021,11 +29028,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             item->negate();
             (yyval.item)= item;
           }
-#line 29025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1260:
-#line 8745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item1= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[-3].item));
             Item *item4= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[0].item));
@@ -29035,22 +29042,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1261:
-#line 8755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_like(thd, (yyvsp[-3].item), (yyvsp[-1].item), (yyvsp[0].item),
                                                    Lex->escape_used);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1262:
-#line 8762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_func_like(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].item),
                                                              Lex->escape_used);
@@ -29060,21 +29067,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1263:
-#line 8772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1264:
-#line 8778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-3].item), (yyvsp[0].item));
             if (item == NULL)
@@ -29083,318 +29090,318 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1266:
-#line 8791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8777 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_bit_or(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1267:
-#line 8797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_bit_and(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1268:
-#line 8803 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8789 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_shift_left(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29124 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1269:
-#line 8809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8795 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_shift_right(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1270:
-#line 8815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8801 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_plus(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1271:
-#line 8821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_minus(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29147 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1272:
-#line 8827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29164 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1273:
-#line 8833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1274:
-#line 8839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_mul(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1275:
-#line 8845 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29187 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1276:
-#line 8851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1277:
-#line 8857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_int_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29214 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1278:
-#line 8863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1279:
-#line 8869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8855 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_bit_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1289:
-#line 8898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_eq_creator; }
-#line 29233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1290:
-#line 8899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_ge_creator; }
-#line 29239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1291:
-#line 8900 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_gt_creator; }
-#line 29245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1292:
-#line 8901 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8887 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_le_creator; }
-#line 29251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1293:
-#line 8902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_lt_creator; }
-#line 29257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1294:
-#line 8903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.boolfunc2creator) = &comp_ne_creator; }
-#line 29263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1295:
-#line 8907 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 1; }
-#line 29269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1296:
-#line 8908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8894 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 0; }
-#line 29275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1297:
-#line 8913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 	    (yyval.num)= DYN_COL_NULL; /* automatic type */
             lex->charset= NULL;
             lex->length= lex->dec= 0;
 	  }
-#line 29286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1298:
-#line 8919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8905 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (yyvsp[0].num); }
-#line 29292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1299:
-#line 8924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_INT;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1300:
-#line 8931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_UINT;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1301:
-#line 8938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_DOUBLE;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29325 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1302:
-#line 8945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_DOUBLE;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1303:
-#line 8952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_DOUBLE;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1304:
-#line 8959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= DYN_COL_DECIMAL;
             Lex->charset= NULL;
           }
-#line 29356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29363 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1305:
-#line 8964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->charset= thd->variables.collation_connection; }
-#line 29362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1306:
-#line 8966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_STRING;
             lex->length= lex->dec= 0;
           }
-#line 29372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1307:
-#line 8972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_STRING;
             lex->charset= national_charset_info;
             lex->length= lex->dec= 0;
           }
-#line 29383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1308:
-#line 8979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_DATE;
             lex->charset= NULL;
             lex->length= lex->dec= 0;
           }
-#line 29394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1309:
-#line 8986 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_TIME;
@@ -29402,11 +29409,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->dec= lex->length;
             lex->length= 0;
           }
-#line 29406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1310:
-#line 8994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.num)= DYN_COL_DATETIME;
@@ -29414,11 +29421,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->dec= lex->length;
             lex->length= 0;
           }
-#line 29418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1311:
-#line 9005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 8991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
      LEX *lex= Lex;
      (yyval.dyncol_def)= (DYNCALL_CREATE_DEF *)
@@ -29438,31 +29445,31 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
      else
        (yyval.dyncol_def)->len= 0;
    }
-#line 29442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1312:
-#line 9027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
          (yyval.dyncol_def_list)= new (thd->mem_root) List;
          if ((yyval.dyncol_def_list) == NULL)
            MYSQL_YYABORT;
          (yyval.dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
        }
-#line 29453 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1313:
-#line 9034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9020 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
          (yyvsp[-2].dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
          (yyval.dyncol_def_list)= (yyvsp[-2].dyncol_def_list);
        }
-#line 29462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29469 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1319:
-#line 9047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *i1= new (thd->mem_root) Item_string(thd, (yyvsp[0].lex_str).str,
                                                       (yyvsp[0].lex_str).length,
@@ -29473,113 +29480,113 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1321:
-#line 9058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item_param); }
-#line 29483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1324:
-#line 9062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_concat(thd, (yyvsp[-2].item), (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29493 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1325:
-#line 9068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= (yyvsp[0].item);
           }
-#line 29501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1326:
-#line 9072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_neg(thd, (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1327:
-#line 9078 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_bit_neg(thd, (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1328:
-#line 9084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= negate_expression(thd, (yyvsp[0].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29531 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1329:
-#line 9090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             (yyval.item)= new (thd->mem_root) Item_singlerow_subselect(thd, (yyvsp[-1].select_lex));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1330:
-#line 9096 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[-1].item); }
-#line 29547 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1331:
-#line 9098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
             (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29565 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1332:
-#line 9105 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9091 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
             (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1333:
-#line 9112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_exists_subselect(thd, (yyvsp[-1].select_lex));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1334:
-#line 9118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9104 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= NULL;
             /*
@@ -29603,11 +29610,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               (yyval.item)= (yyvsp[-1].item);
           }
-#line 29607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1335:
-#line 9142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-5].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
             Item_func_match *i1= new (thd->mem_root) Item_func_match(thd, *(yyvsp[-5].item_list),
@@ -29617,22 +29624,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Select->add_ftfunc_to_list(thd, i1);
             (yyval.item)= i1;
           }
-#line 29621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1336:
-#line 9152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= create_func_cast(thd, (yyvsp[0].item), ITEM_CAST_CHAR, NULL, NULL,
                                  &my_charset_bin);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29639 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1337:
-#line 9159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.item)= create_func_cast(thd, (yyvsp[-3].item), (yyvsp[-1].cast_type), lex->length, lex->dec,
@@ -29640,42 +29647,42 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1338:
-#line 9167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_case(thd, *(yyvsp[-2].item_list), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1339:
-#line 9173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= create_func_cast(thd, (yyvsp[-3].item), (yyvsp[-1].cast_type), Lex->length, Lex->dec,
                                  Lex->charset);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29665 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29672 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1340:
-#line 9180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_conv_charset(thd, (yyvsp[-3].item), (yyvsp[-1].charset));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29675 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1341:
-#line 9186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_splocal *il= (yyvsp[-1].item)->get_item_splocal();
             if (il)
@@ -29685,52 +29692,52 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1342:
-#line 9196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_insert_value(thd, Lex->current_context(),
                                                         (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29700 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29707 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1343:
-#line 9204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1344:
-#line 9219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1345:
-#line 9225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-3].item_list), (yyvsp[-1].charset));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29737 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1346:
-#line 9231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_current_user(thd,
                                       Lex->current_context());
@@ -29739,11 +29746,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
             Lex->safe_to_cache_query= 0;
           }
-#line 29743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1347:
-#line 9240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_current_role(thd,
                                       Lex->current_context());
@@ -29752,51 +29759,51 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
             Lex->safe_to_cache_query= 0;
           }
-#line 29756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29763 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1348:
-#line 9249 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_typecast(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1349:
-#line 9255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_dayofmonth(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29776 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1350:
-#line 9261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_hour(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29793 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1351:
-#line 9267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_insert(thd, (yyvsp[-7].item), (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1352:
-#line 9273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             List *list= new (thd->mem_root) List;
             if (list == NULL)
@@ -29810,11 +29817,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1353:
-#line 9287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
             (yyvsp[-1].item_list)->push_front((yyvsp[-5].item), thd->mem_root);
@@ -29825,173 +29832,173 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1354:
-#line 9298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_left(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29839 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1355:
-#line 9304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_minute(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29849 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1356:
-#line 9310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_month(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1357:
-#line 9316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_right(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1358:
-#line 9322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_second(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29879 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1359:
-#line 9328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_time_typecast(thd, (yyvsp[-1].item),
                                       AUTO_SEC_PART_DIGITS);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1360:
-#line 9335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9321 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_datetime_typecast(thd, (yyvsp[-1].item),
                                       AUTO_SEC_PART_DIGITS);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29908 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1361:
-#line 9342 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_add_time(thd, (yyvsp[-3].item), (yyvsp[-1].item), 1, 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29911 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1362:
-#line 9348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9334 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_trim(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1363:
-#line 9354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_ltrim(thd, (yyvsp[-1].item), (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1364:
-#line 9360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_rtrim(thd, (yyvsp[-1].item), (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1365:
-#line 9366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_trim(thd, (yyvsp[-1].item), (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1366:
-#line 9372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_ltrim(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1367:
-#line 9378 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_rtrim(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1368:
-#line 9384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_trim(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1369:
-#line 9390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_trim(thd, (yyvsp[-1].item), (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 29991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 29998 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1370:
-#line 9396 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_user(thd);
             if ((yyval.item) == NULL)
@@ -29999,186 +30006,186 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
             Lex->safe_to_cache_query=0;
           }
-#line 30003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1371:
-#line 9404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_year(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1372:
-#line 9425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
                                                              INTERVAL_DAY, 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1373:
-#line 9432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9418 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30034 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30041 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1374:
-#line 9438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_curdate_local(thd);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1375:
-#line 9445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_curtime_local(thd, (yyvsp[0].num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1376:
-#line 9453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1377:
-#line 9460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1378:
-#line 9466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9452 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)=new (thd->mem_root) Item_extract(thd, (yyvsp[-3].interval), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1379:
-#line 9472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_get_format(thd, (yyvsp[-3].date_time_type), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30103 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1380:
-#line 9478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1381:
-#line 9485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_locate(thd, (yyvsp[-1].item), (yyvsp[-3].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30124 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1382:
-#line 9491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
                                                              INTERVAL_DAY, 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30135 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1383:
-#line 9498 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1384:
-#line 9504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_substr(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30148 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1385:
-#line 9510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_substr(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1386:
-#line 9516 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_substr(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30175 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1387:
-#line 9522 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_substr(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30178 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1388:
-#line 9528 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Unlike other time-related functions, SYSDATE() is
@@ -30196,104 +30203,104 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1389:
-#line 9546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9532 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-1].item), (yyvsp[-3].item), (yyvsp[-5].interval_time_st), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30210 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1390:
-#line 9552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_timestamp_diff(thd, (yyvsp[-3].item), (yyvsp[-1].item), (yyvsp[-5].interval_time_st));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1391:
-#line 9558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_curdate_utc(thd);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30231 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30238 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1392:
-#line 9565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_curtime_utc(thd, (yyvsp[0].num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30249 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1393:
-#line 9572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_now_utc(thd, (yyvsp[0].num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1394:
-#line 9580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= create_func_dyncol_add(thd, (yyvsp[-3].item), *(yyvsp[-1].dyncol_def_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1395:
-#line 9587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= create_func_dyncol_delete(thd, (yyvsp[-3].item), *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30273 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1396:
-#line 9594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_dyncol_check(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1397:
-#line 9601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= create_func_dyncol_create(thd, *(yyvsp[-1].dyncol_def_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1398:
-#line 9608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             (yyval.item)= create_func_dyncol_get(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].cast_type),
@@ -30302,133 +30309,133 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30313 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1399:
-#line 9625 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9611 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_ascii(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30316 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1400:
-#line 9631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_charset(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1401:
-#line 9637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_coalesce(thd, *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1402:
-#line 9643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9629 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_collation(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30346 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1403:
-#line 9649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_database(thd);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
             Lex->safe_to_cache_query=0;
           }
-#line 30357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1404:
-#line 9656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_if(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1405:
-#line 9662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9648 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_format(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1406:
-#line 9668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9654 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_format(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30387 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1407:
-#line 9674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_last_value(thd, *(yyvsp[-1].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30397 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1408:
-#line 9680 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_microsecond(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1409:
-#line 9686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9672 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1410:
-#line 9692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9678 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)=  new (thd->mem_root)
               Item_func_password(thd, (yyvsp[-1].item), Item_func_password::OLD);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1411:
-#line 9699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item* i1;
             i1= new (thd->mem_root) Item_func_password(thd, (yyvsp[-1].item));
@@ -30436,51 +30443,51 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (yyval.item)= i1;
           }
-#line 30440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1412:
-#line 9707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9693 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_quarter(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30457 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1413:
-#line 9713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_repeat(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1414:
-#line 9719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9705 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_replace(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1415:
-#line 9725 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_reverse(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1416:
-#line 9731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_row_count(thd);
             if ((yyval.item) == NULL)
@@ -30488,21 +30495,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
             Lex->safe_to_cache_query= 0;
           }
-#line 30492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30499 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1417:
-#line 9739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9725 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_round(thd, (yyvsp[-3].item), (yyvsp[-1].item), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1418:
-#line 9745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *i1;
             LEX_STRING name= {C_STRING_WITH_LEN("default_week_format")};
@@ -30516,31 +30523,31 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30520 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1419:
-#line 9759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_week(thd, (yyvsp[-3].item), (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30537 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1420:
-#line 9765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9751 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-2].item), 0, 0, (yyvsp[-1].ulong_num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30540 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30547 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1421:
-#line 9771 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root)
                 Item_func_weight_string(thd, (yyvsp[-5].item), 0, (yyvsp[-2].ulong_num),
@@ -30548,11 +30555,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30552 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30559 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1422:
-#line 9779 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_char_typecast(thd, (yyvsp[-4].item), (yyvsp[-1].ulong_num),
                                                                &my_charset_bin);
@@ -30564,22 +30571,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1423:
-#line 9791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9777 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-7].item), (yyvsp[-5].ulong_num), (yyvsp[-3].ulong_num),
                                                             (yyvsp[-1].ulong_num));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1424:
-#line 9798 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9784 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 #ifdef HAVE_SPATIAL
             (yyval.item)= (yyvsp[0].item);
@@ -30591,95 +30598,95 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                               sym_group_geom.needed_define));
 #endif
           }
-#line 30595 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1425:
-#line 9813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_precise_rel(thd, (yyvsp[-3].item), (yyvsp[-1].item),
                                                  Item_func::SP_CONTAINS_FUNC));
           }
-#line 30605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1426:
-#line 9819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9805 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_geometrycollection,
                            Geometry::wkb_point));
           }
-#line 30616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1427:
-#line 9826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9812 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_linestring,
                            Geometry::wkb_point));
           }
-#line 30627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1428:
-#line 9833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_multilinestring,
                            Geometry::wkb_linestring));
           }
-#line 30638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30645 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1429:
-#line 9840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_multipoint,
                            Geometry::wkb_point));
           }
-#line 30649 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1430:
-#line 9847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_multipolygon,
                            Geometry::wkb_polygon));
           }
-#line 30660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30667 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1431:
-#line 9854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd, Item_func_point(thd, (yyvsp[-3].item), (yyvsp[-1].item)));
           }
-#line 30668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30675 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1432:
-#line 9858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9844 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= GEOM_NEW(thd,
                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
                            Geometry::wkb_polygon,
                            Geometry::wkb_linestring));
           }
-#line 30679 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1433:
-#line 9877 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 #ifdef HAVE_DLOPEN
             udf_func *udf= 0;
@@ -30698,11 +30705,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.udf)= udf;
 #endif
           }
-#line 30702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1434:
-#line 9896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Create_func *builder;
             Item *item= NULL;
@@ -30755,11 +30762,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 30759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1435:
-#line 9949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Create_qfunc *builder;
             Item *item= NULL;
@@ -30794,79 +30801,79 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 30798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30805 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1436:
-#line 9987 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (yyvsp[-1].num) | (yyvsp[0].num); }
-#line 30804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30811 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1437:
-#line 9989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= FT_BOOL; }
-#line 30810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1438:
-#line 9993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= FT_NL; }
-#line 30816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1439:
-#line 9994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= FT_NL; }
-#line 30822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1440:
-#line 9998 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0;         }
-#line 30828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30835 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1441:
-#line 9999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= FT_EXPAND; }
-#line 30834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1442:
-#line 10003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= NULL; }
-#line 30840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30847 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1443:
-#line 10004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= (yyvsp[0].item_list); }
-#line 30846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1444:
-#line 10009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 9995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_list)= new (thd->mem_root) List;
             if ((yyval.item_list) == NULL)
               MYSQL_YYABORT;
             (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 30857 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1445:
-#line 10016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
             (yyval.item_list)= (yyvsp[-2].item_list);
           }
-#line 30866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1446:
-#line 10024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
              Use Item::name as a storage for the attribute value of user
@@ -30890,61 +30897,61 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               (yyvsp[-2].item)->set_name((yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
             (yyval.item)= (yyvsp[-2].item);
           }
-#line 30894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1447:
-#line 10051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), FALSE);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30911 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1448:
-#line 10057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), TRUE);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1449:
-#line 10063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_and(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1450:
-#line 10069 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_or(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1451:
-#line 10075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_xor(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1452:
-#line 10081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10067 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *item= new (thd->mem_root) Item_int(thd, (int32) 0L, 1);
             if (item == NULL)
@@ -30953,149 +30960,149 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1453:
-#line 10090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_count(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30967 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1454:
-#line 10096 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->in_sum_expr++; }
-#line 30973 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1455:
-#line 10098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->in_sum_expr--; }
-#line 30979 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30986 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1456:
-#line 10100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_count(thd, *(yyvsp[-2].item_list));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 30996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1457:
-#line 10106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 30999 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1458:
-#line 10117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1459:
-#line 10123 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10109 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1460:
-#line 10129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31029 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1461:
-#line 10135 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1462:
-#line 10141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 0);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1463:
-#line 10147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1464:
-#line 10153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1465:
-#line 10159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), FALSE);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31079 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1466:
-#line 10165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), TRUE);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 31089 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1467:
-#line 10171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->in_sum_expr++; }
-#line 31095 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1468:
-#line 10175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->in_sum_expr--;
@@ -31107,28 +31114,28 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyvsp[-3].item_list)->empty();
             sel->gorder_list.empty();
           }
-#line 31111 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31118 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1469:
-#line 10190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (! Lex->parsing_options.allows_variable)
               my_yyabort_error((ER_VIEW_SELECT_VARIABLE, MYF(0)));
           }
-#line 31120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1470:
-#line 10195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= (yyvsp[0].item);
           }
-#line 31128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31135 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1471:
-#line 10202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_func_set_user_var *item;
             (yyval.item)= item= new (thd->mem_root) Item_func_set_user_var(thd, (yyvsp[-2].lex_str), (yyvsp[0].item));
@@ -31138,11 +31145,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
             lex->set_var_list.push_back(item, thd->mem_root);
           }
-#line 31142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1472:
-#line 10212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, (yyvsp[0].lex_str));
             if ((yyval.item) == NULL)
@@ -31150,11 +31157,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             LEX *lex= Lex;
             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
           }
-#line 31154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1473:
-#line 10220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* disallow "SELECT @@global.global.variable" */
             if ((yyvsp[-1].lex_str).str && (yyvsp[0].lex_str).str && check_reserved_words(&(yyvsp[-1].lex_str)))
@@ -31167,39 +31174,39 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!((Item_func_get_system_var*) (yyval.item))->is_written_to_binlog())
               Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_VARIABLE);
           }
-#line 31171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31178 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1474:
-#line 10235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 0; }
-#line 31177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1475:
-#line 10236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 1; }
-#line 31183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1476:
-#line 10241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.string)= new (thd->mem_root) String(",", 1, &my_charset_latin1);
             if ((yyval.string) == NULL)
               MYSQL_YYABORT;
           }
-#line 31193 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1477:
-#line 10246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.string) = (yyvsp[0].string); }
-#line 31199 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1479:
-#line 10252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             SELECT_LEX *sel= lex->current_select;
@@ -31211,23 +31218,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                 "CUBE/ROLLUP", "ORDER BY"));
             }
           }
-#line 31215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1481:
-#line 10268 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 31221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1482:
-#line 10270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 31227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1483:
-#line 10275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->current_select->inc_in_sum_expr())
@@ -31236,206 +31243,206 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31247 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1484:
-#line 10284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->in_sum_expr--;
             (yyval.item)= (yyvsp[0].item);
           }
-#line 31249 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1485:
-#line 10292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= &my_charset_bin; Lex->dec= 0; }
-#line 31255 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1486:
-#line 10294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->charset= thd->variables.collation_connection; }
-#line 31261 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31268 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1487:
-#line 10296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->dec= 0; }
-#line 31267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1488:
-#line 10298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= national_charset_info; Lex->dec=0; }
-#line 31273 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1489:
-#line 10300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1490:
-#line 10302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1491:
-#line 10304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1492:
-#line 10306 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1493:
-#line 10308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1494:
-#line 10310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_DATE; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
-#line 31309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31316 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1495:
-#line 10312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.cast_type)=ITEM_CAST_TIME;
             LEX *lex= Lex;
             lex->charset= NULL; lex->dec= lex->length; lex->length= (char*)0;
            }
-#line 31319 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1496:
-#line 10318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.cast_type)=ITEM_CAST_DATETIME;
             LEX *lex= Lex;
             lex->charset= NULL; lex->dec= lex->length; lex->length= (char*)0;
            }
-#line 31329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1497:
-#line 10324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_DECIMAL; Lex->charset= NULL; }
-#line 31335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1498:
-#line 10326 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->charset= NULL; Lex->length= Lex->dec= 0;}
-#line 31341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1499:
-#line 10328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.cast_type)=ITEM_CAST_DOUBLE; }
-#line 31347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1500:
-#line 10331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10317 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= NULL; }
-#line 31353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1501:
-#line 10332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= (yyvsp[0].item_list);}
-#line 31359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1502:
-#line 10337 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_list)= new (thd->mem_root) List;
             if ((yyval.item_list) == NULL)
               MYSQL_YYABORT;
             (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 31370 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1503:
-#line 10344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
             (yyval.item_list)= (yyvsp[-2].item_list);
           }
-#line 31379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1504:
-#line 10351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10337 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= (yyvsp[0].item_list); }
-#line 31385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1505:
-#line 10352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10338 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item_list)= (yyvsp[-1].item_list); }
-#line 31391 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1506:
-#line 10357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_list)= new (thd->mem_root) List;
             if ((yyval.item_list) == NULL)
               MYSQL_YYABORT;
             (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 31402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31409 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1507:
-#line 10364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10350 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
             (yyval.item_list)= (yyvsp[-2].item_list);
           }
-#line 31411 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1508:
-#line 10371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= NULL; }
-#line 31417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1509:
-#line 10372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 31423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1510:
-#line 10376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= NULL; }
-#line 31429 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1511:
-#line 10377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 31435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1512:
-#line 10382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_list)= new (thd->mem_root) List;
             if ((yyval.item_list) == NULL)
@@ -31443,27 +31450,27 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.item_list)->push_back((yyvsp[-2].item), thd->mem_root);
             (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
           }
-#line 31447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1513:
-#line 10390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[-4].item_list)->push_back((yyvsp[-2].item), thd->mem_root);
             (yyvsp[-4].item_list)->push_back((yyvsp[0].item), thd->mem_root);
             (yyval.item_list)= (yyvsp[-4].item_list);
           }
-#line 31457 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1514:
-#line 10400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table_list)=(yyvsp[0].table_list); }
-#line 31463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1515:
-#line 10402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10388 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (!((yyval.table_list)= lex->current_select->nest_last_join(thd)))
@@ -31472,49 +31479,54 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1516:
-#line 10413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { MYSQL_YYABORT_UNLESS((yyval.table_list)=(yyvsp[0].table_list)); }
-#line 31482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1517:
-#line 10424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10410 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table_list)=(yyvsp[0].table_list); }
-#line 31488 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1518:
-#line 10425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table_list)=(yyvsp[-1].table_list); }
-#line 31494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1519:
-#line 10431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.table_list)=(yyvsp[0].table_list); }
-#line 31500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1520:
-#line 10433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
           }
-#line 31508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1521:
-#line 10453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
-    { MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list))); (yyvsp[0].table_list)->straight=(yyvsp[-1].num); }
-#line 31514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 10437 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+    {
+            MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
+
+            if (unlikely(Select->add_cross_joined_table((yyvsp[-2].table_list), (yyvsp[0].table_list), (yyvsp[-1].num))))
+              MYSQL_YYABORT;
+          }
+#line 31526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1522:
-#line 10456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
             /* Change the current name resolution context to a local context. */
@@ -31522,50 +31534,50 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Select->parsing_place= IN_ON;
           }
-#line 31526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1523:
-#line 10464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 	    (yyvsp[-3].table_list)->straight=(yyvsp[-4].num);
             add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
-            Lex->pop_context();
+            (yyvsp[-3].table_list)->on_context= Lex->pop_context();
             Select->parsing_place= NO_MATTER;
           }
-#line 31537 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31549 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1524:
-#line 10472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10461 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
           }
-#line 31545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1525:
-#line 10476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
 	    (yyvsp[-5].table_list)->straight=(yyvsp[-6].num);
             add_join_natural((yyvsp[-7].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select); 
 	    (yyval.table_list)=(yyvsp[-5].table_list); 
           }
-#line 31555 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31567 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1526:
-#line 10482 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
 	    (yyvsp[0].table_list)->straight=(yyvsp[-1].num);
             add_join_natural((yyvsp[-3].table_list),(yyvsp[0].table_list),NULL,Select);
           }
-#line 31565 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31577 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1527:
-#line 10491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
             /* Change the current name resolution context to a local context. */
@@ -31573,52 +31585,52 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Select->parsing_place= IN_ON;
           }
-#line 31577 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31589 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1528:
-#line 10499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10488 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
-            Lex->pop_context();
+            (yyvsp[-3].table_list)->on_context= Lex->pop_context();
             (yyvsp[-3].table_list)->outer_join|=JOIN_TYPE_LEFT;
             (yyval.table_list)=(yyvsp[-3].table_list);
             Select->parsing_place= NO_MATTER;
           }
-#line 31589 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31601 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1529:
-#line 10507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
           }
-#line 31597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1530:
-#line 10511 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             add_join_natural((yyvsp[-9].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select); 
             (yyvsp[-5].table_list)->outer_join|=JOIN_TYPE_LEFT; 
             (yyval.table_list)=(yyvsp[-5].table_list); 
           }
-#line 31607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31619 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1531:
-#line 10517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
             add_join_natural((yyvsp[-5].table_list),(yyvsp[0].table_list),NULL,Select);
             (yyvsp[0].table_list)->outer_join|=JOIN_TYPE_LEFT;
             (yyval.table_list)=(yyvsp[0].table_list);
           }
-#line 31618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1532:
-#line 10527 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10516 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
             /* Change the current name resolution context to a local context. */
@@ -31626,43 +31638,43 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Select->parsing_place= IN_ON;
           }
-#line 31630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1533:
-#line 10535 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (!((yyval.table_list)= lex->current_select->convert_right_join()))
               MYSQL_YYABORT;
             add_join_on(thd, (yyval.table_list), (yyvsp[0].item));
-            Lex->pop_context();
+            (yyvsp[-7].table_list)->on_context= Lex->pop_context();
             Select->parsing_place= NO_MATTER;
           }
-#line 31643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1534:
-#line 10544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
           }
-#line 31651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1535:
-#line 10548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (!((yyval.table_list)= lex->current_select->convert_right_join()))
               MYSQL_YYABORT;
             add_join_natural((yyval.table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
           }
-#line 31662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1536:
-#line 10555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
             add_join_natural((yyvsp[0].table_list),(yyvsp[-5].table_list),NULL,Select);
@@ -31670,64 +31682,64 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!((yyval.table_list)= lex->current_select->convert_right_join()))
               MYSQL_YYABORT;
           }
-#line 31674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1537:
-#line 10566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 0; }
-#line 31680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1538:
-#line 10567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 0; }
-#line 31686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1539:
-#line 10568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10557 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 1; }
-#line 31692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1540:
-#line 10572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = (yyvsp[0].num); }
-#line 31698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1541:
-#line 10573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) = 0; }
-#line 31704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31716 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1542:
-#line 10581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.string_list)= 0;}
-#line 31710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1544:
-#line 10587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10576 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.string_list)= (yyvsp[-2].string_list);
           }
-#line 31718 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1545:
-#line 10601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->table_join_options= 0;
           }
-#line 31727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1546:
-#line 10606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.table_list)= Select->add_table_to_list(thd, (yyvsp[-3].table), (yyvsp[-1].lex_str_ptr),
                                                 Select->get_table_join_options(),
@@ -31738,11 +31750,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Select->add_joined_table((yyval.table_list));
           }
-#line 31742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1547:
-#line 10617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             SELECT_LEX *sel= lex->current_select;
@@ -31760,11 +31772,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             /* incomplete derived tables return NULL, we must be
                nested in select_derived rule to be here. */
           }
-#line 31764 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31776 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1548:
-#line 10653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* Use $2 instead of Lex->current_select as derived table will
                alter value of Lex->current_select. */
@@ -31827,11 +31839,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 !(yyval.table_list)->derived->first_select()->next_select())
               (yyval.table_list)->select_lex->add_where_field((yyval.table_list)->derived->first_select());
           }
-#line 31831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1549:
-#line 10738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10727 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[-1].table_list) && (yyvsp[0].num))
             {
@@ -31839,20 +31851,20 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1550:
-#line 10748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_select_to_union_list(Lex, (bool)(yyvsp[0].num), FALSE))
               MYSQL_YYABORT;
           }
-#line 31852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1551:
-#line 10753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10742 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Remove from the name resolution context stack the context of the
@@ -31866,11 +31878,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1552:
-#line 10771 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->current_select->set_braces(0))
@@ -31879,11 +31891,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31883 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31895 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1553:
-#line 10783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             SELECT_LEX *sel= lex->current_select;
@@ -31891,28 +31903,28 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               mysql_init_select(lex);
             lex->current_select->parsing_place= SELECT_LIST;
           }
-#line 31895 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31907 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1554:
-#line 10791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10780 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 31903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1555:
-#line 10799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if ((yyvsp[0].select_lex)->init_nested_join(thd))
               MYSQL_YYABORT;
           }
-#line 31912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1556:
-#line 10804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* for normal joins, $3 != NULL and end_nested_join() != NULL,
                for derived tables, both must equal NULL */
@@ -31925,11 +31937,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 31929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1557:
-#line 10819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->derived_tables|= DERIVED_SUBQUERY;
@@ -31946,25 +31958,25 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->current_select->linkage= DERIVED_TABLE_TYPE;
             lex->current_select->parsing_place= SELECT_LIST;
           }
-#line 31950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1558:
-#line 10836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 31958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1560:
-#line 10843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.select_lex)= Select; }
-#line 31964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 31976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1561:
-#line 10848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -31984,113 +31996,113 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 !embedding->nested_join->join_list.elements;
             /* return true if we are deeply nested */
           }
-#line 31988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1562:
-#line 10870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 31994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1563:
-#line 10871 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1564:
-#line 10876 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= thd->variables.old_mode ?  INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL; 
           }
-#line 32008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1565:
-#line 10879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= INDEX_HINT_MASK_JOIN;  }
-#line 32014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1566:
-#line 10880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= INDEX_HINT_MASK_ORDER; }
-#line 32020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1567:
-#line 10881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= INDEX_HINT_MASK_GROUP; }
-#line 32026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1568:
-#line 10885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10874 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.index_hint)= INDEX_HINT_FORCE; }
-#line 32032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1569:
-#line 10886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.index_hint)= INDEX_HINT_IGNORE; }
-#line 32038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1570:
-#line 10891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->set_index_hint_type((yyvsp[-2].index_hint), (yyvsp[0].num));
           }
-#line 32046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32058 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1572:
-#line 10896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->set_index_hint_type(INDEX_HINT_USE, (yyvsp[0].num));
           }
-#line 32054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1577:
-#line 10909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->alloc_index_hints(thd); }
-#line 32060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1579:
-#line 10913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {  Select->clear_index_hints(); }
-#line 32066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1581:
-#line 10918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10907 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->add_index_hint(thd, NULL, 0); }
-#line 32072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1582:
-#line 10919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1583:
-#line 10924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->add_index_hint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); }
-#line 32084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1584:
-#line 10926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10915 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->add_index_hint(thd, (char *)"PRIMARY", 7); }
-#line 32090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1587:
-#line 10936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.string_list)= new (thd->mem_root) List))
               MYSQL_YYABORT;
@@ -32101,11 +32113,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (yyval.string_list)->push_back(s, thd->mem_root);
           }
-#line 32105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1588:
-#line 10947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             String *s= new (thd->mem_root) String((const char *) (yyvsp[0].lex_str).str,
                                                     (yyvsp[0].lex_str).length,
@@ -32115,191 +32127,191 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyvsp[-2].string_list)->push_back(s, thd->mem_root);
             (yyval.string_list)= (yyvsp[-2].string_list);
           }
-#line 32119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1589:
-#line 10959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1590:
-#line 10960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_DAY_HOUR; }
-#line 32131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1591:
-#line 10961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_DAY_MICROSECOND; }
-#line 32137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1592:
-#line 10962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_DAY_MINUTE; }
-#line 32143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1593:
-#line 10963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_DAY_SECOND; }
-#line 32149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1594:
-#line 10964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; }
-#line 32155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1595:
-#line 10965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_HOUR_MINUTE; }
-#line 32161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1596:
-#line 10966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_HOUR_SECOND; }
-#line 32167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1597:
-#line 10967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; }
-#line 32173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1598:
-#line 10968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_MINUTE_SECOND; }
-#line 32179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1599:
-#line 10969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; }
-#line 32185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1600:
-#line 10970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval)=INTERVAL_YEAR_MONTH; }
-#line 32191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32203 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1601:
-#line 10974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_DAY; }
-#line 32197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1602:
-#line 10975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_WEEK; }
-#line 32203 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1603:
-#line 10976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_HOUR; }
-#line 32209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1604:
-#line 10977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_MINUTE; }
-#line 32215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1605:
-#line 10978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_MONTH; }
-#line 32221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1606:
-#line 10979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_QUARTER; }
-#line 32227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1607:
-#line 10980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_SECOND; }
-#line 32233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1608:
-#line 10981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_MICROSECOND; }
-#line 32239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1609:
-#line 10982 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.interval_time_st)=INTERVAL_YEAR; }
-#line 32245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1610:
-#line 10986 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATE;}
-#line 32251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1611:
-#line 10987 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.date_time_type)=MYSQL_TIMESTAMP_TIME;}
-#line 32257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1612:
-#line 10988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
-#line 32263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1613:
-#line 10989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
-#line 32269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1617:
-#line 10999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str_ptr)=0; }
-#line 32275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1618:
-#line 11001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 10990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_str_ptr)= (LEX_STRING*) thd->memdup(&(yyvsp[0].lex_str),sizeof(LEX_STRING));
             if ((yyval.lex_str_ptr) == NULL)
               MYSQL_YYABORT;
           }
-#line 32285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1621:
-#line 11014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->where= 0; }
-#line 32291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1622:
-#line 11016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= IN_WHERE;
           }
-#line 32299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1623:
-#line 11020 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *select= Select;
             select->where= normalize_cond(thd, (yyvsp[0].item));
@@ -32307,19 +32319,19 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyvsp[0].item))
               (yyvsp[0].item)->top_level_item();
           }
-#line 32311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1625:
-#line 11032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= IN_HAVING;
           }
-#line 32319 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1626:
-#line 11036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->having= normalize_cond(thd, (yyvsp[0].item));
@@ -32327,20 +32339,20 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyvsp[0].item))
               (yyvsp[0].item)->top_level_item();
           }
-#line 32331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1627:
-#line 11047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->escape_used= TRUE;
             (yyval.item)= (yyvsp[0].item);
           }
-#line 32340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32352 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1628:
-#line 11052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->escape_used= FALSE;
             (yyval.item)= ((thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) ?
@@ -32349,29 +32361,29 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 32353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1631:
-#line 11073 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 32359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1632:
-#line 11075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 32365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1633:
-#line 11079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1634:
-#line 11081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               'WITH CUBE' is reserved in the MySQL syntax, but not implemented,
@@ -32388,11 +32400,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             my_yyabort_error((ER_NOT_SUPPORTED_YET, MYF(0), "CUBE"));
           }
-#line 32392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1635:
-#line 11098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               'WITH ROLLUP' is needed for backward compatibility,
@@ -32407,21 +32419,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                 "global union parameters"));
             lex->current_select->olap= ROLLUP_TYPE;
           }
-#line 32411 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1639:
-#line 11129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             bool ascending= ((yyvsp[0].num) == 1) ? true : false;
             if (add_order_to_list(thd, (yyvsp[-1].item), ascending))
               MYSQL_YYABORT;
           }
-#line 32421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1642:
-#line 11147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             SELECT_LEX *sel= lex->current_select;
@@ -32464,61 +32476,61 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                lex->current_select= sel->master_unit()->fake_select_lex;
              }
           }
-#line 32468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1643:
-#line 11190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 
           }
-#line 32476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32488 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1644:
-#line 11197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_order_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 32482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1645:
-#line 11199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { if (add_order_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))) MYSQL_YYABORT; }
-#line 32488 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1646:
-#line 11203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) =  1; }
-#line 32494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1647:
-#line 11204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) =1; }
-#line 32500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1648:
-#line 11205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num) =0; }
-#line 32506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1649:
-#line 11209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1650:
-#line 11210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1651:
-#line 11215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             if (sel->master_unit()->is_union() && !sel->braces)
@@ -32528,71 +32540,71 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               DBUG_ASSERT(Select);
             }
           }
-#line 32532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1652:
-#line 11228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             if (!sel->select_limit->basic_const_item() ||
                 sel->select_limit->val_int() > 0)
               Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
           }
-#line 32543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32555 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1653:
-#line 11236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
           }
-#line 32551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1654:
-#line 11240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
           }
-#line 32559 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32571 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1655:
-#line 11247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->select_limit= (yyvsp[0].item);
             sel->offset_limit= 0;
             sel->explicit_limit= 1;
           }
-#line 32570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1656:
-#line 11254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->select_limit= (yyvsp[0].item);
             sel->offset_limit= (yyvsp[-2].item);
             sel->explicit_limit= 1;
           }
-#line 32581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1657:
-#line 11261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->select_limit= (yyvsp[-2].item);
             sel->offset_limit= (yyvsp[0].item);
             sel->explicit_limit= 1;
           }
-#line 32592 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1658:
-#line 11271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11260 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Item_splocal *splocal;
           LEX *lex= thd->lex;
@@ -32619,258 +32631,258 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
           splocal->limit_clause_param= TRUE;
           (yyval.item)= splocal;
         }
-#line 32623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1659:
-#line 11298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyvsp[0].item_param)->limit_clause_param= TRUE;
         }
-#line 32631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1660:
-#line 11302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 32641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1661:
-#line 11308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 32651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1662:
-#line 11314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 32661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1663:
-#line 11323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX *lex=Lex;
             lex->limit_rows_examined= (yyvsp[0].item);
           }
-#line 32670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1664:
-#line 11330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11319 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->current_select->select_limit= 0;
           }
-#line 32679 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1665:
-#line 11335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             sel->select_limit= (yyvsp[0].item);
             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
             sel->explicit_limit= 1;
           }
-#line 32690 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1666:
-#line 11341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { my_parse_error(thd, ER_SYNTAX_ERROR); MYSQL_YYABORT; }
-#line 32696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1667:
-#line 11342 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { my_parse_error(thd, ER_SYNTAX_ERROR); MYSQL_YYABORT; }
-#line 32702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1668:
-#line 11346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.num)= (int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1669:
-#line 11347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11336 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.num)= -(int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1670:
-#line 11348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11337 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.num)= -(int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1671:
-#line 11352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1672:
-#line 11353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11342 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (ulong) strtol((yyvsp[0].lex_str).str, (char**) 0, 16); }
-#line 32732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1673:
-#line 11354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1674:
-#line 11355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1675:
-#line 11356 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1676:
-#line 11357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1677:
-#line 11361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11350 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1678:
-#line 11362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulong_num)= (ulong) strtol((yyvsp[0].lex_str).str, (char**) 0, 16); }
-#line 32768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1679:
-#line 11363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1680:
-#line 11364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1681:
-#line 11365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { MYSQL_YYABORT; }
-#line 32786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1682:
-#line 11369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1683:
-#line 11370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1684:
-#line 11371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1685:
-#line 11372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1686:
-#line 11373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1687:
-#line 11377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1688:
-#line 11378 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11367 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1689:
-#line 11379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ulonglong_number)= strtoull((yyvsp[0].lex_str).str, (char**) 0, 16); }
-#line 32834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1690:
-#line 11380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
-#line 32840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1691:
-#line 11381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { MYSQL_YYABORT; }
-#line 32846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1692:
-#line 11386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { my_parse_error(thd, ER_ONLY_INTEGERS_ALLOWED); }
-#line 32852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1695:
-#line 11395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.choice)= (yyvsp[0].ulong_num) != 0 ? HA_CHOICE_YES : HA_CHOICE_NO; }
-#line 32858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1696:
-#line 11396 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.choice)= HA_CHOICE_UNDEF; }
-#line 32864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1697:
-#line 11400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= false; }
-#line 32870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1698:
-#line 11402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
@@ -32899,67 +32911,67 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->expr_allows_subselect= false;
           }
-#line 32903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1699:
-#line 11431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* Subqueries are allowed from now.*/
             Lex->expr_allows_subselect= true;
             (yyval.num)= true;
           }
-#line 32913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1700:
-#line 11439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11428 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1701:
-#line 11440 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11429 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1704:
-#line 11450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_proc_to_list(thd, (yyvsp[-1].item)))
               MYSQL_YYABORT;
             if (!(yyvsp[-1].item)->name)
               (yyvsp[-1].item)->set_name((yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
           }
-#line 32936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1705:
-#line 11459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11448 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!lex->describe &&
                 (!(lex->result= new (thd->mem_root) select_dumpvar(thd))))
               MYSQL_YYABORT;
           }
-#line 32947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1706:
-#line 11466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1708:
-#line 11471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 32959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1709:
-#line 11475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->result)
             {
@@ -32976,19 +32988,19 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               DBUG_ASSERT(Lex->describe);
             }
           }
-#line 32980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 32992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1710:
-#line 11495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.myvar) = Lex->result ? new (thd->mem_root) my_var_user((yyvsp[0].lex_str)) : NULL;
           }
-#line 32988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1711:
-#line 11499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11488 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_variable *t;
 
@@ -32999,32 +33011,32 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                           Lex->sphead)) :
                                 NULL;
           }
-#line 33003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1712:
-#line 11512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= false; }
-#line 33009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1713:
-#line 11513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= true; }
-#line 33015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1714:
-#line 11518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (! Lex->parsing_options.allows_select_into)
               my_yyabort_error((ER_VIEW_SELECT_CLAUSE, MYF(0), "INTO"));
           }
-#line 33024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1716:
-#line 11527 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11516 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
@@ -33034,17 +33046,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                     new (thd->mem_root) select_export(thd, lex->exchange)))
               MYSQL_YYABORT;
           }
-#line 33038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1717:
-#line 11537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->exchange->cs= (yyvsp[0].charset); }
-#line 33044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1719:
-#line 11540 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11529 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!lex->describe)
@@ -33057,60 +33069,60 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 33061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1720:
-#line 11553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
           }
-#line 33069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1721:
-#line 11564 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_DO;
             mysql_init_select(lex);
           }
-#line 33079 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33091 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1722:
-#line 11570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->insert_list= (yyvsp[0].item_list);
           }
-#line 33087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1723:
-#line 11581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->set_command(SQLCOM_DROP_TABLE, (yyvsp[-2].num), (yyvsp[0].object_ddl_options));
             YYPS->m_lock_type= TL_UNLOCK;
             YYPS->m_mdl_type= MDL_EXCLUSIVE;
           }
-#line 33098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1724:
-#line 11588 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1725:
-#line 11589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1726:
-#line 11590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Alter_drop *ad= (new (thd->mem_root)
@@ -33127,21 +33139,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                                         MDL_SHARED_UPGRADABLE))
               MYSQL_YYABORT;
           }
-#line 33131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1727:
-#line 11607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11596 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->set_command(SQLCOM_DROP_DB, (yyvsp[-1].object_ddl_options));
             lex->name= (yyvsp[0].lex_str);
           }
-#line 33141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1728:
-#line 11613 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11602 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             sp_name *spname;
@@ -33156,11 +33168,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             spname->init_qname(thd);
             lex->spname= spname;
           }
-#line 33160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1729:
-#line 11628 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             LEX_STRING db= {0, 0};
@@ -33176,11 +33188,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             spname->init_qname(thd);
             lex->spname= spname;
           }
-#line 33180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1730:
-#line 11644 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11633 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->sphead)
@@ -33188,90 +33200,90 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->set_command(SQLCOM_DROP_PROCEDURE, (yyvsp[-1].object_ddl_options));
             lex->spname= (yyvsp[0].spname);
           }
-#line 33192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1731:
-#line 11652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_command(SQLCOM_DROP_USER, (yyvsp[-2].object_ddl_options));
           }
-#line 33200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1732:
-#line 11656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_command(SQLCOM_DROP_ROLE, (yyvsp[-2].object_ddl_options));
           }
-#line 33208 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1733:
-#line 11660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->set_command(SQLCOM_DROP_VIEW, (yyvsp[0].object_ddl_options));
             YYPS->m_lock_type= TL_UNLOCK;
             YYPS->m_mdl_type= MDL_EXCLUSIVE;
           }
-#line 33219 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33231 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1734:
-#line 11667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33237 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1735:
-#line 11669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->spname= (yyvsp[0].spname);
             Lex->set_command(SQLCOM_DROP_EVENT, (yyvsp[-1].object_ddl_options));
           }
-#line 33234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1736:
-#line 11674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->set_command(SQLCOM_DROP_TRIGGER, (yyvsp[-1].object_ddl_options));
             lex->spname= (yyvsp[0].spname);
           }
-#line 33244 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1737:
-#line 11680 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE;
           }
-#line 33253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33265 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1738:
-#line 11685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP;
           }
-#line 33262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1739:
-#line 11690 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_command(SQLCOM_DROP_SERVER, (yyvsp[-1].object_ddl_options));
             Lex->server_options.reset((yyvsp[0].lex_str));
           }
-#line 33271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1742:
-#line 11703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[0].table), NULL,
                                            TL_OPTION_UPDATING,
@@ -33279,11 +33291,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYPS->m_mdl_type))
               MYSQL_YYABORT;
           }
-#line 33283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33295 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1743:
-#line 11714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL,
                                            TL_OPTION_UPDATING,
@@ -33293,11 +33305,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            (yyvsp[0].string_list)))
               MYSQL_YYABORT;
           }
-#line 33297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1746:
-#line 11732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[0].table), NULL,
                                            TL_OPTION_UPDATING | TL_OPTION_ALIAS,
@@ -33305,109 +33317,109 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYPS->m_mdl_type))
               MYSQL_YYABORT;
           }
-#line 33309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1747:
-#line 11743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->check_exists= FALSE;
           (yyval.num)= 0;
         }
-#line 33318 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1748:
-#line 11748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->check_exists= TRUE;
           (yyval.num)= 1;
         }
-#line 33327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1749:
-#line 11756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyval.object_ddl_options).set(DDL_options_st::OPT_NONE);
         }
-#line 33335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1750:
-#line 11760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_EXISTS);
         }
-#line 33343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1751:
-#line 11766 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 33349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1752:
-#line 11767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= HA_LEX_CREATE_TMP_TABLE; }
-#line 33355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1753:
-#line 11775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_INSERT;
             lex->duplicates= DUP_ERROR; 
             mysql_init_select(lex);
           }
-#line 33366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1754:
-#line 11783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->set_lock_for_tables((yyvsp[-2].lock_type), true);
             Lex->current_select= &Lex->select_lex;
           }
-#line 33375 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33387 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1755:
-#line 11788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11777 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33381 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33393 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1756:
-#line 11793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_REPLACE;
             lex->duplicates= DUP_REPLACE;
             mysql_init_select(lex);
           }
-#line 33392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1757:
-#line 11800 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11789 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->set_lock_for_tables((yyvsp[-1].lock_type), true);
             Lex->current_select= &Lex->select_lex;
           }
-#line 33401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1758:
-#line 11805 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33419 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1759:
-#line 11810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               If it is SP we do not allow insert optimisation when result of
@@ -33416,17 +33428,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
           }
-#line 33420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1760:
-#line 11818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
-#line 33426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1761:
-#line 11820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() -
                                                     thd->query());
@@ -33434,23 +33446,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYLIP->yyLength() + 1;
           (yyval.lock_type)= TL_WRITE_DELAYED;
         }
-#line 33438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1762:
-#line 11827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11816 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE; }
-#line 33444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1763:
-#line 11831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= (yyvsp[0].lock_type); }
-#line 33450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1764:
-#line 11833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() -
                                                     thd->query());
@@ -33458,222 +33470,222 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYLIP->yyLength() + 1;
           (yyval.lock_type)= TL_WRITE_DELAYED;
         }
-#line 33462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1765:
-#line 11843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1766:
-#line 11844 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1767:
-#line 11849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->field_list.empty();
             lex->many_values.empty();
             lex->insert_list=0;
           }
-#line 33485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1768:
-#line 11857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1769:
-#line 11858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1770:
-#line 11859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1771:
-#line 11861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!(lex->insert_list= new (thd->mem_root) List_item) ||
                 lex->many_values.push_back(lex->insert_list, thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1773:
-#line 11872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
-#line 33520 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1774:
-#line 11873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
-#line 33526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1775:
-#line 11877 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11866 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1776:
-#line 11878 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1777:
-#line 11880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->set_braces(0);}
-#line 33544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1778:
-#line 11881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1779:
-#line 11883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->set_braces(1);}
-#line 33556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1780:
-#line 11884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1785:
-#line 11899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->field_list.push_back((yyvsp[-2].item), thd->mem_root) ||
                 lex->insert_list->push_back((yyvsp[0].item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1786:
-#line 11908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1787:
-#line 11909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1788:
-#line 11913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33603 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1789:
-#line 11914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1790:
-#line 11919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
               if (!(Lex->insert_list= new (thd->mem_root) List_item))
                 MYSQL_YYABORT;
           }
-#line 33606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1791:
-#line 11924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->many_values.push_back(lex->insert_list, thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1792:
-#line 11932 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1794:
-#line 11938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1795:
-#line 11943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11932 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1796:
-#line 11950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item);}
-#line 33646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1797:
-#line 11952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_default_value(thd, Lex->current_context());
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 33656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1799:
-#line 11961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->duplicates= DUP_UPDATE; }
-#line 33662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1801:
-#line 11969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             mysql_init_select(lex);
             lex->sql_command= SQLCOM_UPDATE;
             lex->duplicates= DUP_ERROR; 
           }
-#line 33673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1802:
-#line 11977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *slex= &Lex->select_lex;
             if (slex->table_list.elements > 1)
@@ -33692,49 +33704,49 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             slex->set_lock_for_tables((yyvsp[-4].lock_type), slex->table_list.elements == 1);
           }
-#line 33696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1803:
-#line 11995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1806:
-#line 12005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 11994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_item_to_list(thd, (yyvsp[-2].item)) || add_value_to_list(thd, (yyvsp[0].item)))
               MYSQL_YYABORT;
           }
-#line 33711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1809:
-#line 12018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           LEX *lex= Lex;
           if (lex->update_list.push_back((yyvsp[-2].item), thd->mem_root) || 
               lex->value_list.push_back((yyvsp[0].item), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 33722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1810:
-#line 12027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE_DEFAULT; }
-#line 33728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1811:
-#line 12028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
-#line 33734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1812:
-#line 12035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_DELETE;
@@ -33745,11 +33757,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->ignore= 0;
             lex->select_lex.init_order();
           }
-#line 33749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1814:
-#line 12050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12039 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
                                            YYPS->m_lock_type,
@@ -33760,61 +33772,61 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             YYPS->m_lock_type= TL_READ_DEFAULT;
             YYPS->m_mdl_type= MDL_SHARED_READ;
           }
-#line 33764 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33776 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1815:
-#line 12061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33770 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1816:
-#line 12062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33776 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33788 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1817:
-#line 12064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             mysql_init_multi_delete(Lex);
             YYPS->m_lock_type= TL_READ_DEFAULT;
             YYPS->m_mdl_type= MDL_SHARED_READ;
           }
-#line 33786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1818:
-#line 12070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (multi_delete_set_locks_and_link_aux_tables(Lex))
               MYSQL_YYABORT;
           }
-#line 33795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33807 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1819:
-#line 12075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             mysql_init_multi_delete(Lex);
             YYPS->m_lock_type= TL_READ_DEFAULT;
             YYPS->m_mdl_type= MDL_SHARED_READ;
           }
-#line 33805 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1820:
-#line 12081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (multi_delete_set_locks_and_link_aux_tables(Lex))
               MYSQL_YYABORT;
           }
-#line 33814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1825:
-#line 12099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Table_ident *ti= new (thd->mem_root) Table_ident((yyvsp[-1].lex_str));
             if (ti == NULL)
@@ -33827,11 +33839,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYPS->m_mdl_type))
               MYSQL_YYABORT;
           }
-#line 33831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1826:
-#line 12112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12101 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Table_ident *ti= new (thd->mem_root) Table_ident(thd, (yyvsp[-3].lex_str), (yyvsp[-1].lex_str), 0);
             if (ti == NULL)
@@ -33844,53 +33856,53 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            YYPS->m_mdl_type))
               MYSQL_YYABORT;
           }
-#line 33848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1827:
-#line 12127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12116 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1828:
-#line 12128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1829:
-#line 12132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1830:
-#line 12133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 33872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1831:
-#line 12137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= OPTION_QUICK; }
-#line 33878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1832:
-#line 12138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { YYPS->m_lock_type= TL_WRITE_LOW_PRIORITY; }
-#line 33884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1833:
-#line 12139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 1; }
-#line 33890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33902 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1834:
-#line 12144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= Lex;
             lex->sql_command= SQLCOM_TRUNCATE;
@@ -33901,11 +33913,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             YYPS->m_lock_type= TL_WRITE;
             YYPS->m_mdl_type= MDL_EXCLUSIVE;
           }
-#line 33905 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1835:
-#line 12155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX* lex= thd->lex;
             DBUG_ASSERT(!lex->m_sql_cmd);
@@ -33913,99 +33925,99 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->m_sql_cmd == NULL)
               MYSQL_YYABORT;
           }
-#line 33917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1842:
-#line 12179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_CPU;
     }
-#line 33925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1843:
-#line 12183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_MEMORY;
     }
-#line 33933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1844:
-#line 12187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_BLOCK_IO;
     }
-#line 33941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1845:
-#line 12191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_CONTEXT;
     }
-#line 33949 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1846:
-#line 12195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_PAGE_FAULTS;
     }
-#line 33957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1847:
-#line 12199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_IPC;
     }
-#line 33965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1848:
-#line 12203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_SWAPS;
     }
-#line 33973 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33985 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1849:
-#line 12207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_SOURCE;
     }
-#line 33981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 33993 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1850:
-#line 12211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_options|= PROFILE_ALL;
     }
-#line 33989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1851:
-#line 12218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_query_id= 0;
     }
-#line 33997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1852:
-#line 12222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
       Lex->profile_query_id= atoi((yyvsp[0].lex_str).str);
     }
-#line 34005 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34017 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1853:
-#line 12231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->wild=0;
@@ -34014,30 +34026,30 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->current_select->parsing_place= SELECT_LIST;
             lex->create_info.init();
           }
-#line 34018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1854:
-#line 12240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 34026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1855:
-#line 12247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              lex->sql_command= SQLCOM_SHOW_DATABASES;
              if (prepare_schema_table(thd, lex, 0, SCH_SCHEMATA))
                MYSQL_YYABORT;
            }
-#line 34037 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1856:
-#line 12254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              lex->sql_command= SQLCOM_SHOW_TABLES;
@@ -34045,11 +34057,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
              if (prepare_schema_table(thd, lex, 0, SCH_TABLE_NAMES))
                MYSQL_YYABORT;
            }
-#line 34049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1857:
-#line 12262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              lex->sql_command= SQLCOM_SHOW_TRIGGERS;
@@ -34057,11 +34069,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
              if (prepare_schema_table(thd, lex, 0, SCH_TRIGGERS))
                MYSQL_YYABORT;
            }
-#line 34061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1858:
-#line 12270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              lex->sql_command= SQLCOM_SHOW_EVENTS;
@@ -34069,11 +34081,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
              if (prepare_schema_table(thd, lex, 0, SCH_EVENTS))
                MYSQL_YYABORT;
            }
-#line 34073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1859:
-#line 12278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              lex->sql_command= SQLCOM_SHOW_TABLE_STATUS;
@@ -34081,11 +34093,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
              if (prepare_schema_table(thd, lex, 0, SCH_TABLES))
                MYSQL_YYABORT;
            }
-#line 34085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1860:
-#line 12286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_OPEN_TABLES;
@@ -34093,55 +34105,55 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, 0, SCH_OPEN_TABLES))
               MYSQL_YYABORT;
           }
-#line 34097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34109 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1861:
-#line 12294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_PLUGINS;
             if (prepare_schema_table(thd, lex, 0, SCH_PLUGINS))
               MYSQL_YYABORT;
           }
-#line 34108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1862:
-#line 12301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->ident= (yyvsp[0].lex_str);
             Lex->sql_command= SQLCOM_SHOW_PLUGINS;
             if (prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS))
               MYSQL_YYABORT;
           }
-#line 34119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1863:
-#line 12308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_SHOW_PLUGINS;
             if (prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS))
               MYSQL_YYABORT;
           }
-#line 34129 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1864:
-#line 12314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_info.db_type= (yyvsp[-1].db_type); }
-#line 34135 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34147 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1865:
-#line 12316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_info.db_type= NULL; }
-#line 34141 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1866:
-#line 12318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_FIELDS;
@@ -34150,45 +34162,45 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_COLUMNS))
               MYSQL_YYABORT;
           }
-#line 34154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1867:
-#line 12327 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_SHOW_BINLOGS;
           }
-#line 34162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1868:
-#line 12331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS;
           }
-#line 34170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1869:
-#line 12335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS;
           }
-#line 34179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1871:
-#line 12341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_RELAYLOG_EVENTS;
           }
-#line 34188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1873:
-#line 12346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_KEYS;
@@ -34197,90 +34209,90 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_STATISTICS))
               MYSQL_YYABORT;
           }
-#line 34201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1874:
-#line 12355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
             if (prepare_schema_table(thd, lex, 0, SCH_ENGINES))
               MYSQL_YYABORT;
           }
-#line 34212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1875:
-#line 12362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SHOW_AUTHORS;
           }
-#line 34221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1876:
-#line 12367 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12356 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SHOW_CONTRIBUTORS;
           }
-#line 34230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1877:
-#line 12372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SHOW_PRIVILEGES;
           }
-#line 34239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1878:
-#line 12377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (void) create_select_for_variable("warning_count"); }
-#line 34245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1879:
-#line 12379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (void) create_select_for_variable("error_count"); }
-#line 34251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1880:
-#line 12381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command = SQLCOM_SHOW_WARNS;}
-#line 34257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1881:
-#line 12383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command = SQLCOM_SHOW_ERRORS;}
-#line 34263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1882:
-#line 12385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command = SQLCOM_SHOW_PROFILES; }
-#line 34269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1883:
-#line 12387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_PROFILE;
             if (prepare_schema_table(thd, lex, NULL, SCH_PROFILES) != 0)
               MYSQL_YYABORT;
           }
-#line 34280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1884:
-#line 12394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_STATUS;
@@ -34288,17 +34300,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, 0, SCH_SESSION_STATUS))
               MYSQL_YYABORT;
           }
-#line 34292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1885:
-#line 12402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;}
-#line 34298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1886:
-#line 12404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_VARIABLES;
@@ -34306,63 +34318,63 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, 0, SCH_SESSION_VARIABLES))
               MYSQL_YYABORT;
           }
-#line 34310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34322 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1887:
-#line 12412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_CHARSETS;
             if (prepare_schema_table(thd, lex, 0, SCH_CHARSETS))
               MYSQL_YYABORT;
           }
-#line 34321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1888:
-#line 12419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12408 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_COLLATIONS;
             if (prepare_schema_table(thd, lex, 0, SCH_COLLATIONS))
               MYSQL_YYABORT;
           }
-#line 34332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1889:
-#line 12426 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12415 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_SHOW_GRANTS;
             if (!(Lex->grant_user= (LEX_USER*)thd->alloc(sizeof(LEX_USER))))
               MYSQL_YYABORT;
             Lex->grant_user->user= current_user_and_current_role;
           }
-#line 34343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1890:
-#line 12433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12422 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SHOW_GRANTS;
             lex->grant_user=(yyvsp[-1].lex_user);
           }
-#line 34353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1891:
-#line 12439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12428 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->set_command(SQLCOM_SHOW_CREATE_DB, (yyvsp[-1].object_ddl_options));
             Lex->name= (yyvsp[0].lex_str);
           }
-#line 34362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1892:
-#line 12444 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command = SQLCOM_SHOW_CREATE;
@@ -34370,11 +34382,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->create_info.storage_media= HA_SM_DEFAULT;
           }
-#line 34374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1893:
-#line 12452 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command = SQLCOM_SHOW_CREATE;
@@ -34382,140 +34394,140 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->only_view= 1;
           }
-#line 34386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1894:
-#line 12460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_SHOW_MASTER_STAT;
           }
-#line 34394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1895:
-#line 12464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
             Lex->verbose= 1;
           }
-#line 34403 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1896:
-#line 12469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             lex->mi.connection_name= null_lex_str;
             lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
             lex->verbose= 0;
           }
-#line 34414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1897:
-#line 12476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
             Lex->verbose= 0;
           }
-#line 34423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1898:
-#line 12481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12470 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
             lex->sql_command = SQLCOM_SHOW_CREATE_PROC;
             lex->spname= (yyvsp[0].spname);
           }
-#line 34434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1899:
-#line 12488 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
             lex->sql_command = SQLCOM_SHOW_CREATE_FUNC;
             lex->spname= (yyvsp[0].spname);
           }
-#line 34445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34457 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1900:
-#line 12495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER;
             lex->spname= (yyvsp[0].spname);
           }
-#line 34455 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1901:
-#line 12501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_STATUS_PROC;
             if (prepare_schema_table(thd, lex, 0, SCH_PROCEDURES))
               MYSQL_YYABORT;
           }
-#line 34466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1902:
-#line 12508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_SHOW_STATUS_FUNC;
             if (prepare_schema_table(thd, lex, 0, SCH_PROCEDURES))
               MYSQL_YYABORT;
           }
-#line 34477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1903:
-#line 12515 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_SHOW_PROC_CODE;
             Lex->spname= (yyvsp[0].spname);
           }
-#line 34486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1904:
-#line 12520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_SHOW_FUNC_CODE;
             Lex->spname= (yyvsp[0].spname);
           }
-#line 34495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1905:
-#line 12525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->spname= (yyvsp[0].spname);
             Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT;
           }
-#line 34504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1906:
-#line 12530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_SHOW_EXPLAIN;
             if (prepare_schema_table(thd, Lex, 0, SCH_EXPLAIN))
               MYSQL_YYABORT;
             add_value_to_list(thd, (yyvsp[0].item));
           }
-#line 34515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1907:
-#line 12537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              LEX *lex= Lex;
              bool in_plugin;
@@ -34534,83 +34546,83 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
              if (make_schema_select(thd, Lex->current_select, table))
                MYSQL_YYABORT;
            }
-#line 34538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1908:
-#line 12559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; }
-#line 34544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1909:
-#line 12561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; }
-#line 34550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1910:
-#line 12563 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; }
-#line 34556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1915:
-#line 12577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.simple_string)= 0; }
-#line 34562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1916:
-#line 12578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.simple_string)= (yyvsp[0].lex_str).str; }
-#line 34568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1917:
-#line 12582 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->verbose=0; }
-#line 34574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1918:
-#line 12583 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->verbose=1; }
-#line 34580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34592 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1921:
-#line 12592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->mi.log_file_name = 0; }
-#line 34586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1922:
-#line 12593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12582 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->mi.log_file_name = (yyvsp[0].lex_str).str; }
-#line 34592 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1923:
-#line 12597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->mi.pos = 4; /* skip magic number */ }
-#line 34598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1924:
-#line 12598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->mi.pos = (yyvsp[0].ulonglong_number); }
-#line 34604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1925:
-#line 12602 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.simple_string)= 0; }
-#line 34610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1926:
-#line 12604 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->wild= new (thd->mem_root) String((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length,
                                                     system_charset_info);
@@ -34618,22 +34630,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             (yyval.simple_string)= (yyvsp[-1].simple_string);
           }
-#line 34622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1927:
-#line 12612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->where= normalize_cond(thd, (yyvsp[0].item));
             if ((yyvsp[0].item))
               (yyvsp[0].item)->top_level_item();
             (yyval.simple_string)= (yyvsp[-1].simple_string);
           }
-#line 34633 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34645 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1928:
-#line 12623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             mysql_init_select(lex);
@@ -34644,66 +34656,66 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (prepare_schema_table(thd, lex, (yyvsp[0].table), SCH_COLUMNS))
               MYSQL_YYABORT;
           }
-#line 34648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1929:
-#line 12634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Select->parsing_place= NO_MATTER;
           }
-#line 34656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1930:
-#line 12638 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->describe|= DESCRIBE_NORMAL; }
-#line 34662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1931:
-#line 12640 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12629 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->select_lex.options|= SELECT_DESCRIBE;
           }
-#line 34671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1939:
-#line 12661 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12650 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->analyze_stmt= true;
           }
-#line 34679 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1940:
-#line 12667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->describe|= DESCRIBE_EXTENDED; }
-#line 34685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1941:
-#line 12668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->describe|= DESCRIBE_PARTITIONS; }
-#line 34691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1942:
-#line 12669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1943:
-#line 12673 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1944:
-#line 12675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!my_strcasecmp(system_charset_info, (yyvsp[0].lex_str).str, "JSON"))
               Lex->explain_json= true;
@@ -34712,23 +34724,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else
               my_yyabort_error((ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0), (yyvsp[0].lex_str).str));
           }
-#line 34716 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1945:
-#line 12686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1946:
-#line 12687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12676 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->wild= (yyvsp[0].string); }
-#line 34728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1947:
-#line 12689 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12678 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->wild= new (thd->mem_root) String((const char*) (yyvsp[0].lex_str).str,
                                                     (yyvsp[0].lex_str).length,
@@ -34736,28 +34748,28 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->wild == NULL)
               MYSQL_YYABORT;
           }
-#line 34740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34752 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1948:
-#line 12703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_FLUSH;
             lex->type= 0;
             lex->no_write_to_binlog= (yyvsp[0].num);
           }
-#line 34751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34763 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1949:
-#line 12710 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34757 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34769 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1950:
-#line 12715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->type|= REFRESH_TABLES;
             /*
@@ -34767,23 +34779,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             YYPS->m_lock_type= TL_READ_NO_INSERT;
             YYPS->m_mdl_type= MDL_SHARED_HIGH_PRIO;
           }
-#line 34771 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1951:
-#line 12725 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1953:
-#line 12730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1954:
-#line 12732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           TABLE_LIST *tables= Lex->query_tables;
           for (; tables; tables= tables->next_global)
@@ -34793,17 +34805,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tables->open_type= OT_BASE_ONLY;      /* Ignore temporary tables. */
           }
         }
-#line 34797 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1955:
-#line 12745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_READ_LOCK | (yyvsp[0].num); }
-#line 34803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34815 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1956:
-#line 12747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12736 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->query_tables == NULL) // Table list can't be empty
             {
@@ -34812,53 +34824,53 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             } 
             Lex->type|= REFRESH_FOR_EXPORT;
           }
-#line 34816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1957:
-#line 12754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1959:
-#line 12760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1960:
-#line 12765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_ERROR_LOG; }
-#line 34834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1961:
-#line 12767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_ENGINE_LOG; }
-#line 34840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1962:
-#line 12769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_GENERAL_LOG; }
-#line 34846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1963:
-#line 12771 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_SLOW_LOG; }
-#line 34852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1964:
-#line 12773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_BINARY_LOG; }
-#line 34858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1965:
-#line 12775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->type & REFRESH_RELAY_LOG)
@@ -34866,44 +34878,44 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->type|= REFRESH_RELAY_LOG;
             lex->relay_log_connection_name= lex->mi.connection_name;
            }
-#line 34870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1966:
-#line 12783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_QUERY_CACHE_FREE; }
-#line 34876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1967:
-#line 12785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_HOSTS; }
-#line 34882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1968:
-#line 12787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12776 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_GRANT; }
-#line 34888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1969:
-#line 12789 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->type|= REFRESH_LOG;
             Lex->relay_log_connection_name= empty_lex_str;
           }
-#line 34897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1970:
-#line 12794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_STATUS; }
-#line 34903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1971:
-#line 12796 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             LEX *lex= Lex;
             if (lex->type & REFRESH_SLAVE)
@@ -34911,29 +34923,29 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->type|= REFRESH_SLAVE;
             lex->reset_slave_info.all= false;
           }
-#line 34915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1972:
-#line 12804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_MASTER; }
-#line 34921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1973:
-#line 12806 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12795 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_DES_KEY_FILE; }
-#line 34927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34939 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1974:
-#line 12808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_USER_RESOURCES; }
-#line 34933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1975:
-#line 12810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              Lex->type|= REFRESH_GENERIC;
              ST_SCHEMA_TABLE *table= find_schema_table(thd, (yyvsp[-1].lex_str).str);
@@ -34946,35 +34958,35 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                        thd->memdup(&(yyvsp[-1].lex_str), sizeof(LEX_STRING)),
                                        thd->mem_root);
            }
-#line 34950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1976:
-#line 12825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12814 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1977:
-#line 12826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1978:
-#line 12830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1979:
-#line 12832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 34974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 34986 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1983:
-#line 12842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             uint32 value= (uint32) (yyvsp[0].ulonglong_number);
             if ((yyvsp[0].ulonglong_number) > UINT_MAX32)
@@ -34987,126 +34999,126 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             insert_dynamic(&Lex->delete_gtid_domain, (uchar*) &value);
           }
-#line 34991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1984:
-#line 12857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num)= 0;}
-#line 34997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1985:
-#line 12858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.num)= REFRESH_CHECKPOINT; }
-#line 35003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1986:
-#line 12862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_RESET; lex->type=0;
           }
-#line 35012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1987:
-#line 12867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1990:
-#line 12876 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_SLAVE; }
-#line 35024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1991:
-#line 12878 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 35030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1992:
-#line 12880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
              Lex->type|= REFRESH_MASTER;
              Lex->next_binlog_file_number= 0;
           }
-#line 35039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1994:
-#line 12885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12874 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->type|= REFRESH_QUERY_CACHE;}
-#line 35045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1995:
-#line 12889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12878 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->reset_slave_info.all= false; }
-#line 35051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1996:
-#line 12890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->reset_slave_info.all= true; }
-#line 35057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1997:
-#line 12894 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12883 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1998:
-#line 12896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->next_binlog_file_number = (yyvsp[0].ulong_num);
           }
-#line 35071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 1999:
-#line 12903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->type=0;
             lex->sql_command = SQLCOM_PURGE;
           }
-#line 35081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2000:
-#line 12909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2002:
-#line 12918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12907 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->to_log = (yyvsp[0].lex_str).str;
           }
-#line 35095 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2003:
-#line 12922 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12911 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->value_list.empty();
             lex->value_list.push_front((yyvsp[0].item), thd->mem_root);
             lex->sql_command= SQLCOM_PURGE_BEFORE;
           }
-#line 35106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35118 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2004:
-#line 12934 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->value_list.empty();
@@ -35114,97 +35126,97 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_KILL;
             lex->kill_type= KILL_TYPE_ID;
           }
-#line 35118 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35130 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2005:
-#line 12942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->kill_signal= (killed_state) ((yyvsp[-2].num) | (yyvsp[-1].num));
           }
-#line 35126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2006:
-#line 12948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (int) KILL_HARD_BIT; }
-#line 35132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2007:
-#line 12949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (int) KILL_HARD_BIT; }
-#line 35138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2008:
-#line 12950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 35144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2009:
-#line 12953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (int) KILL_CONNECTION; }
-#line 35150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2010:
-#line 12954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (int) KILL_CONNECTION; }
-#line 35156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2011:
-#line 12955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= (int) KILL_QUERY; }
-#line 35162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2012:
-#line 12957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= (int) KILL_QUERY;
             Lex->kill_type= KILL_TYPE_QUERY;
           }
-#line 35171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2013:
-#line 12965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
           Lex->value_list.push_front((yyval.item), thd->mem_root);
          }
-#line 35179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2014:
-#line 12969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root);
             Lex->kill_type= KILL_TYPE_USER;
           }
-#line 35188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2015:
-#line 12977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->sql_command= SQLCOM_SHUTDOWN; }
-#line 35194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2016:
-#line 12984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command=SQLCOM_CHANGE_DB;
             lex->select_lex.db= (yyvsp[0].lex_str).str;
           }
-#line 35204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35216 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2017:
-#line 12995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             mysql_init_select(lex);
@@ -35216,11 +35228,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 35220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35232 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2018:
-#line 13007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 12996 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_LOAD;
@@ -35230,11 +35242,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!(lex->exchange= new (thd->mem_root) sql_exchange((yyvsp[0].lex_str).str, 0, (yyvsp[-5].filetype))))
               MYSQL_YYABORT;
           }
-#line 35234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2019:
-#line 13017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13006 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
@@ -35245,53 +35257,53 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->value_list.empty();
             lex->many_values.empty();
           }
-#line 35249 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35261 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2020:
-#line 13028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->exchange->cs= (yyvsp[0].charset); }
-#line 35255 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2021:
-#line 13032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35261 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35273 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2022:
-#line 13036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.filetype)= FILETYPE_CSV; }
-#line 35267 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2023:
-#line 13037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.filetype)= FILETYPE_XML; }
-#line 35273 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2024:
-#line 13041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13030 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)=0;}
-#line 35279 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2025:
-#line 13042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)=1;}
-#line 35285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2026:
-#line 13046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE_DEFAULT; }
-#line 35291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2027:
-#line 13048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Ignore this option in SP to avoid problem with query cache and
@@ -35299,182 +35311,182 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
           }
-#line 35303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2028:
-#line 13055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
-#line 35309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2029:
-#line 13059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->duplicates=DUP_ERROR; }
-#line 35315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2030:
-#line 13060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->duplicates=DUP_REPLACE; }
-#line 35321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2031:
-#line 13061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ignore= 1; }
-#line 35327 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2036:
-#line 13076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13065 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->field_term= (yyvsp[0].string);
           }
-#line 35336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2037:
-#line 13081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             DBUG_ASSERT(lex->exchange != 0);
             lex->exchange->enclosed= (yyvsp[0].string);
             lex->exchange->opt_enclosed= 1;
           }
-#line 35347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2038:
-#line 13088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->enclosed= (yyvsp[0].string);
           }
-#line 35356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2039:
-#line 13093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->escaped= (yyvsp[0].string);
           }
-#line 35365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2044:
-#line 13111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->line_term= (yyvsp[0].string);
           }
-#line 35374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2045:
-#line 13116 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13105 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->line_start= (yyvsp[0].string);
           }
-#line 35383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2046:
-#line 13123 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 35389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2047:
-#line 13125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->exchange->line_term = (yyvsp[0].string); }
-#line 35395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2049:
-#line 13130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             DBUG_ASSERT(Lex->exchange != 0);
             Lex->exchange->skip_lines= atol((yyvsp[-1].lex_str).str);
           }
-#line 35404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2050:
-#line 13137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 35410 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2051:
-#line 13138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 35416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2052:
-#line 13142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2053:
-#line 13143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2054:
-#line 13144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2055:
-#line 13149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
-#line 35440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2056:
-#line 13151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
-#line 35446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2057:
-#line 13155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {(yyval.item)= (yyvsp[0].item);}
-#line 35452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2058:
-#line 13157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_user_var_as_out_param(thd, (yyvsp[0].lex_str));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2059:
-#line 13165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2060:
-#line 13166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 35474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2063:
-#line 13176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->update_list.push_back((yyvsp[-4].item), thd->mem_root) || 
@@ -35482,11 +35494,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             (yyvsp[-1].item)->set_name_no_truncate((yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
           }
-#line 35486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2064:
-#line 13189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX_STRING tmp;
             CHARSET_INFO *cs_con= thd->variables.collation_connection;
@@ -35510,11 +35522,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2065:
-#line 13213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             uint repertoire= Lex->text_string_is_7bit ?
                              MY_REPERTOIRE_ASCII : MY_REPERTOIRE_UNICODE30;
@@ -35526,22 +35538,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2066:
-#line 13225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_string_with_introducer(thd, (yyvsp[0].lex_str).str,
                                                                 (yyvsp[0].lex_str).length, (yyvsp[-1].charset));
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35553 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2067:
-#line 13232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_string* item= (Item_string*) (yyvsp[-1].item);
             item->append((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
@@ -35557,11 +35569,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                                                 (yyvsp[0].lex_str).length);
             }
           }
-#line 35561 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2068:
-#line 13251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.string)= new (thd->mem_root) String((yyvsp[0].lex_str).str,
                                              (yyvsp[0].lex_str).length,
@@ -35569,17 +35581,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.string) == NULL)
               MYSQL_YYABORT;
           }
-#line 35573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2069:
-#line 13258 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.string)= (yyvsp[0].string); }
-#line 35579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2070:
-#line 13264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *tmp= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str,
                                                            (yyvsp[0].lex_str).length);
@@ -35592,11 +35604,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tmp->quick_fix_field();
             (yyval.string)= tmp->val_str((String*) 0);
           }
-#line 35596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2071:
-#line 13277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13266 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *tmp= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str,
                                                            (yyvsp[0].lex_str).length);
@@ -35605,11 +35617,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tmp->quick_fix_field();
             (yyval.string)= tmp->val_str((String*) 0);
           }
-#line 35609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2072:
-#line 13286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item *tmp= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str,
                                                            (yyvsp[0].lex_str).length);
@@ -35622,11 +35634,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tmp->quick_fix_field();
             (yyval.string)= tmp->val_str((String*) 0);
           }
-#line 35626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2073:
-#line 13302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -35640,50 +35652,50 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!((yyval.item_param)= item) || lex->param_list.push_back(item, thd->mem_root))
               my_yyabort_error((ER_OUT_OF_RESOURCES, MYF(0)));
           }
-#line 35644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2074:
-#line 13318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = (yyvsp[0].item); }
-#line 35650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2075:
-#line 13319 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = (yyvsp[0].item_num); }
-#line 35656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2076:
-#line 13321 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyvsp[0].item_num)->max_length++;
             (yyval.item)= (yyvsp[0].item_num)->neg(thd);
           }
-#line 35665 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2077:
-#line 13328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13317 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = (yyvsp[0].item); }
-#line 35671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2078:
-#line 13329 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item) = (yyvsp[0].item_num); }
-#line 35677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2079:
-#line 13330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13319 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 35683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35695 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2080:
-#line 13332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13321 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               For the digest computation, in this context only,
@@ -35697,61 +35709,61 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             YYLIP->next_state= MY_LEX_OPERATOR_OR_IDENT;
           }
-#line 35701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35713 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2081:
-#line 13346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_int(thd, (char*) "FALSE",0,1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2082:
-#line 13352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_int(thd, (char*) "TRUE",1,1);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2083:
-#line 13358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35731 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2084:
-#line 13364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13353 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2085:
-#line 13370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35763 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2086:
-#line 13376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_string_with_introducer *item_str;
             /*
@@ -35766,11 +35778,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             (yyval.item)= item_str;
           }
-#line 35770 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2087:
-#line 13394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             int error;
             (yyval.item_num)= new (thd->mem_root)
@@ -35780,11 +35792,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item_num) == NULL)
               MYSQL_YYABORT;
           }
-#line 35784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2088:
-#line 13404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             int error;
             (yyval.item_num)= new (thd->mem_root)
@@ -35794,21 +35806,21 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item_num) == NULL)
               MYSQL_YYABORT;
           }
-#line 35798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2089:
-#line 13414 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_num)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if ((yyval.item_num) == NULL)
               MYSQL_YYABORT;
           }
-#line 35808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2090:
-#line 13420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_num)= new (thd->mem_root) Item_decimal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length,
                                                    thd->charset());
@@ -35817,11 +35829,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 35821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2091:
-#line 13429 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13418 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item_num)= new (thd->mem_root) Item_float(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if (((yyval.item_num) == NULL) || (thd->is_error()))
@@ -35829,53 +35841,53 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 35833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35845 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2092:
-#line 13441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13430 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.item)= create_temporal_literal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYCSCL,
                                               MYSQL_TYPE_DATE, true)))
               MYSQL_YYABORT;
           }
-#line 35843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2093:
-#line 13447 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13436 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.item)= create_temporal_literal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYCSCL,
                                               MYSQL_TYPE_TIME, true)))
               MYSQL_YYABORT;
           }
-#line 35853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35865 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2094:
-#line 13453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.item)= create_temporal_literal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYCSCL,
                                               MYSQL_TYPE_DATETIME, true)))
               MYSQL_YYABORT;
           }
-#line 35863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2095:
-#line 13468 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=(yyvsp[0].item); }
-#line 35869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2096:
-#line 13469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=(yyvsp[0].item); }
-#line 35875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2097:
-#line 13474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             (yyval.item)= new (thd->mem_root) Item_field(thd, Lex->current_context(),
@@ -35884,11 +35896,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             sel->with_wild++;
           }
-#line 35888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2098:
-#line 13483 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel= Select;
             const char* schema= thd->client_capabilities & CLIENT_NO_SCHEMA ?
@@ -35900,17 +35912,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             sel->with_wild++;
           }
-#line 35904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35916 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2099:
-#line 13497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13486 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=(yyvsp[0].item); }
-#line 35910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35922 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2100:
-#line 13502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -35953,17 +35965,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 35957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2101:
-#line 13544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 35963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2102:
-#line 13549 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             SELECT_LEX *sel=Select;
             if ((sel->parsing_place != IN_HAVING) ||
@@ -35980,17 +35992,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 35984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 35996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2103:
-#line 13565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)= (yyvsp[0].item); }
-#line 35990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2104:
-#line 13570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
 
@@ -36062,11 +36074,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 36066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2105:
-#line 13642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             SELECT_LEX *sel= lex->current_select;
@@ -36090,11 +36102,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 36094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2106:
-#line 13666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13655 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             SELECT_LEX *sel= lex->current_select;
@@ -36121,17 +36133,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 36125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2107:
-#line 13695 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13684 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str);}
-#line 36131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2108:
-#line 13697 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             TABLE_LIST *table= Select->table_list.first;
             if (my_strcasecmp(table_alias_charset, (yyvsp[-4].lex_str).str, table->db))
@@ -36141,96 +36153,96 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].lex_str).str));
             (yyval.lex_str)=(yyvsp[0].lex_str);
           }
-#line 36145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2109:
-#line 13707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             TABLE_LIST *table= Select->table_list.first;
             if (my_strcasecmp(table_alias_charset, (yyvsp[-2].lex_str).str, table->alias))
               my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].lex_str).str));
             (yyval.lex_str)=(yyvsp[0].lex_str);
           }
-#line 36156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2110:
-#line 13713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str);}
-#line 36162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2111:
-#line 13718 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.table)= new (thd->mem_root) Table_ident((yyvsp[0].lex_str));
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2112:
-#line 13724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.table)= new (thd->mem_root) Table_ident(thd, (yyvsp[-2].lex_str), (yyvsp[0].lex_str), 0);
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2113:
-#line 13730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /* For Delphi */
             (yyval.table)= new (thd->mem_root) Table_ident((yyvsp[0].lex_str));
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36193 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2114:
-#line 13740 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.table)= new (thd->mem_root) Table_ident((yyvsp[-1].lex_str));
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36203 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2115:
-#line 13746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.table)= new (thd->mem_root) Table_ident(thd, (yyvsp[-3].lex_str), (yyvsp[-1].lex_str), 0);
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2116:
-#line 13755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX_STRING db={(char*) any_db,3};
             (yyval.table)= new (thd->mem_root) Table_ident(thd, db, (yyvsp[0].lex_str), 0);
             if ((yyval.table) == NULL)
               MYSQL_YYABORT;
           }
-#line 36224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2117:
-#line 13764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)= (yyvsp[0].lex_str); }
-#line 36230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2118:
-#line 13766 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (thd->charset_is_system_charset)
             {
@@ -36255,11 +36267,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 36259 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2119:
-#line 13794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (thd->charset_is_system_charset)
               (yyval.lex_str)= (yyvsp[0].lex_str);
@@ -36270,11 +36282,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 36274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2120:
-#line 13808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (thd->charset_is_collation_connection)
               (yyval.lex_str)= (yyvsp[0].lex_str);
@@ -36285,11 +36297,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             } 
           }
-#line 36289 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36301 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2121:
-#line 13822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13811 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (thd->charset_is_character_set_filesystem)
               (yyval.lex_str)= (yyvsp[0].lex_str);
@@ -36301,63 +36313,63 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 36305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2122:
-#line 13836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 36311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2123:
-#line 13838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_str).str= thd->strmake((yyvsp[0].symbol).str, (yyvsp[0].symbol).length);
             if ((yyval.lex_str).str == NULL)
               MYSQL_YYABORT;
             (yyval.lex_str).length= (yyvsp[0].symbol).length;
           }
-#line 36322 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36334 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2124:
-#line 13847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str); }
-#line 36328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2125:
-#line 13849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_str).str= thd->strmake((yyvsp[0].symbol).str, (yyvsp[0].symbol).length);
             if ((yyval.lex_str).str == NULL)
               MYSQL_YYABORT;
             (yyval.lex_str).length= (yyvsp[0].symbol).length;
           }
-#line 36339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2126:
-#line 13858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str);}
-#line 36345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2127:
-#line 13859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str);}
-#line 36351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36363 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2128:
-#line 13860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_str)=(yyvsp[0].lex_str);}
-#line 36357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2129:
-#line 13865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
               MYSQL_YYABORT;
@@ -36370,11 +36382,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                          system_charset_info, 0))
               MYSQL_YYABORT;
           }
-#line 36374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2130:
-#line 13878 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
               MYSQL_YYABORT;
@@ -36404,11 +36416,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               (yyval.lex_user)->host= host_not_specified;
             }
           }
-#line 36408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2131:
-#line 13908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.lex_user)=(LEX_USER*)thd->calloc(sizeof(LEX_USER))))
               MYSQL_YYABORT;
@@ -36416,2241 +36428,2241 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.lex_user)->plugin= empty_lex_str;
             (yyval.lex_user)->auth= empty_lex_str;
           }
-#line 36420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2134:
-#line 13920 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
            if ((yyvsp[0].lex_user)->user.str != current_user.str && (yyvsp[0].lex_user)->host.str == 0)
              (yyvsp[0].lex_user)->host= host_not_specified;
            (yyval.lex_user)= (yyvsp[0].lex_user);
          }
-#line 36430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2135:
-#line 13929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2136:
-#line 13930 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2137:
-#line 13931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13920 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2138:
-#line 13932 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2139:
-#line 13933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13922 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36472 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2140:
-#line 13934 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2141:
-#line 13935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36472 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2142:
-#line 13936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2143:
-#line 13937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2144:
-#line 13938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2145:
-#line 13939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13928 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2146:
-#line 13940 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2147:
-#line 13941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13930 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36520 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2148:
-#line 13942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2149:
-#line 13943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13932 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36520 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2150:
-#line 13944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2151:
-#line 13945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13934 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2152:
-#line 13946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2153:
-#line 13947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2154:
-#line 13948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2155:
-#line 13949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2156:
-#line 13950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2157:
-#line 13951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13940 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2158:
-#line 13952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2159:
-#line 13953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36592 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2160:
-#line 13954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2161:
-#line 13955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36592 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2162:
-#line 13956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2163:
-#line 13957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2164:
-#line 13958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2165:
-#line 13959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2166:
-#line 13960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2167:
-#line 13961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13950 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2168:
-#line 13962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2169:
-#line 13963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2170:
-#line 13964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2171:
-#line 13965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2172:
-#line 13966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2173:
-#line 13967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2174:
-#line 13968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2175:
-#line 13969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2176:
-#line 13970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2177:
-#line 13971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36700 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2178:
-#line 13972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36706 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2179:
-#line 13973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36700 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36712 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2180:
-#line 13974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36706 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36718 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2181:
-#line 13975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36712 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36724 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2182:
-#line 13976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36718 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2183:
-#line 13977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36724 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36736 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2184:
-#line 13978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2185:
-#line 13979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36736 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36748 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2186:
-#line 13980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2187:
-#line 13981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36748 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2188:
-#line 13982 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2189:
-#line 13983 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2190:
-#line 13984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2191:
-#line 13985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2192:
-#line 13986 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2193:
-#line 13987 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2194:
-#line 13988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2195:
-#line 13989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2196:
-#line 13999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2197:
-#line 14000 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13989 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2198:
-#line 14001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2199:
-#line 14002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2200:
-#line 14003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2201:
-#line 14004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2202:
-#line 14005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2203:
-#line 14006 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2204:
-#line 14007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13996 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2205:
-#line 14008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13997 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2206:
-#line 14009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13998 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2207:
-#line 14010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 13999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2208:
-#line 14011 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14000 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2209:
-#line 14012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2210:
-#line 14013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2211:
-#line 14014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2212:
-#line 14015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2213:
-#line 14016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36916 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2214:
-#line 14017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14006 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36922 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2215:
-#line 14018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36916 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2216:
-#line 14019 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36922 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2217:
-#line 14020 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2218:
-#line 14021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2219:
-#line 14022 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14011 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36952 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2220:
-#line 14023 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2221:
-#line 14024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36952 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2222:
-#line 14025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2223:
-#line 14026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2224:
-#line 14027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36982 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2225:
-#line 14028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2226:
-#line 14029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36982 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 36994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2227:
-#line 14030 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14019 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2228:
-#line 14031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14020 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 36994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2229:
-#line 14032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2230:
-#line 14033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14022 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2231:
-#line 14034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14023 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2232:
-#line 14035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2233:
-#line 14036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2234:
-#line 14037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2235:
-#line 14038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37048 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2236:
-#line 14039 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2237:
-#line 14040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37048 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2238:
-#line 14041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14030 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2239:
-#line 14042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2240:
-#line 14043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2241:
-#line 14044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2242:
-#line 14045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2243:
-#line 14046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2244:
-#line 14047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2245:
-#line 14048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2246:
-#line 14053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2247:
-#line 14054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2248:
-#line 14055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2249:
-#line 14056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2250:
-#line 14057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2251:
-#line 14058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2252:
-#line 14059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2253:
-#line 14060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2254:
-#line 14061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2255:
-#line 14062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2256:
-#line 14063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2257:
-#line 14064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2258:
-#line 14065 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2259:
-#line 14066 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2260:
-#line 14067 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37198 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2261:
-#line 14068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2262:
-#line 14069 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37198 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37210 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2263:
-#line 14070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37216 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2264:
-#line 14071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37210 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2265:
-#line 14072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37216 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2266:
-#line 14073 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2267:
-#line 14074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2268:
-#line 14075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2269:
-#line 14076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14065 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2270:
-#line 14077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14066 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2271:
-#line 14078 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14067 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2272:
-#line 14079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2273:
-#line 14080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14069 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2274:
-#line 14081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2275:
-#line 14082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2276:
-#line 14083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2277:
-#line 14084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14073 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2278:
-#line 14085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2279:
-#line 14086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2280:
-#line 14087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37318 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2281:
-#line 14088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37324 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2282:
-#line 14089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14078 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37318 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2283:
-#line 14090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37324 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2284:
-#line 14091 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2285:
-#line 14092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2286:
-#line 14093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2287:
-#line 14094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2288:
-#line 14095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2289:
-#line 14096 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2290:
-#line 14097 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2291:
-#line 14098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2292:
-#line 14099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2293:
-#line 14100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2294:
-#line 14101 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2295:
-#line 14102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14091 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2296:
-#line 14103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2297:
-#line 14104 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2298:
-#line 14105 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2299:
-#line 14106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2300:
-#line 14107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14096 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2301:
-#line 14108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14097 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2302:
-#line 14109 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2303:
-#line 14110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2304:
-#line 14111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2305:
-#line 14112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14101 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2306:
-#line 14113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2307:
-#line 14114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2308:
-#line 14115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14104 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2309:
-#line 14116 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14105 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2310:
-#line 14117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2311:
-#line 14118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2312:
-#line 14119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37510 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2313:
-#line 14120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14109 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2314:
-#line 14121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37510 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2315:
-#line 14122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2316:
-#line 14123 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2317:
-#line 14124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37540 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2318:
-#line 14125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2319:
-#line 14126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37540 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37552 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2320:
-#line 14127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14116 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2321:
-#line 14128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37552 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37564 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2322:
-#line 14129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2323:
-#line 14130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37564 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2324:
-#line 14131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2325:
-#line 14132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2326:
-#line 14133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37594 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2327:
-#line 14134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14123 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2328:
-#line 14135 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37594 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2329:
-#line 14136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2330:
-#line 14137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2331:
-#line 14138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37624 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2332:
-#line 14139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2333:
-#line 14140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37624 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2334:
-#line 14141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2335:
-#line 14142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2336:
-#line 14143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2337:
-#line 14144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2338:
-#line 14145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37666 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2339:
-#line 14146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14135 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37672 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2340:
-#line 14147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37666 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2341:
-#line 14148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37672 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37684 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2342:
-#line 14149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37690 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2343:
-#line 14150 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37684 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2344:
-#line 14151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37690 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2345:
-#line 14152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2346:
-#line 14153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2347:
-#line 14154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2348:
-#line 14155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14144 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2349:
-#line 14156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2350:
-#line 14157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2351:
-#line 14158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2352:
-#line 14159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2353:
-#line 14160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2354:
-#line 14161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14150 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2355:
-#line 14162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2356:
-#line 14163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2357:
-#line 14164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2358:
-#line 14165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2359:
-#line 14166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2360:
-#line 14167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2361:
-#line 14168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2362:
-#line 14169 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2363:
-#line 14170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2364:
-#line 14171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2365:
-#line 14172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2366:
-#line 14173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2367:
-#line 14174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2368:
-#line 14175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2369:
-#line 14176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2370:
-#line 14177 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2371:
-#line 14178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2372:
-#line 14179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2373:
-#line 14180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14169 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2374:
-#line 14181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2375:
-#line 14182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2376:
-#line 14183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2377:
-#line 14184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2378:
-#line 14185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2379:
-#line 14186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2380:
-#line 14187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2381:
-#line 14188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14177 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2382:
-#line 14189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2383:
-#line 14190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2384:
-#line 14191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2385:
-#line 14192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2386:
-#line 14193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2387:
-#line 14194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2388:
-#line 14195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2389:
-#line 14196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2390:
-#line 14197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2391:
-#line 14198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2392:
-#line 14199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2393:
-#line 14200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 37996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2394:
-#line 14201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2395:
-#line 14202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 37996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2396:
-#line 14203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2397:
-#line 14204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2398:
-#line 14205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2399:
-#line 14206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2400:
-#line 14207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2401:
-#line 14208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2402:
-#line 14209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2403:
-#line 14210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2404:
-#line 14211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38062 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2405:
-#line 14212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38068 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2406:
-#line 14213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38062 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2407:
-#line 14214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38068 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2408:
-#line 14215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2409:
-#line 14216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2410:
-#line 14217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2411:
-#line 14218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2412:
-#line 14219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2413:
-#line 14220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2414:
-#line 14221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2415:
-#line 14222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2416:
-#line 14223 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2417:
-#line 14224 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38140 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2418:
-#line 14225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2419:
-#line 14226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38140 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2420:
-#line 14227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2421:
-#line 14228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38164 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2422:
-#line 14229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2423:
-#line 14230 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38164 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2424:
-#line 14231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2425:
-#line 14232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2426:
-#line 14233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2427:
-#line 14234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14223 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2428:
-#line 14235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14224 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2429:
-#line 14236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2430:
-#line 14237 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2431:
-#line 14238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2432:
-#line 14239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2433:
-#line 14240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2434:
-#line 14241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14230 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2435:
-#line 14242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2436:
-#line 14243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2437:
-#line 14244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2438:
-#line 14245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2439:
-#line 14246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2440:
-#line 14247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2441:
-#line 14248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14237 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38284 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2442:
-#line 14249 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2443:
-#line 14250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38284 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38296 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2444:
-#line 14251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2445:
-#line 14252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38296 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2446:
-#line 14253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2447:
-#line 14254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2448:
-#line 14255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2449:
-#line 14256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2450:
-#line 14257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2451:
-#line 14258 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2452:
-#line 14259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2453:
-#line 14260 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14249 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2454:
-#line 14261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2455:
-#line 14262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2456:
-#line 14263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2457:
-#line 14264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38380 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2458:
-#line 14265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38374 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2459:
-#line 14266 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38380 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2460:
-#line 14267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2461:
-#line 14268 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38392 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2462:
-#line 14269 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14258 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38410 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2463:
-#line 14270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2464:
-#line 14271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14260 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38410 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2465:
-#line 14272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2466:
-#line 14273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2467:
-#line 14274 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2468:
-#line 14275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2469:
-#line 14276 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2470:
-#line 14277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14266 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2471:
-#line 14278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2472:
-#line 14279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14268 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2473:
-#line 14280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14269 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2474:
-#line 14281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2475:
-#line 14282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38488 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2476:
-#line 14283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2477:
-#line 14284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38488 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2478:
-#line 14285 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14274 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2479:
-#line 14286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2480:
-#line 14287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14276 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2481:
-#line 14288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2482:
-#line 14289 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2483:
-#line 14290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38536 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2484:
-#line 14291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2485:
-#line 14292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38536 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2486:
-#line 14293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2487:
-#line 14294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2488:
-#line 14295 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2489:
-#line 14296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14285 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2490:
-#line 14297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2491:
-#line 14298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38584 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2492:
-#line 14299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2493:
-#line 14300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14289 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38584 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2494:
-#line 14301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2495:
-#line 14302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2496:
-#line 14303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14292 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38602 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2497:
-#line 14304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2498:
-#line 14305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2499:
-#line 14306 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14295 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2500:
-#line 14307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2501:
-#line 14308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2502:
-#line 14309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2503:
-#line 14310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2504:
-#line 14311 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2505:
-#line 14323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SET_OPTION;
@@ -38660,17 +38672,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->autocommit= 0;
             sp_create_assignment_lex(thd, yychar == YYEMPTY);
           }
-#line 38664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2506:
-#line 14333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2507:
-#line 14335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             mysql_init_select(lex);
@@ -38678,11 +38690,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_SET_OPTION;
             lex->autocommit= 0;
           }
-#line 38682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2508:
-#line 14343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->table_or_sp_used())
@@ -38690,177 +38702,177 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->stmt_var_list= lex->var_list;
             lex->var_list.empty();
           }
-#line 38694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38706 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2509:
-#line 14351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 38700 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38712 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2512:
-#line 14366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT;
           }
-#line 38709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2514:
-#line 14372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_type= OPT_DEFAULT;
           }
-#line 38717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2515:
-#line 14376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT;
           }
-#line 38726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2516:
-#line 14381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_type= (yyvsp[0].var_type);
           }
-#line 38734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2518:
-#line 14391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT; 
           }
-#line 38743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2520:
-#line 14397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT; 
           }
-#line 38752 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38764 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2523:
-#line 14411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_create_assignment_lex(thd, yychar == YYEMPTY);
           }
-#line 38760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2524:
-#line 14415 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT; 
           }
-#line 38769 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38781 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2525:
-#line 14420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_create_assignment_lex(thd, yychar == YYEMPTY);
           }
-#line 38777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2526:
-#line 14424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (sp_create_assignment_instr(thd, yychar == YYEMPTY))
               MYSQL_YYABORT; 
           }
-#line 38786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2527:
-#line 14433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14422 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->option_type= (yyvsp[0].var_type);
           }
-#line 38794 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2530:
-#line 14441 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14430 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_GLOBAL; }
-#line 38800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2531:
-#line 14442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2532:
-#line 14443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38824 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2533:
-#line 14447 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14436 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2534:
-#line 14448 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14437 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_GLOBAL; }
-#line 38824 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2535:
-#line 14449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38842 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2536:
-#line 14450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2537:
-#line 14454 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_DEFAULT; }
-#line 38842 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2538:
-#line 14455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14444 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_GLOBAL; }
-#line 38848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2539:
-#line 14456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2540:
-#line 14457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.var_type)=OPT_SESSION; }
-#line 38860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2541:
-#line 14463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14452 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -38880,11 +38892,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 38884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2542:
-#line 14487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -38910,11 +38922,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 MYSQL_YYABORT;
             }
           }
-#line 38914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38926 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2543:
-#line 14513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Item_func_set_user_var *item;
             item= new (thd->mem_root) Item_func_set_user_var(thd, (yyvsp[-2].lex_str), (yyvsp[0].item));
@@ -38925,11 +38937,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Lex->var_list.push_back(var, thd->mem_root);
           }
-#line 38929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2544:
-#line 14524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             struct sys_var_with_base tmp= (yyvsp[-2].variable);
             if (tmp.var == trg_new_row_fake_var)
@@ -38946,11 +38958,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (set_system_variable(thd, &tmp, (yyvsp[-3].var_type), (yyvsp[0].item)))
               MYSQL_YYABORT;
           }
-#line 38950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2545:
-#line 14541 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             CHARSET_INFO *cs2;
@@ -38964,11 +38976,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->var_list.push_back(var, thd->mem_root);
           }
-#line 38968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2546:
-#line 14555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_pcontext *spc= lex->spcont;
@@ -38983,11 +38995,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             MYSQL_YYABORT;
           }
-#line 38987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 38999 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2547:
-#line 14570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             CHARSET_INFO *cs2;
@@ -39006,11 +39018,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->var_list.push_back(var, thd->mem_root);
           }
-#line 39010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2548:
-#line 14589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex = Lex;
             LEX_USER *user;
@@ -39027,11 +39039,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead)
               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
           }
-#line 39031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39043 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2549:
-#line 14606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex = Lex;
             set_var_default_role *var= (new (thd->mem_root)
@@ -39043,11 +39055,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead)
               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
           }
-#line 39047 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2550:
-#line 14618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex = Lex;
             set_var_role *var= new (thd->mem_root) set_var_role((yyvsp[0].lex_str));
@@ -39055,11 +39067,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->var_list.push_back(var, thd->mem_root);
           }
-#line 39059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2551:
-#line 14626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex = Lex;
             set_var_password *var= (new (thd->mem_root)
@@ -39071,11 +39083,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->sphead)
               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
           }
-#line 39075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2552:
-#line 14642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sp_pcontext *spc= thd->lex->spcont;
             sp_variable *spv;
@@ -39101,11 +39113,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               (yyval.variable).base_name= (yyvsp[0].lex_str);
             }
           }
-#line 39105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2553:
-#line 14668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (check_reserved_words(&(yyvsp[-2].lex_str)))
@@ -39142,11 +39154,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               (yyval.variable).base_name= (yyvsp[-2].lex_str);
             }
           }
-#line 39146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2554:
-#line 14705 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14694 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             sys_var *tmp=find_sys_var(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
             if (!tmp)
@@ -39157,11 +39169,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             (yyval.variable).base_name.str=    (char*) "default";
             (yyval.variable).base_name.length= 7;
           }
-#line 39161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2559:
-#line 14726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14715 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].num));
@@ -39176,11 +39188,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->var_list.push_back(var, thd->mem_root);
           }
-#line 39180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2560:
-#line 14744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].tx_isolation));
@@ -39195,47 +39207,47 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->var_list.push_back(var, thd->mem_root);
           }
-#line 39199 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2561:
-#line 14761 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14750 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= true; }
-#line 39205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2562:
-#line 14762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14751 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= false; }
-#line 39211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2563:
-#line 14766 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; }
-#line 39217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39229 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2564:
-#line 14767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.tx_isolation)= ISO_READ_COMMITTED; }
-#line 39223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2565:
-#line 14768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.tx_isolation)= ISO_REPEATABLE_READ; }
-#line 39229 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39241 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2566:
-#line 14769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.tx_isolation)= ISO_SERIALIZABLE; }
-#line 39235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39247 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2567:
-#line 14774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             sp_pcontext *spc= lex->spcont;
@@ -39249,82 +39261,82 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->definer->plugin= empty_lex_str;
             lex->definer->auth= empty_lex_str;
           }
-#line 39253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39265 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2568:
-#line 14787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14776 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->definer= (yyvsp[-1].lex_user); }
-#line 39259 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2569:
-#line 14791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14780 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->definer->pwhash= (yyvsp[0].lex_str);}
-#line 39265 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39277 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2570:
-#line 14792 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14781 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->definer->pwtext= (yyvsp[-1].lex_str); }
-#line 39271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2571:
-#line 14794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->definer->pwtext= (yyvsp[-1].lex_str);
             Lex->definer->pwhash.str= Item_func_password::alloc(thd,
                                    (yyvsp[-1].lex_str).str, (yyvsp[-1].lex_str).length, Item_func_password::OLD);
             Lex->definer->pwhash.length=  SCRAMBLED_PASSWORD_CHAR_LENGTH_323;
           }
-#line 39282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2572:
-#line 14803 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14792 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=(yyvsp[0].item); }
-#line 39288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2573:
-#line 14804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.item)=0; }
-#line 39294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2574:
-#line 14806 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14795 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ON",  2);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 39304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39316 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2575:
-#line 14812 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14801 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ALL", 3);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 39314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2576:
-#line 14818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "binary", 6);
             if ((yyval.item) == NULL)
               MYSQL_YYABORT;
           }
-#line 39324 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2577:
-#line 14829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -39332,29 +39344,29 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "LOCK"));
             lex->sql_command= SQLCOM_LOCK_TABLES;
           }
-#line 39336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2578:
-#line 14837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2579:
-#line 14841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 39348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2580:
-#line 14842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { }
-#line 39354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2583:
-#line 14852 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             thr_lock_type lock_type= (thr_lock_type) (yyvsp[0].num);
             bool lock_for_write= lock_type >= TL_WRITE_ALLOW_WRITE;
@@ -39369,43 +39381,43 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                            lock_type, mdl_type))
               MYSQL_YYABORT;
           }
-#line 39373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2584:
-#line 14869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= TL_READ_NO_INSERT; }
-#line 39379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39391 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2585:
-#line 14870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= TL_WRITE_DEFAULT; }
-#line 39385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39397 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2586:
-#line 14872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.num)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
           }
-#line 39393 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39405 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2587:
-#line 14876 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= TL_WRITE_LOW_PRIORITY; }
-#line 39399 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39411 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2588:
-#line 14877 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14866 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= TL_READ; }
-#line 39405 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2589:
-#line 14882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14871 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
 
@@ -39413,17 +39425,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "UNLOCK"));
             lex->sql_command= SQLCOM_UNLOCK_TABLES;
           }
-#line 39417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39429 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2590:
-#line 14890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2591:
-#line 14899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->sphead)
@@ -39432,11 +39444,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-2].table), (yyvsp[0].lex_str_ptr), 0))
               MYSQL_YYABORT;
           }
-#line 39436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2592:
-#line 14908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->sphead)
@@ -39445,11 +39457,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
               MYSQL_YYABORT;
           }
-#line 39449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2593:
-#line 14917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14906 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->sphead)
@@ -39466,11 +39478,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
               MYSQL_YYABORT;
           }
-#line 39470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2594:
-#line 14934 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->expr_allows_subselect= TRUE;
             /* Stored functions are not supported for HANDLER READ. */
@@ -39481,59 +39493,59 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             }
           }
-#line 39485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2595:
-#line 14947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ident= null_lex_str; }
-#line 39491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2596:
-#line 14948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ident= (yyvsp[-1].lex_str); }
-#line 39497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2597:
-#line 14952 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RFIRST; }
-#line 39503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2598:
-#line 14953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RNEXT;  }
-#line 39509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2599:
-#line 14957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RFIRST; }
-#line 39515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2600:
-#line 14958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RNEXT;  }
-#line 39521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2601:
-#line 14959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RPREV;  }
-#line 39527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2602:
-#line 14960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->ha_read_mode = RLAST;  }
-#line 39533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2603:
-#line 14962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->ha_read_mode = RKEY;
@@ -39541,63 +39553,63 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (!(lex->insert_list= new (thd->mem_root) List_item))
               MYSQL_YYABORT;
           }
-#line 39545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2604:
-#line 14970 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2605:
-#line 14974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT;   }
-#line 39557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2606:
-#line 14975 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14964 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; }
-#line 39563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2607:
-#line 14976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; }
-#line 39569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2608:
-#line 14977 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY;   }
-#line 39575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2609:
-#line 14978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY;  }
-#line 39581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2610:
-#line 14985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2611:
-#line 14990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_REVOKE;
             lex->type= 0;
           }
-#line 39597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2612:
-#line 14996 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->columns.elements)
@@ -39608,11 +39620,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_REVOKE;
             lex->type= TYPE_ENUM_FUNCTION;
           }
-#line 39612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39624 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2613:
-#line 15007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 14996 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->columns.elements)
@@ -39623,68 +39635,68 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_REVOKE;
             lex->type= TYPE_ENUM_PROCEDURE;
           }
-#line 39627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39639 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2614:
-#line 15018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_REVOKE_ALL;
           }
-#line 39635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2615:
-#line 15022 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15011 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->users_list.push_front ((yyvsp[-2].lex_user));
             lex->sql_command= SQLCOM_REVOKE;
             lex->type= TYPE_ENUM_PROXY;
           }
-#line 39646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2616:
-#line 15029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_REVOKE_ROLE;
             if (Lex->users_list.push_front((yyvsp[-2].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 39656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2617:
-#line 15038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->with_admin_option= true; (yyval.lex_user)= (yyvsp[0].lex_user); }
-#line 39662 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2618:
-#line 15040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->with_admin_option= false; (yyval.lex_user)= (yyvsp[0].lex_user); }
-#line 39668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2619:
-#line 15045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2620:
-#line 15051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_GRANT;
             lex->type= 0;
           }
-#line 39684 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2621:
-#line 15058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->columns.elements)
@@ -39695,11 +39707,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_GRANT;
             lex->type= TYPE_ENUM_FUNCTION;
           }
-#line 39699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2622:
-#line 15070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             if (lex->columns.elements)
@@ -39710,22 +39722,22 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_GRANT;
             lex->type= TYPE_ENUM_PROCEDURE;
           }
-#line 39714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2623:
-#line 15081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->users_list.push_front ((yyvsp[-3].lex_user));
             lex->sql_command= SQLCOM_GRANT;
             lex->type= TYPE_ENUM_PROXY;
           }
-#line 39725 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39737 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2624:
-#line 15088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_GRANT_ROLE;
@@ -39733,64 +39745,64 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (Lex->users_list.push_front((yyvsp[-3].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 39737 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2625:
-#line 15099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->definer = 0; }
-#line 39743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2626:
-#line 15100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->definer = (yyvsp[0].lex_user); }
-#line 39749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2627:
-#line 15103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->with_admin_option= false; }
-#line 39755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2628:
-#line 15104 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->with_admin_option= true; }
-#line 39761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2629:
-#line 15108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15097 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 39770 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2630:
-#line 15113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 39779 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39791 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2631:
-#line 15121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER))))
               MYSQL_YYABORT;
             (yyval.lex_user)->user= current_role;
             (yyval.lex_user)->reset_auth();
           }
-#line 39790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2632:
-#line 15131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             CHARSET_INFO *cs= system_charset_info;
             /* trim end spaces (as they'll be lost in mysql.user anyway) */
@@ -39809,275 +39821,275 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                          cs, 0))
               MYSQL_YYABORT;
           }
-#line 39813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39825 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2636:
-#line 15158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39819 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2637:
-#line 15160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             Lex->all_privileges= 1; 
             Lex->grant= GLOBAL_ACLS;
           }
-#line 39828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2642:
-#line 15178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->which_columns = SELECT_ACL;}
-#line 39834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2643:
-#line 15179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2644:
-#line 15181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->which_columns = INSERT_ACL;}
-#line 39846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2645:
-#line 15182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2646:
-#line 15184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->which_columns = UPDATE_ACL; }
-#line 39858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2647:
-#line 15185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2648:
-#line 15187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->which_columns = REFERENCES_ACL;}
-#line 39870 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2649:
-#line 15188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15177 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39876 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2650:
-#line 15189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= DELETE_ACL;}
-#line 39882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2651:
-#line 15190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 39888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2652:
-#line 15191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= INDEX_ACL;}
-#line 39894 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2653:
-#line 15192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= ALTER_ACL;}
-#line 39900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2654:
-#line 15193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_ACL;}
-#line 39906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2655:
-#line 15194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= DROP_ACL;}
-#line 39912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2656:
-#line 15195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= EXECUTE_ACL;}
-#line 39918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2657:
-#line 15196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= RELOAD_ACL;}
-#line 39924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2658:
-#line 15197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= SHUTDOWN_ACL;}
-#line 39930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2659:
-#line 15198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= PROCESS_ACL;}
-#line 39936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2660:
-#line 15199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= FILE_ACL;}
-#line 39942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2661:
-#line 15200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= GRANT_ACL;}
-#line 39948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2662:
-#line 15201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= SHOW_DB_ACL;}
-#line 39954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2663:
-#line 15202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= SUPER_ACL;}
-#line 39960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2664:
-#line 15203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_TMP_ACL;}
-#line 39966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2665:
-#line 15204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= LOCK_TABLES_ACL; }
-#line 39972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2666:
-#line 15205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= REPL_SLAVE_ACL; }
-#line 39978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2667:
-#line 15206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= REPL_CLIENT_ACL; }
-#line 39984 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 39996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2668:
-#line 15207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_VIEW_ACL; }
-#line 39990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2669:
-#line 15208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= SHOW_VIEW_ACL; }
-#line 39996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2670:
-#line 15209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_PROC_ACL; }
-#line 40002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2671:
-#line 15210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= ALTER_PROC_ACL; }
-#line 40008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2672:
-#line 15211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_USER_ACL; }
-#line 40014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2673:
-#line 15212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= EVENT_ACL;}
-#line 40020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2674:
-#line 15213 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= TRIGGER_ACL; }
-#line 40026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2675:
-#line 15214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= CREATE_TABLESPACE_ACL; }
-#line 40032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2676:
-#line 15218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2677:
-#line 15219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2680:
-#line 15229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->x509_subject)
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SUBJECT"));
             lex->x509_subject=(yyvsp[0].lex_str).str;
           }
-#line 40055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40067 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2681:
-#line 15236 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->x509_issuer)
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "ISSUER"));
             lex->x509_issuer=(yyvsp[0].lex_str).str;
           }
-#line 40066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2682:
-#line 15243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (lex->ssl_cipher)
               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CIPHER"));
             lex->ssl_cipher=(yyvsp[0].lex_str).str;
           }
-#line 40077 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40089 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2683:
-#line 15253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             size_t dummy;
@@ -40088,11 +40100,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else if (lex->columns.elements)
               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
           }
-#line 40092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2684:
-#line 15264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->current_select->db = (yyvsp[-2].lex_str).str;
@@ -40101,11 +40113,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else if (lex->columns.elements)
               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
           }
-#line 40105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40117 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2685:
-#line 15273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->current_select->db = NULL;
@@ -40114,11 +40126,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             else if (lex->columns.elements)
               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
           }
-#line 40118 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40130 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2686:
-#line 15282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!lex->current_select->add_table_to_list(thd, (yyvsp[0].table),NULL,
@@ -40127,120 +40139,120 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (lex->grant == GLOBAL_ACLS)
               lex->grant =  TABLE_ACLS & ~GRANT_ACL;
           }
-#line 40131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2687:
-#line 15294 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40140 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2688:
-#line 15299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2689:
-#line 15307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2690:
-#line 15312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2691:
-#line 15320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2692:
-#line 15325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root))
               MYSQL_YYABORT;
           }
-#line 40185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2697:
-#line 15336 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_user)= (yyvsp[-3].lex_user);
             (yyvsp[-3].lex_user)->pwtext= (yyvsp[0].lex_str);
             if (Lex->sql_command == SQLCOM_REVOKE)
               MYSQL_YYABORT;
           }
-#line 40196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40208 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2698:
-#line 15343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             (yyval.lex_user)= (yyvsp[-4].lex_user); 
             (yyvsp[-4].lex_user)->pwhash= (yyvsp[0].lex_str);
           }
-#line 40205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2699:
-#line 15348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15337 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_user)= (yyvsp[-3].lex_user);
             (yyvsp[-3].lex_user)->plugin= (yyvsp[0].lex_str);
             (yyvsp[-3].lex_user)->auth= empty_lex_str;
           }
-#line 40215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2700:
-#line 15354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.lex_user)= (yyvsp[-5].lex_user);
             (yyvsp[-5].lex_user)->plugin= (yyvsp[-2].lex_str);
             (yyvsp[-5].lex_user)->auth= (yyvsp[0].lex_str);
           }
-#line 40225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40237 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2701:
-#line 15360 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15349 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.lex_user)= (yyvsp[0].lex_user); }
-#line 40231 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2702:
-#line 15365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->grant |= lex->which_columns;
           }
-#line 40240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2706:
-#line 15379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             String *new_str= new (thd->mem_root) String((const char*) (yyvsp[0].lex_str).str,(yyvsp[0].lex_str).length,system_charset_info);
             if (new_str == NULL)
@@ -40266,227 +40278,227 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               lex->columns.push_back(col, thd->mem_root);
             }
           }
-#line 40270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2708:
-#line 15409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->ssl_type=SSL_TYPE_SPECIFIED;
           }
-#line 40278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2709:
-#line 15413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->ssl_type=SSL_TYPE_ANY;
           }
-#line 40286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2710:
-#line 15417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->ssl_type=SSL_TYPE_X509;
           }
-#line 40294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2711:
-#line 15421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15410 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->ssl_type=SSL_TYPE_NONE;
           }
-#line 40302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2712:
-#line 15427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15416 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2714:
-#line 15432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40314 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2715:
-#line 15433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15422 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= GRANT_ACL;}
-#line 40320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2716:
-#line 15437 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15426 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2717:
-#line 15438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2718:
-#line 15442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->grant |= GRANT_ACL;}
-#line 40338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2719:
-#line 15444 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->mqh.questions=(yyvsp[0].ulong_num);
             lex->mqh.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR;
           }
-#line 40348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2720:
-#line 15450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->mqh.updates=(yyvsp[0].ulong_num);
             lex->mqh.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR;
           }
-#line 40358 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40370 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2721:
-#line 15456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->mqh.conn_per_hour= (yyvsp[0].ulong_num);
             lex->mqh.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR;
           }
-#line 40368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40380 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2722:
-#line 15462 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->mqh.user_conn= (yyvsp[0].num);
             lex->mqh.specified_limits|= USER_RESOURCES::USER_CONNECTIONS;
           }
-#line 40378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2723:
-#line 15468 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->mqh.max_statement_time= (yyvsp[0].item_num)->val_real();
             lex->mqh.specified_limits|= USER_RESOURCES::MAX_STATEMENT_TIME;
           }
-#line 40388 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2724:
-#line 15477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command = SQLCOM_BEGIN;
             lex->start_transaction_opt= 0;
           }
-#line 40398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40410 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2725:
-#line 15482 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40416 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2726:
-#line 15487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command= SQLCOM_COMPOUND;
             Lex->sphead->set_stmt_end(thd);
             Lex->sphead->restore_thd_mem_root(thd);
           }
-#line 40414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2727:
-#line 15495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 40420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2728:
-#line 15496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 40426 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2729:
-#line 15500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2730:
-#line 15501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2731:
-#line 15506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
-#line 40444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2732:
-#line 15507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_NO; }
-#line 40450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2733:
-#line 15508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_YES; }
-#line 40456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2734:
-#line 15513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
-#line 40462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2735:
-#line 15514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_YES; }
-#line 40468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2736:
-#line 15515 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.m_yes_no_unk)= TVL_NO; }
-#line 40474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2737:
-#line 15519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2738:
-#line 15520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2739:
-#line 15525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_COMMIT;
@@ -40495,11 +40507,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
             lex->tx_release= (yyvsp[0].m_yes_no_unk);
           }
-#line 40499 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2740:
-#line 15537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_ROLLBACK;
@@ -40508,56 +40520,56 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
             lex->tx_release= (yyvsp[0].m_yes_no_unk);
           }
-#line 40512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2741:
-#line 15547 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15536 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 40522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40534 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2742:
-#line 15556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15545 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_SAVEPOINT;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 40532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2743:
-#line 15565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             lex->sql_command= SQLCOM_RELEASE_SAVEPOINT;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 40542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2744:
-#line 15578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2746:
-#line 15584 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_select_to_union_list(Lex, (bool)(yyvsp[0].num), TRUE))
               MYSQL_YYABORT;
           }
-#line 40557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2747:
-#line 15589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               Remove from the name resolution context stack the context of the
@@ -40565,29 +40577,29 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             Lex->pop_context();
           }
-#line 40569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2749:
-#line 15600 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15589 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 40575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2750:
-#line 15604 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 0; }
-#line 40581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2751:
-#line 15605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)= 1; }
-#line 40587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2752:
-#line 15609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             DBUG_ASSERT(lex->current_select->linkage != GLOBAL_OPTIONS_TYPE);
@@ -40601,80 +40613,80 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             thd->where= "global ORDER clause";
           }
-#line 40605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2753:
-#line 15623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             thd->lex->current_select->no_table_names_allowed= 0;
             thd->where= "";
           }
-#line 40614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2756:
-#line 15635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15624 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)=1; }
-#line 40620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2757:
-#line 15636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15625 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)=1; }
-#line 40626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2758:
-#line 15637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { (yyval.num)=0; }
-#line 40632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40644 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2759:
-#line 15643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15632 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.select_lex)= Lex->current_select->master_unit()->first_select();
           }
-#line 40640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2760:
-#line 15648 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             (yyval.select_lex)= Lex->current_select->master_unit()->first_select();
           }
-#line 40648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2762:
-#line 15657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15646 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (add_select_to_union_list(Lex, (bool)(yyvsp[0].num), FALSE))
               MYSQL_YYABORT;
           }
-#line 40657 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2763:
-#line 15662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->pop_context();
             (yyval.select_lex)= (yyvsp[-4].select_lex);
           }
-#line 40666 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2764:
-#line 15671 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { 
             (yyval.select_lex)= (yyvsp[-1].select_lex);
           }
-#line 40674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2765:
-#line 15677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
             if (!lex->expr_allows_subselect ||
@@ -40693,11 +40705,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             if (mysql_new_select(Lex, 1))
               MYSQL_YYABORT;
           }
-#line 40697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2766:
-#line 15698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex=Lex;
 
@@ -40722,17 +40734,17 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                 temp->select_n_having_items;
             }
           }
-#line 40726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2771:
-#line 15735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= SELECT_STRAIGHT_JOIN; }
-#line 40732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2772:
-#line 15737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (check_simple_select())
               MYSQL_YYABORT;
@@ -40740,73 +40752,73 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             YYPS->m_mdl_type= MDL_SHARED_READ;
             Select->options|= SELECT_HIGH_PRIORITY;
           }
-#line 40744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2773:
-#line 15744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= SELECT_DISTINCT; }
-#line 40750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2774:
-#line 15745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= SELECT_SMALL_RESULT; }
-#line 40756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2775:
-#line 15746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= SELECT_BIG_RESULT; }
-#line 40762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2776:
-#line 15748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (check_simple_select())
               MYSQL_YYABORT;
             Select->options|= OPTION_BUFFER_RESULT;
           }
-#line 40772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2777:
-#line 15754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (check_simple_select())
               MYSQL_YYABORT;
             Select->options|= OPTION_FOUND_ROWS;
           }
-#line 40782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40794 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2778:
-#line 15759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Select->options|= SELECT_ALL; }
-#line 40788 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2779:
-#line 15770 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40794 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2780:
-#line 15772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15761 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2781:
-#line 15774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2795:
-#line 15807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15796 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             /*
               We have to distinguish missing DEFINER-clause from case when
@@ -40817,58 +40829,58 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             */
             thd->lex->definer= 0;
           }
-#line 40821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2796:
-#line 15821 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->definer= (yyvsp[0].lex_user);
             Lex->ssl_type= SSL_TYPE_NOT_SPECIFIED;
             Lex->ssl_cipher= Lex->x509_subject= Lex->x509_issuer= 0;
             bzero(&(Lex->mqh), sizeof(Lex->mqh));
           }
-#line 40832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2797:
-#line 15837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_algorithm= DTYPE_ALGORITHM_UNDEFINED; }
-#line 40838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2798:
-#line 15839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15828 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_algorithm= VIEW_ALGORITHM_MERGE; }
-#line 40844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2799:
-#line 15841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_algorithm= VIEW_ALGORITHM_TMPTABLE; }
-#line 40850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2800:
-#line 15846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_suid= VIEW_SUID_DEFAULT; }
-#line 40856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2801:
-#line 15848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_suid= VIEW_SUID_DEFINER; }
-#line 40862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2802:
-#line 15850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_suid= VIEW_SUID_INVOKER; }
-#line 40868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2803:
-#line 15855 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15844 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             if (lex->add_create_options_with_check((yyvsp[-1].object_ddl_options)))
@@ -40882,37 +40894,37 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
           }
-#line 40886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2805:
-#line 15873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 40892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2807:
-#line 15879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->view_list.push_back((LEX_STRING*)
                                      thd->memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)),
                                      thd->mem_root);
           }
-#line 40902 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2808:
-#line 15885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15874 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->view_list.push_back((LEX_STRING*)
                                      thd->memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)),
                                      thd->mem_root);
           }
-#line 40912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2809:
-#line 15893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->parsing_options.allows_variable= FALSE;
@@ -40921,11 +40933,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->parsing_options.allows_derived= FALSE;
             lex->create_view_select.str= (char *) YYLIP->get_cpp_ptr();
           }
-#line 40925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2810:
-#line 15902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             uint len= YYLIP->get_cpp_ptr() - lex->create_view_select.str;
@@ -40938,60 +40950,60 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->parsing_options.allows_select_procedure= TRUE;
             lex->parsing_options.allows_derived= TRUE;
           }
-#line 40942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2813:
-#line 15923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_check= VIEW_CHECK_NONE; }
-#line 40948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2814:
-#line 15925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_check= VIEW_CHECK_CASCADED; }
-#line 40954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2815:
-#line 15927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15916 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_check= VIEW_CHECK_CASCADED; }
-#line 40960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2816:
-#line 15929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->create_view_check= VIEW_CHECK_LOCAL; }
-#line 40966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2817:
-#line 15942 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->add_create_options_with_check((yyvsp[0].object_ddl_options)))
               MYSQL_YYABORT;
           }
-#line 40975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2818:
-#line 15951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15940 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $10 */
             Lex->raw_trg_on_table_name_begin= YYLIP->get_tok_start();
           }
-#line 40983 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 40995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2819:
-#line 15957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $14 */
             Lex->raw_trg_on_table_name_end= YYLIP->get_tok_start();
           }
-#line 40991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2820:
-#line 15962 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $17 */
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
@@ -41009,11 +41021,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
 
             lex->sphead->set_body_start(thd, lip->get_cpp_ptr());
           }
-#line 41013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2821:
-#line 15980 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 15969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $19 */
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -41037,23 +41049,23 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
                                                    MDL_SHARED_NO_WRITE))
               MYSQL_YYABORT;
           }
-#line 41041 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41053 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2822:
-#line 16012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { thd->lex->udf.type= UDFTYPE_AGGREGATE; }
-#line 41047 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2823:
-#line 16013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { thd->lex->udf.type= UDFTYPE_FUNCTION;  }
-#line 41053 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2824:
-#line 16019 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16008 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             if (lex->add_create_options_with_check((yyvsp[-5].object_ddl_options)))
@@ -41065,11 +41077,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->udf.returns= (Item_result) (yyvsp[-2].num);
             lex->udf.dl= (yyvsp[0].lex_str).str;
           }
-#line 41069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2825:
-#line 16037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $5 */
             LEX *lex= Lex;
             Lex_input_stream *lip= YYLIP;
@@ -41089,50 +41101,50 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tmp_param_begin++;
             lex->sphead->m_param_begin= tmp_param_begin;
           }
-#line 41093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2826:
-#line 16058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $8 */
             Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
           }
-#line 41101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41113 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2827:
-#line 16062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $10 */
             LEX *lex= Lex;
             lex->init_last_field(&lex->sphead->m_return_field_def, NULL,
                                  thd->variables.collation_database);
           }
-#line 41111 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41123 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2828:
-#line 16068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $12 */
             if (Lex->sphead->fill_field_definition(thd, Lex, (yyvsp[0].field_type),
                                                    Lex->last_field))
               MYSQL_YYABORT;
           }
-#line 41121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41133 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2829:
-#line 16074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { /* $14 */
             LEX *lex= thd->lex;
             Lex_input_stream *lip= YYLIP;
 
             lex->sphead->set_body_start(thd, lip->get_cpp_tok_start());
           }
-#line 41132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2830:
-#line 16081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= thd->lex;
             sp_head *sp= lex->sphead;
@@ -41181,11 +41193,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             }
             sp->restore_thd_mem_root(thd);
           }
-#line 41185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2831:
-#line 16133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             if (Lex->add_create_options_with_check((yyvsp[-1].object_ddl_options)))
               MYSQL_YYABORT;
@@ -41197,11 +41209,11 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
               MYSQL_YYABORT;
             Lex->spname= (yyvsp[0].spname);
           }
-#line 41201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2832:
-#line 16145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             const char* tmp_param_begin;
 
@@ -41209,27 +41221,27 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             tmp_param_begin++;
             Lex->sphead->m_param_begin= tmp_param_begin;
           }
-#line 41213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2833:
-#line 16154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
           }
-#line 41221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2834:
-#line 16158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
           }
-#line 41229 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41241 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2835:
-#line 16162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             sp_head *sp= lex->sphead;
@@ -41238,209 +41250,209 @@ YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
             lex->sql_command= SQLCOM_CREATE_PROCEDURE;
             sp->restore_thd_mem_root(thd);
           }
-#line 41242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2836:
-#line 16176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_START;
           }
-#line 41250 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2837:
-#line 16180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16169 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_END;
           }
-#line 41258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2838:
-#line 16184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_PREPARE;
           }
-#line 41266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2839:
-#line 16188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16177 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_COMMIT;
           }
-#line 41274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2840:
-#line 16192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_ROLLBACK;
           }
-#line 41282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2841:
-#line 16196 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             Lex->sql_command = SQLCOM_XA_RECOVER;
           }
-#line 41290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2842:
-#line 16203 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[0].string)->length() <= MAXGTRIDSIZE);
             if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID))))
               MYSQL_YYABORT;
             Lex->xid->set(1L, (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length(), 0, 0);
           }
-#line 41301 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41313 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2843:
-#line 16210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-2].string)->length() <= MAXGTRIDSIZE && (yyvsp[0].string)->length() <= MAXBQUALSIZE);
             if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID))))
               MYSQL_YYABORT;
             Lex->xid->set(1L, (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length(), (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length());
           }
-#line 41312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41324 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2844:
-#line 16217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             MYSQL_YYABORT_UNLESS((yyvsp[-4].string)->length() <= MAXGTRIDSIZE && (yyvsp[-2].string)->length() <= MAXBQUALSIZE);
             if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID))))
               MYSQL_YYABORT;
             Lex->xid->set((yyvsp[0].ulong_num), (yyvsp[-4].string)->ptr(), (yyvsp[-4].string)->length(), (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length());
           }
-#line 41323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2845:
-#line 16226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 41329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2846:
-#line 16227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 41335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2847:
-#line 16231 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_NONE;        }
-#line 41341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2848:
-#line 16232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_JOIN;        }
-#line 41347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2849:
-#line 16233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_RESUME;      }
-#line 41353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2850:
-#line 16237 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_NONE;        }
-#line 41359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2851:
-#line 16238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_ONE_PHASE;   }
-#line 41365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2852:
-#line 16243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_NONE;        }
-#line 41371 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2853:
-#line 16245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_SUSPEND;     }
-#line 41377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2855:
-#line 16250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {}
-#line 41383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2856:
-#line 16251 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     { Lex->xa_opt=XA_FOR_MIGRATE; }
-#line 41389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2857:
-#line 16256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_INSTALL_PLUGIN;
             lex->comment= (yyvsp[-2].lex_str);
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 41400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2858:
-#line 16263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_INSTALL_PLUGIN;
             lex->comment= null_lex_str;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 41411 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2859:
-#line 16273 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_UNINSTALL_PLUGIN;
             lex->comment= (yyvsp[0].lex_str);
           }
-#line 41421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2860:
-#line 16279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16268 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
             LEX *lex= Lex;
             lex->sql_command= SQLCOM_UNINSTALL_PLUGIN;
             lex->comment= null_lex_str;
             lex->ident= (yyvsp[0].lex_str);
           }
-#line 41432 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
   case 2861:
-#line 16290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
+#line 16279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
     {
 	  YYERROR;
 	}
-#line 41440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
     break;
 
 
-#line 41444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
+#line 41456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
diff --git a/sql/sql_yacc.h b/sql/sql_yacc.h
index 6d00ac5253b607950e21009fd984984369e29ff2..7a7397f0a9eda92429a16e24150288fd6384146f 100644
--- a/sql/sql_yacc.h
+++ b/sql/sql_yacc.h
@@ -686,7 +686,9 @@ extern int MYSQLdebug;
     YEAR_MONTH_SYM = 896,
     YEAR_SYM = 897,
     ZEROFILL = 898,
-    IMPOSSIBLE_ACTION = 899
+    IMPOSSIBLE_ACTION = 899,
+    CONDITIONLESS_JOIN = 900,
+    ON_SYM = 901
   };
 #endif
 /* Tokens.  */
@@ -1332,6 +1334,8 @@ extern int MYSQLdebug;
 #define YEAR_SYM 897
 #define ZEROFILL 898
 #define IMPOSSIBLE_ACTION 899
+#define CONDITIONLESS_JOIN 900
+#define ON_SYM 901
 
 /* Value type.  */
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
@@ -1411,7 +1415,7 @@ union YYSTYPE
   enum enum_mysql_timestamp_type date_time_type;
   DDL_options_st object_ddl_options;
 
-#line 1415 "/home/buildbot/git/mkdist/sql/sql_yacc.h" /* yacc.c:1909  */
+#line 1419 "/home/buildbot/git/mkdist/sql/sql_yacc.h" /* yacc.c:1909  */
 };
 # define YYSTYPE_IS_TRIVIAL 1
 # define YYSTYPE_IS_DECLARED 1
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index ca30bc202cf088ad7c34b9ac7113d1bedd24a8ad..71e0a18b1a3690507cb1d7370cf7ebf021a33a6f 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* sql_yacc.yy */
 
@@ -1029,7 +1029,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
   Currently there are 160 shift/reduce conflicts.
   We should not introduce new conflicts any more.
 */
-%expect 162
+%expect 161
 
 /*
    Comments for TOKENS.
@@ -1692,9 +1692,9 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
 
 %token IMPOSSIBLE_ACTION		/* To avoid warning for yyerrlab1 */
 
-%left   JOIN_SYM INNER_SYM STRAIGHT_JOIN CROSS LEFT RIGHT
 /* A dummy token to force the priority of table_ref production in a join. */
-%left   TABLE_REF_PRIORITY
+%left   CONDITIONLESS_JOIN
+%left   JOIN_SYM INNER_SYM STRAIGHT_JOIN CROSS LEFT RIGHT ON_SYM USING
 %left   SET_VAR
 %left   OR_OR_SYM OR_SYM OR2_SYM
 %left   XOR
@@ -2454,6 +2454,8 @@ create:
           create_or_replace opt_temporary TABLE_SYM opt_if_not_exists table_ident
           {
             LEX *lex= thd->lex;
+            if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_table()))
+              MYSQL_YYABORT;
             lex->create_info.init();
             if (lex->set_command_with_check(SQLCOM_CREATE_TABLE, $2, $1 | $4))
                MYSQL_YYABORT;
@@ -2475,16 +2477,6 @@ create:
           {
             LEX *lex= thd->lex;
             lex->current_select= &lex->select_lex; 
-            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
-                !lex->create_info.db_type)
-            {
-              lex->create_info.use_default_db_type(thd);
-              push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
-                                  ER_WARN_USING_OTHER_HANDLER,
-                                  ER_THD(thd, ER_WARN_USING_OTHER_HANDLER),
-                                  hton_name(lex->create_info.db_type)->str,
-                                  $5->table.str);
-            }
             create_table_set_open_action_and_adjust_tables(lex);
           }
         | create_or_replace opt_unique INDEX_SYM opt_if_not_exists ident
@@ -5515,10 +5507,20 @@ create_table_options:
         ;
 
 create_table_option:
-          ENGINE_SYM opt_equal storage_engines
+          ENGINE_SYM opt_equal ident_or_text
           {
-            Lex->create_info.db_type= $3;
-            Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
+            LEX *lex= Lex;
+            if (!lex->m_sql_cmd)
+            {
+              DBUG_ASSERT(lex->sql_command == SQLCOM_ALTER_TABLE);
+              if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table()))
+                MYSQL_YYABORT;
+            }
+            Storage_engine_name *opt=
+              lex->m_sql_cmd->option_storage_engine_name();
+            DBUG_ASSERT(opt); // Expect a proper Sql_cmd
+            *opt= Storage_engine_name($3);
+            lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
           }
         | MAX_ROWS opt_equal ulonglong_num
           {
@@ -5783,21 +5785,10 @@ default_collation:
 storage_engines:
           ident_or_text
           {
-            plugin_ref plugin= ha_resolve_by_name(thd, &$1,
-                                            thd->lex->create_info.tmp_table());
-
-            if (plugin)
-              $$= plugin_hton(plugin);
-            else
-            {
-              if (thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION)
-                my_yyabort_error((ER_UNKNOWN_STORAGE_ENGINE, MYF(0), $1.str));
-              $$= 0;
-              push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
-                                  ER_UNKNOWN_STORAGE_ENGINE,
-                                  ER_THD(thd, ER_UNKNOWN_STORAGE_ENGINE),
-                                  $1.str);
-            }
+            if (Storage_engine_name($1).
+                 resolve_storage_engine_with_error(thd, &$$,
+                                            thd->lex->create_info.tmp_table()))
+              MYSQL_YYABORT;
           }
         ;
 
@@ -7533,11 +7524,6 @@ alter_list_item:
           {
             LEX *lex=Lex;
             lex->alter_info.flags|= Alter_info::ALTER_OPTIONS;
-            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
-                !lex->create_info.db_type)
-            {
-              lex->create_info.used_fields&= ~HA_CREATE_USED_ENGINE;
-            }
           }
         | FORCE_SYM
           {
@@ -10421,9 +10407,9 @@ join_table_list:
   and are ignored.
 */
 esc_table_ref:
-        table_ref { $$=$1; }
-      | '{' ident table_ref '}' { $$=$3; }
-      ;
+          table_ref { $$=$1; }
+        | '{' ident table_ref '}' { $$=$3; }
+        ;
 
 /* Equivalent to  in the SQL:2003 standard. */
 /* Warning - may return NULL in case of incomplete SELECT */
@@ -10436,11 +10422,9 @@ derived_table_list:
         ;
 
 /*
-  Notice that JOIN is a left-associative operation, and it must be parsed
-  as such, that is, the parser must process first the left join operand
-  then the right one. Such order of processing ensures that the parser
-  produces correct join trees which is essential for semantic analysis
-  and subsequent optimization phases.
+  Notice that JOIN can be a left-associative operator in one context and
+  a right-associative operator in another context (see the comment for
+  st_select_lex::add_cross_joined_table).
 */
 join_table:
           /* INNER JOIN variants */
@@ -10449,8 +10433,13 @@ join_table:
             so that [INNER | CROSS] JOIN is properly nested as other
             left-associative joins.
           */
-          table_ref normal_join table_ref %prec TABLE_REF_PRIORITY
-          { MYSQL_YYABORT_UNLESS($1 && ($$=$3)); $3->straight=$2; }
+          table_ref normal_join table_ref %prec CONDITIONLESS_JOIN
+          {
+            MYSQL_YYABORT_UNLESS($1 && ($$=$3));
+
+            if (unlikely(Select->add_cross_joined_table($1, $3, $2)))
+              MYSQL_YYABORT;
+          }
         | table_ref normal_join table_ref
           ON
           {
@@ -10464,7 +10453,7 @@ join_table:
           {
 	    $3->straight=$2;
             add_join_on(thd, $3, $6);
-            Lex->pop_context();
+            $3->on_context= Lex->pop_context();
             Select->parsing_place= NO_MATTER;
           }
         | table_ref normal_join table_ref
@@ -10498,7 +10487,7 @@ join_table:
           expr
           {
             add_join_on(thd, $5, $8);
-            Lex->pop_context();
+            $5->on_context= Lex->pop_context();
             $5->outer_join|=JOIN_TYPE_LEFT;
             $$=$5;
             Select->parsing_place= NO_MATTER;
@@ -10537,7 +10526,7 @@ join_table:
             if (!($$= lex->current_select->convert_right_join()))
               MYSQL_YYABORT;
             add_join_on(thd, $$, $8);
-            Lex->pop_context();
+            $1->on_context= Lex->pop_context();
             Select->parsing_place= NO_MATTER;
           }
         | table_ref RIGHT opt_outer JOIN_SYM table_factor
diff --git a/sql/strfunc.cc b/sql/strfunc.cc
index b8100e05ce55bc7b796575399174fbee089321c7..68cb2e2d22e2fb91338025cdb23c5526f58c0f5a 100644
--- a/sql/strfunc.cc
+++ b/sql/strfunc.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Some useful string utility functions used by the MySQL server */
 
diff --git a/sql/strfunc.h b/sql/strfunc.h
index 7b031710c767ddfc16de9aeb96ea2eb38e085977..989eb4aa24c88e051a4f115f81c180644dd0d884 100644
--- a/sql/strfunc.h
+++ b/sql/strfunc.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef STRFUNC_INCLUDED
 #define STRFUNC_INCLUDED
diff --git a/sql/structs.h b/sql/structs.h
index 2ab102d82f919332e3c45e45977cb2ed180075a9..57d895c30c5f2b8048d86d806cf2d34ee89e4ca6 100644
--- a/sql/structs.h
+++ b/sql/structs.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 
diff --git a/sql/sys_vars.cc b/sql/sys_vars.cc
index 223015e81c24dc39a897d5b54eaab873cc2a7e9e..9f87c846fd0b2e6e1b627b557f61bbaad216603b 100644
--- a/sql/sys_vars.cc
+++ b/sql/sys_vars.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/sys_vars.ic b/sql/sys_vars.ic
index cbc10c8535166976bd760fff5644302493d12864..ae4568866b796ae157be82047a7a7c3903bf9c32 100644
--- a/sql/sys_vars.ic
+++ b/sql/sys_vars.ic
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/sys_vars_shared.h b/sql/sys_vars_shared.h
index ff050f63064dc0a28ccf7d743b769d0ade99fe42..bff59f62c7f2fc379e152a17c285fefd3f9f7690 100644
--- a/sql/sys_vars_shared.h
+++ b/sql/sys_vars_shared.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/table.cc b/sql/table.cc
index 8373f6735dcb7864e38176323b7738df366af649..94cd174ffd7bf0e28e4dce3899e1956a637ea636 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 /* Some general useful functions */
@@ -540,14 +540,14 @@ inline bool is_system_table_name(const char *name, uint length)
   
   SYNOPSIS
   open_table_def()
-  thd		Thread handler
+  thd		  Thread handler
   share		Fill this with table definition
-  db_flags	Bit mask of the following flags: OPEN_VIEW
+  flags	  Bit mask of the following flags: OPEN_VIEW
 
   NOTES
     This function is called when the table definition is not cached in
     table definition cache
-    The data is returned in 'share', which is alloced by
+    The data is returned in 'share', which is allocated by
     alloc_table_share().. The code assumes that share is initialized.
 */
 
@@ -1104,8 +1104,9 @@ int TABLE_SHARE::init_from_binary_frm_image(THD *thd, bool write,
   }
   if (!share->table_charset)
   {
+    const CHARSET_INFO *cs= thd->variables.collation_database;
     /* unknown charset in frm_image[38] or pre-3.23 frm */
-    if (use_mb(default_charset_info))
+    if (use_mb(cs))
     {
       /* Warn that we may be changing the size of character columns */
       sql_print_warning("'%s' had no or invalid character set, "
@@ -1113,7 +1114,7 @@ int TABLE_SHARE::init_from_binary_frm_image(THD *thd, bool write,
                         "so character column sizes may have changed",
                         share->path.str);
     }
-    share->table_charset= default_charset_info;
+    share->table_charset= cs;
   }
 
   share->db_record_offset= 1;
@@ -2177,8 +2178,20 @@ static bool sql_unusable_for_discovery(THD *thd, handlerton *engine,
   if (create_info->data_file_name || create_info->index_file_name)
     return 1;
   // ... engine
-  if (create_info->db_type && create_info->db_type != engine)
-    return 1;
+  DBUG_ASSERT(lex->m_sql_cmd);
+  if (lex->create_info.used_fields & HA_CREATE_USED_ENGINE)
+  {
+    /*
+      TODO: we could just compare engine names here, without resolving.
+      But this optimization is too late for 10.1.
+    */
+    Storage_engine_name *opt= lex->m_sql_cmd->option_storage_engine_name();
+    DBUG_ASSERT(opt); // lex->m_sql_cmd must be an Sql_cmd_create_table instance
+    if (opt->resolve_storage_engine_with_error(thd, &create_info->db_type,
+                                               false) ||
+        (create_info->db_type && create_info->db_type != engine))
+      return 1;
+  }
 
   return 0;
 }
@@ -3050,7 +3063,7 @@ enum open_frm_error open_table_from_share(THD *thd, TABLE_SHARE *share,
     free_share		Is 1 if we also want to free table_share
 */
 
-int closefrm(register TABLE *table, bool free_share)
+int closefrm(TABLE *table, bool free_share)
 {
   int error=0;
   DBUG_ENTER("closefrm");
@@ -3098,7 +3111,7 @@ int closefrm(register TABLE *table, bool free_share)
 
 /* Deallocate temporary blob storage */
 
-void free_blobs(register TABLE *table)
+void free_blobs(TABLE *table)
 {
   uint *ptr, *end;
   for (ptr= table->s->blob_field, end=ptr + table->s->blob_fields ;
diff --git a/sql/table.h b/sql/table.h
index e7d3c95713ef0f10ebeeca22b75dadb1551ba97c..98ec9f005ea2d5c1dc59d220b9e0083f7d11db2a 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "my_global.h"                          /* NO_EMBEDDED_ACCESS_CHECKS */
 #include "sql_plist.h"
@@ -50,6 +50,7 @@ class ACL_internal_table_access;
 class Field;
 class Table_statistics;
 class TDC_element;
+struct Name_resolution_context;
 
 /*
   Used to identify NESTED_JOIN structures within a join (applicable only to
@@ -1828,6 +1829,7 @@ struct TABLE_LIST
   char		*db, *alias, *table_name, *schema_table_name;
   char          *option;                /* Used by cache index  */
   Item		*on_expr;		/* Used with outer join */
+  Name_resolution_context *on_context;  /* For ON expressions */
 
   Item          *sj_on_expr;
   /*
@@ -2555,9 +2557,31 @@ class Field_iterator_table_ref: public Field_iterator
 };
 
 
+#define JOIN_OP_NEST       1
+#define REBALANCED_NEST    2
+
 typedef struct st_nested_join
 {
   List  join_list;       /* list of elements in the nested join */
+  /*
+    Currently the valid values for nest type are:
+    JOIN_OP_NEST - for nest created for JOIN operation used as an operand in
+    a join expression, contains 2 elements;
+    JOIN_OP_NEST | REBALANCED_NEST -  nest created after tree re-balancing
+    in st_select_lex::add_cross_joined_table(), contains 1 element;
+    0 - for all other nests.
+    Examples:
+    1.  SELECT * FROM t1 JOIN t2 LEFT JOIN t3 ON t2.a=t3.a;
+    Here the nest created for LEFT JOIN at first has nest_type==JOIN_OP_NEST.
+    After re-balancing in st_select_lex::add_cross_joined_table() this nest
+    has nest_type==JOIN_OP_NEST | REBALANCED_NEST. The nest for JOIN created
+    in st_select_lex::add_cross_joined_table() has nest_type== JOIN_OP_NEST.
+    2.  SELECT * FROM t1 JOIN (t2 LEFT JOIN t3 ON t2.a=t3.a)
+    Here the nest created for LEFT JOIN has nest_type==0, because it's not
+    an operand in a join expression. The nest created for JOIN has nest_type
+    set to JOIN_OP_NEST.
+  */
+  uint nest_type;
   /* 
     Bitmap of tables within this nested join (including those embedded within
     its children), including tables removed by table elimination.
diff --git a/sql/table_cache.cc b/sql/table_cache.cc
index b3cf6cd2892846bf04c10f3746ba15c71ec70d25..acd468389d7c7e93dc42af1174149d93c5e95517 100644
--- a/sql/table_cache.cc
+++ b/sql/table_cache.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/sql/table_cache.h b/sql/table_cache.h
index 2c5b0fc45a2e99a9df373ce095439063c5d8920c..1d20244943f7278b28739d2a9e6b324b09641bdc 100644
--- a/sql/table_cache.h
+++ b/sql/table_cache.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef HAVE_PSI_INTERFACE
diff --git a/sql/thr_malloc.cc b/sql/thr_malloc.cc
index b82d29e51f4288b6cc7f74d1b2f3d98b747517df..fdb7409622412df6b1b0334aea49fcd9ecedb02c 100644
--- a/sql/thr_malloc.cc
+++ b/sql/thr_malloc.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /* Mallocs for used in threads */
diff --git a/sql/thr_malloc.h b/sql/thr_malloc.h
index 0b17c5cdaf18b6617e05d53ed10411b522c59864..05e5cd0cef4a2d8299c502b11d828487cd2392a4 100644
--- a/sql/thr_malloc.h
+++ b/sql/thr_malloc.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef THR_MALLOC_INCLUDED
 #define THR_MALLOC_INCLUDED
diff --git a/sql/threadpool.h b/sql/threadpool.h
index 719a3878ebd136cd9986343e88691c63a3647de6..17975aa3f69279b72e0a1f32b8d72e330cfed266 100644
--- a/sql/threadpool.h
+++ b/sql/threadpool.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MAX_THREAD_GROUPS 100000
 
diff --git a/sql/threadpool_common.cc b/sql/threadpool_common.cc
index b99346ee106391db535bb57d3d0b28745fa04752..b8be70836248c5d406dff4552a48e2666e59da55 100644
--- a/sql/threadpool_common.cc
+++ b/sql/threadpool_common.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
@@ -266,7 +266,8 @@ int threadpool_process_request(THD *thd)
   {
     Vio *vio;
     thd->net.reading_or_writing= 0;
-    mysql_audit_release(thd);
+    if (mysql_audit_release_required(thd))
+      mysql_audit_release(thd);
 
     if ((retval= do_command(thd)) != 0)
       goto end;
diff --git a/sql/threadpool_unix.cc b/sql/threadpool_unix.cc
index f1133b22cf5c20e0bd83826df4a28e87eb398c0e..d4ee3afc4fe6345dd1795a0304be2c7ec6bad03e 100644
--- a/sql/threadpool_unix.cc
+++ b/sql/threadpool_unix.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/sql/threadpool_win.cc b/sql/threadpool_win.cc
index cb44687f1547bc2fbbb8c286ec0551d326439c55..afc65bc2cd85b67c251f9e368871ca7a48c81034 100644
--- a/sql/threadpool_win.cc
+++ b/sql/threadpool_win.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef _WIN32_WINNT
 #undef _WIN32_WINNT
diff --git a/sql/transaction.cc b/sql/transaction.cc
index 1744feea15151142edf4d78ee16193507825e174..224dd07f7fcd1b506360f3197bf2172e1a7f6ed1 100644
--- a/sql/transaction.cc
+++ b/sql/transaction.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
diff --git a/sql/transaction.h b/sql/transaction.h
index 54b25f1de2ad55bba45f517d0d53435dec9c00ba..73a75c7465739fa74031a8761c7680461238968a 100644
--- a/sql/transaction.h
+++ b/sql/transaction.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TRANSACTION_H
 #define TRANSACTION_H
diff --git a/sql/tzfile.h b/sql/tzfile.h
index 4feba612b360cedfe0b2bbda84ce22aab15ef18f..aa0308645d120c76eabb5df741d19fe47fed43cc 100644
--- a/sql/tzfile.h
+++ b/sql/tzfile.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* 
    This file is based on public domain code from ftp://elsie.ncih.nist.gov/
diff --git a/sql/tztime.cc b/sql/tztime.cc
index 60a3ceafe0af361174b26efbe5918e964af35988..060f5611fdb9be41cddb4b120b554e64b3ed9e2e 100644
--- a/sql/tztime.cc
+++ b/sql/tztime.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
    Most of the following code and structures were derived from
diff --git a/sql/tztime.h b/sql/tztime.h
index eb7d85c48b2fcafaa841d51439c80b0aa86cb785..dde014ffe65186a16f2546d07506c7e9b9e80bf9 100644
--- a/sql/tztime.h
+++ b/sql/tztime.h
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_INTERFACE
diff --git a/sql/udf_example.c b/sql/udf_example.c
index a48801d1c4ac60360a00b9ba627203db667919be..7dd3259d353ddcdc2888b73d1f2b6bc449fbc86c 100644
--- a/sql/udf_example.c
+++ b/sql/udf_example.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
 ** example file of UDF (user definable functions) that are dynamicly loaded
diff --git a/sql/uniques.cc b/sql/uniques.cc
index 1ce186b48e18df93935afaf9a827a5ca7b017e96..03f25d31384898e77f6cb5e4faccf03f361f39c7 100644
--- a/sql/uniques.cc
+++ b/sql/uniques.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Function to handle quick removal of duplicates
@@ -208,7 +208,7 @@ static double get_merge_many_buffs_cost(uint *buffer,
                                         uint last_n_elems, int elem_size,
                                         uint compare_factor)
 {
-  register int i;
+  int i;
   double total_cost= 0.0;
   uint *buff_elems= buffer; /* #s of elements in each of merged sequences */
 
diff --git a/sql/unireg.cc b/sql/unireg.cc
index e41cca2dfcb5e04c94371085de54677140dcdf47..b9abe3da1b9ab3fc6c5598dad8571a70c0ea261d 100644
--- a/sql/unireg.cc
+++ b/sql/unireg.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /*
@@ -751,7 +751,6 @@ static bool pack_fields(uchar *buff, List &create_fields,
     recpos= field->offset+1 + (uint) data_offset;
     int3store(buff+5,recpos);
     int2store(buff+8,field->pack_flag);
-    DBUG_ASSERT(field->unireg_check < 256);
     buff[10]= (uchar) field->unireg_check;
     buff[12]= (uchar) field->interval_id;
     buff[13]= (uchar) field->sql_type; 
diff --git a/sql/unireg.h b/sql/unireg.h
index 86d88fcdc21d154bc46c72428c1ee3dfc12b989f..0ddd2c719ccaeec4634bc681f925c7194eaa0630 100644
--- a/sql/unireg.h
+++ b/sql/unireg.h
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 #include                       /* FRM_VER */
diff --git a/sql/winservice.c b/sql/winservice.c
index efbbb527c9b47041e928327255de58410b6f6e4f..d9605f3a6c4376be77f301e3446728ffb6af4724 100644
--- a/sql/winservice.c
+++ b/sql/winservice.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Get Properties of an existing mysqld Windows service 
diff --git a/sql/winservice.h b/sql/winservice.h
index fe3fe52654899f5be02fafd01afe83ec1bc5a698..f9ab3eda332eec2ef7153bff1b646ff792b36053 100644
--- a/sql/winservice.h
+++ b/sql/winservice.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Extract properties of a windows service binary path
diff --git a/sql/wsrep_applier.cc b/sql/wsrep_applier.cc
index 723804c76db9a340130955507f111560f9c77637..bfdfe8c4c8719a5ca67dbba007d85c38302373fe 100644
--- a/sql/wsrep_applier.cc
+++ b/sql/wsrep_applier.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include "wsrep_priv.h"
 #include "wsrep_binlog.h" // wsrep_dump_rbr_buf()
diff --git a/sql/wsrep_applier.h b/sql/wsrep_applier.h
index f19d2d46d0c90333e7aadb3df425c253b364efed..3cfcd556ae84072dc0a992a7499468e477e9a6f2 100644
--- a/sql/wsrep_applier.h
+++ b/sql/wsrep_applier.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef WSREP_APPLIER_H
 #define WSREP_APPLIER_H
diff --git a/sql/wsrep_binlog.cc b/sql/wsrep_binlog.cc
index 39c77133f02bf0bc8f133caba29a52f356346412..5ece9c7bd1e61056df1873679154c54f914b0da6 100644
--- a/sql/wsrep_binlog.cc
+++ b/sql/wsrep_binlog.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include "wsrep_binlog.h"
 #include "wsrep_priv.h"
diff --git a/sql/wsrep_binlog.h b/sql/wsrep_binlog.h
index 864813d5c987b300428609dd6a284c3e8643571b..c2ccacdc1809a1cc9fef5d868061f9e256715462 100644
--- a/sql/wsrep_binlog.h
+++ b/sql/wsrep_binlog.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #ifndef WSREP_BINLOG_H
 #define WSREP_BINLOG_H
diff --git a/sql/wsrep_check_opts.cc b/sql/wsrep_check_opts.cc
index 28bd3a4492b280c55c2b17bdd0e1db91b08aaf9f..bffb17e9d6f8a8dc02a593d3ad3c1a68836f50c6 100644
--- a/sql/wsrep_check_opts.cc
+++ b/sql/wsrep_check_opts.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "mysqld.h"
 #include "sys_vars_shared.h"
diff --git a/sql/wsrep_dummy.cc b/sql/wsrep_dummy.cc
index 795e2d192524399c010960f6491a7dc2c1c4c5e4..43cea8bad426cf47e7d735b81f1abc58f1cb9885 100644
--- a/sql/wsrep_dummy.cc
+++ b/sql/wsrep_dummy.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include 
 #include 
diff --git a/sql/wsrep_hton.cc b/sql/wsrep_hton.cc
index a935f8c69b820b995b5da4a7029d8dbc25a45a3d..8665a8ae63f3ec66769688eaf8e34c4288f81373 100644
--- a/sql/wsrep_hton.cc
+++ b/sql/wsrep_hton.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include "sql_base.h"
diff --git a/sql/wsrep_mysqld.cc b/sql/wsrep_mysqld.cc
index ee8509e3fa2593455e4a8d78143bd6747f76b79e..0a519be073c15d2a67c397f7b21d725f6692887c 100644
--- a/sql/wsrep_mysqld.cc
+++ b/sql/wsrep_mysqld.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include  // SHOW_MY_BOOL
 #include 
diff --git a/sql/wsrep_mysqld.h b/sql/wsrep_mysqld.h
index 2b55fbe42eed276c5d302f42c5569f59cb844b43..0f0a65f97b658248e9d3803cef2bf78c2836dd2a 100644
--- a/sql/wsrep_mysqld.h
+++ b/sql/wsrep_mysqld.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 
diff --git a/sql/wsrep_mysqld_c.h b/sql/wsrep_mysqld_c.h
index 235a871c11359b47f4b39edbbb3a79aa40e7eb2c..603f2c29ad1bc2837f78901ae6d01295a767d3c0 100644
--- a/sql/wsrep_mysqld_c.h
+++ b/sql/wsrep_mysqld_c.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef WSREP_MYSQLD_C_H
 #define WSREP_MYSQLD_C_H
diff --git a/sql/wsrep_notify.cc b/sql/wsrep_notify.cc
index 20cc9111a72d8b3e4617732ea400125608776e4b..1130c84f3dadbad4b7429c913a9a5918c66ab9ff 100644
--- a/sql/wsrep_notify.cc
+++ b/sql/wsrep_notify.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include "wsrep_priv.h"
diff --git a/sql/wsrep_priv.h b/sql/wsrep_priv.h
index b00bfda16fab8e7287d6aef0b1d556f3379752fa..e4cec342daa78f7fa62664bc974f916eeb3232b4 100644
--- a/sql/wsrep_priv.h
+++ b/sql/wsrep_priv.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 //! @file declares symbols private to wsrep integration layer
diff --git a/sql/wsrep_sst.cc b/sql/wsrep_sst.cc
index a54b96a4aa2c0c07e4bf18661b560f01475b8147..033992b7bd87da35ac349be3364bf79c80954fac 100644
--- a/sql/wsrep_sst.cc
+++ b/sql/wsrep_sst.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "wsrep_sst.h"
 
diff --git a/sql/wsrep_sst.h b/sql/wsrep_sst.h
index a35ce46cae8b39ed562b3a698c208895c5da53ce..829a567f2cf267622a619c0aa22f731b3ab016cd 100644
--- a/sql/wsrep_sst.h
+++ b/sql/wsrep_sst.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include 
 
diff --git a/sql/wsrep_thd.cc b/sql/wsrep_thd.cc
index 551e710cfeb790f9fdf8bb7597067f03fb13bdb0..fad9e3f70c8127eb9cee62f9fb19629e5bdc721a 100644
--- a/sql/wsrep_thd.cc
+++ b/sql/wsrep_thd.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include "wsrep_thd.h"
 
diff --git a/sql/wsrep_thd.h b/sql/wsrep_thd.h
index 5900668f3fb2bcb7d8919c9d04874f17cafa8465..6ce14a4eb0eb77d25a6a1735c8031043dfc5fed9 100644
--- a/sql/wsrep_thd.h
+++ b/sql/wsrep_thd.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include 
 
diff --git a/sql/wsrep_utils.cc b/sql/wsrep_utils.cc
index 8a72d754a43df0db3d485e8269494b89bfcf6267..b1453fc31dd50c07b8bf7310927cbb140a358960 100644
--- a/sql/wsrep_utils.cc
+++ b/sql/wsrep_utils.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 //! @file some utility functions and classes not directly related to replication
diff --git a/sql/wsrep_utils.h b/sql/wsrep_utils.h
index dee7eb11504fac77405bf012708a62141966e8de..9c5fa4541117ebeeb8672ef6368564efbba15cc3 100644
--- a/sql/wsrep_utils.h
+++ b/sql/wsrep_utils.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #ifndef WSREP_UTILS_H
 #define WSREP_UTILS_H
diff --git a/sql/wsrep_var.cc b/sql/wsrep_var.cc
index 3959746156a8fc8ef77feadeb161803bf43a01fb..48e373bc56d2ec93e2c5930aafae4657fc5f4253 100644
--- a/sql/wsrep_var.cc
+++ b/sql/wsrep_var.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "wsrep_var.h"
 
diff --git a/sql/wsrep_var.h b/sql/wsrep_var.h
index 53952173c8348779a0723800207e3ca1ccf1766e..4e87f0ec6dba6a81cbfa9436674538fbdea2f9b1 100644
--- a/sql/wsrep_var.h
+++ b/sql/wsrep_var.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #include 
 
diff --git a/sql/wsrep_xid.cc b/sql/wsrep_xid.cc
index 132956e88b33a591d6be498fdc284fc0e1fa9334..20e59a6930a59e82fea53416ce92028f0ea54b5f 100644
--- a/sql/wsrep_xid.cc
+++ b/sql/wsrep_xid.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 //! @file some utility functions and classes not directly related to replication
diff --git a/sql/wsrep_xid.h b/sql/wsrep_xid.h
index c3cad0231d7b8a373bdc315e31f628366c4d27fc..6d4e6b768e1fc6490a49a62f7c9d8fe613f5835c 100644
--- a/sql/wsrep_xid.h
+++ b/sql/wsrep_xid.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. */
 
 #ifndef WSREP_XID_H
 #define WSREP_XID_H
diff --git a/storage/archive/CMakeLists.txt b/storage/archive/CMakeLists.txt
index 78fb95c0d2672036bb1cd463b7f4acad41a2901f..5b6818fc921fead0a09196f4a2630cc1be1879b5 100644
--- a/storage/archive/CMakeLists.txt
+++ b/storage/archive/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(ARCHIVE_SOURCES  azio.c ha_archive.cc ha_archive.h)
 MYSQL_ADD_PLUGIN(archive ${ARCHIVE_SOURCES} STORAGE_ENGINE LINK_LIBRARIES ${ZLIB_LIBRARY})
diff --git a/storage/archive/archive_reader.c b/storage/archive/archive_reader.c
index e87bc70ade45dff5b4fb438b4579d0fb4e1f798d..0e02127ea32bbc7d991f46b5d3f0da59fb0e1e8f 100644
--- a/storage/archive/archive_reader.c
+++ b/storage/archive/archive_reader.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "azlib.h"
 #include 
diff --git a/storage/archive/archive_test.c b/storage/archive/archive_test.c
index bb052b8409cd159b12c34825b4434597408b9199..72f6d05e71185579801ce60ba2e9c7903843010b 100644
--- a/storage/archive/archive_test.c
+++ b/storage/archive/archive_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "azlib.h"
 #include 
diff --git a/storage/archive/ha_archive.cc b/storage/archive/ha_archive.cc
index e985f75d646a9d6e4afadb500a39b71d49dadb50..49b5ef9709710c32e541be31863c5c38727fe030 100644
--- a/storage/archive/ha_archive.cc
+++ b/storage/archive/ha_archive.cc
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
diff --git a/storage/archive/ha_archive.h b/storage/archive/ha_archive.h
index a74374a340f8ebd51afb848e9b6f6b1108211368..a4911fe9e326ea988c67c4433e5e57f0e0da1f0a 100644
--- a/storage/archive/ha_archive.h
+++ b/storage/archive/ha_archive.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
diff --git a/storage/blackhole/CMakeLists.txt b/storage/blackhole/CMakeLists.txt
index bc14fdde0c152276c0b2811f9d129342bbddd127..c58ca1250de78b823f5e3d77d5c7820bace889a2 100644
--- a/storage/blackhole/CMakeLists.txt
+++ b/storage/blackhole/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(BLACKHOLE_SOURCES  ha_blackhole.cc ha_blackhole.h)
 MYSQL_ADD_PLUGIN(blackhole ${BLACKHOLE_SOURCES} STORAGE_ENGINE)
diff --git a/storage/blackhole/ha_blackhole.cc b/storage/blackhole/ha_blackhole.cc
index 56d8000d64d1c0cc1ac253521a751fa74e5b4c81..69182676c1e9db203e5520106f789731f54e62fa 100644
--- a/storage/blackhole/ha_blackhole.cc
+++ b/storage/blackhole/ha_blackhole.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
@@ -25,6 +25,24 @@
 #include "ha_blackhole.h"
 #include "sql_class.h"                          // THD, SYSTEM_THREAD_SLAVE_SQL
 
+/**
+  Checks if the param 'thd' is pointing to slave applier thread and row based
+  replication is in use.
+
+  A row event will have its thd->query() == NULL except in cases where
+  replicate_annotate_row_events is enabled. In the later case the thd->query()
+  will be pointing to the query, received through replicated annotate event
+  from master.
+
+  @param thd   pointer to a THD instance
+
+  @return TRUE if thread is slave applier and row based replication is in use
+*/
+static bool is_row_based_replication(THD *thd)
+{
+  return thd->system_thread == SYSTEM_THREAD_SLAVE_SQL &&
+    (thd->query() == NULL || thd->variables.binlog_annotate_row_events);
+}
 /* Static declarations for handlerton */
 
 static handler *blackhole_create_handler(handlerton *hton,
@@ -109,7 +127,7 @@ int ha_blackhole::update_row(const uchar *old_data, uchar *new_data)
 {
   DBUG_ENTER("ha_blackhole::update_row");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     DBUG_RETURN(0);
   DBUG_RETURN(HA_ERR_WRONG_COMMAND);
 }
@@ -118,7 +136,7 @@ int ha_blackhole::delete_row(const uchar *buf)
 {
   DBUG_ENTER("ha_blackhole::delete_row");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     DBUG_RETURN(0);
   DBUG_RETURN(HA_ERR_WRONG_COMMAND);
 }
@@ -135,7 +153,7 @@ int ha_blackhole::rnd_next(uchar *buf)
   int rc;
   DBUG_ENTER("ha_blackhole::rnd_next");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     rc= 0;
   else
     rc= HA_ERR_END_OF_FILE;
@@ -220,7 +238,7 @@ int ha_blackhole::index_read_map(uchar * buf, const uchar * key,
   int rc;
   DBUG_ENTER("ha_blackhole::index_read");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     rc= 0;
   else
     rc= HA_ERR_END_OF_FILE;
@@ -235,7 +253,7 @@ int ha_blackhole::index_read_idx_map(uchar * buf, uint idx, const uchar * key,
   int rc;
   DBUG_ENTER("ha_blackhole::index_read_idx");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     rc= 0;
   else
     rc= HA_ERR_END_OF_FILE;
@@ -249,7 +267,7 @@ int ha_blackhole::index_read_last_map(uchar * buf, const uchar * key,
   int rc;
   DBUG_ENTER("ha_blackhole::index_read_last");
   THD *thd= ha_thd();
-  if (thd->system_thread == SYSTEM_THREAD_SLAVE_SQL && thd->query() == NULL)
+  if (is_row_based_replication(thd))
     rc= 0;
   else
     rc= HA_ERR_END_OF_FILE;
diff --git a/storage/blackhole/ha_blackhole.h b/storage/blackhole/ha_blackhole.h
index b70320848d7ec7f26bb551debb3265485b8ac14e..e34386ddf33836181f403bfa8f4b428cca3d299d 100644
--- a/storage/blackhole/ha_blackhole.h
+++ b/storage/blackhole/ha_blackhole.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
diff --git a/storage/cassandra/ha_cassandra.cc b/storage/cassandra/ha_cassandra.cc
index f0ad2e390813e84b72e12df5425c774cf4a1037e..cf30aa6b5dcc619d8e736d3e9d4f70c71f10ae90 100644
--- a/storage/cassandra/ha_cassandra.cc
+++ b/storage/cassandra/ha_cassandra.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation        // gcc: Class implementation
diff --git a/storage/cassandra/ha_cassandra.h b/storage/cassandra/ha_cassandra.h
index 5da1bbcaa787c619bdce1f871c437f5ebdf5f597..40da9db772824e55871406c18b9b79575bd40430 100644
--- a/storage/cassandra/ha_cassandra.h
+++ b/storage/cassandra/ha_cassandra.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface			/* gcc class implementation */
 #endif
diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt
index e524088623d78ea137f11e5e3a4f397357df2721..1d98d321486425d21b111381d65537ef21293a1d 100644
--- a/storage/connect/CMakeLists.txt
+++ b/storage/connect/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(CONNECT_PLUGIN_STATIC  "connect")
 SET(CONNECT_PLUGIN_DYNAMIC "connect")
diff --git a/storage/connect/array.cpp b/storage/connect/array.cpp
index cd1785b48ac20f9aa02cdfc2b87617d2431787fc..483139bc9554be18d65295085074f0561cf135d9 100644
--- a/storage/connect/array.cpp
+++ b/storage/connect/array.cpp
@@ -457,7 +457,7 @@ char *ARRAY::GetStringValue(int n)
 /***********************************************************************/
 bool ARRAY::Find(PVAL valp)
   {
-  register int n;
+  int n;
   PVAL     vp;
 
   if (Type != valp->GetType()) {
@@ -1065,7 +1065,7 @@ MULAR::MULAR(PGLOBAL g, int n) : CSORT(false)
 /***********************************************************************/
 int MULAR::Qcompare(int *i1, int *i2)
   {
-  register int i, n = 0;
+  int i, n = 0;
 
   for (i = 0; i < Narray; i++)
     if ((n = Pars[i]->Qcompare(i1, i2)))
diff --git a/storage/connect/connect.cc b/storage/connect/connect.cc
index 21bca637eab18dd578b7e293e847e63fcd92443e..d0a55984c6789baf50a919fc9c427a0e236b0b27 100644
--- a/storage/connect/connect.cc
+++ b/storage/connect/connect.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /***********************************************************************/
 /*  Author Olivier BERTRAND  bertrandop@gmail.com         2004-2017    */
diff --git a/storage/connect/connect.h b/storage/connect/connect.h
index 2bca8bf54cb88fc2720a4b02b57c9e23283e2fc3..cf0373ba6351f38e3699c46ca56f85ba5eecf82f 100644
--- a/storage/connect/connect.h
+++ b/storage/connect/connect.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**************** Cnt H Declares Source Code File (.H) *****************/
 /*  Name: CONNECT.H    Version 2.4                                     */
diff --git a/storage/connect/csort.cpp b/storage/connect/csort.cpp
index 670131b8fd2f6d5bd8b1618e86bce0e2725b50f2..1e4ba674e2356ac13c432c1650ee9e92a176e85e 100644
--- a/storage/connect/csort.cpp
+++ b/storage/connect/csort.cpp
@@ -178,9 +178,9 @@ void CSORT::DebugSort(int ph, int n, int *base, int *mid, int *tmp)
 /***********************************************************************/
 int CSORT::Qsortx(void)
   {
-  register int  c;
-  register int  lo, hi, min;
-  register int  i, j, rc = 0;
+  int  c;
+  int  lo, hi, min;
+  int  i, j, rc = 0;
   // To do: rc should be checked for being used uninitialized
   int          *top;
 #ifdef DEBTRACE
@@ -344,7 +344,7 @@ int CSORT::Qsortx(void)
 /***********************************************************************/
 void CSORT::Qstx(int *base, int *max)
   {
-  register int *i, *j, *jj, *mid, *him, c;
+  int *i, *j, *jj, *mid, *him, c;
   int          *tmp;
   int           lo, hi, rc;
   size_t        zlo, zhi, cnm;
@@ -543,9 +543,9 @@ void CSORT::Qstx(int *base, int *max)
 /***********************************************************************/
 int CSORT::Qsortc(void)
   {
-  register int  c;
-  register int  lo, hi, min;
-  register int  i, j, k, m, rc = 0;
+  int  c;
+  int  lo, hi, min;
+  int  i, j, k, m, rc = 0;
   // To do: rc should be checked for being used uninitialized
   int          *max;
 #ifdef DEBTRACE
@@ -720,7 +720,7 @@ int CSORT::Qsortc(void)
 /***********************************************************************/
 void CSORT::Qstc(int *base, int *max)
   {
-  register int *i, *j, *jj, *lt, *eq, *gt, *mid;
+  int *i, *j, *jj, *lt, *eq, *gt, *mid;
   int           c = 0, lo, hi, rc;
   size_t        zlo, zhi, cnm;
 
@@ -907,9 +907,9 @@ void CSORT::Qstc(int *base, int *max)
 /***********************************************************************/
 void CSORT::Istc(int *base, int *hi, int *max)
   {
-  register int  c = 0;
-  register int *lo;
-  register int *i, *j;
+  int  c = 0;
+  int *lo;
+  int *i, *j;
 
   /*********************************************************************/
   /*  First put smallest element, which must be in the first THRESH,   */
diff --git a/storage/connect/filter.cpp b/storage/connect/filter.cpp
index 469cd90d1d7cb81e27e2574f6d3cf38952c04ee6..7082b082c67ba07fbfd2cb126b088f80f02734b2 100644
--- a/storage/connect/filter.cpp
+++ b/storage/connect/filter.cpp
@@ -35,9 +35,6 @@
 #include "array.h"
 #include "filter.h"
 #include "xindex.h"
-#if defined(MONGO_SUPPORT) || defined(JDBC_SUPPORT)
-#include "tabext.h"
-#endif   // MONGO_SUPPORT  || JDBC_SUPPORT
 
 /***********************************************************************/
 /*  Utility routines.                                                  */
@@ -1406,86 +1403,6 @@ PFIL FILTER::Copy(PTABS t)
   } // end of Copy
 #endif // 0
 
-#if defined(MONGO_SUPPORT)
-/***********************************************************************/
-/*  Make selector json representation for Mongo tables.                */
-/***********************************************************************/
-bool FILTER::MakeSelector(PGLOBAL g, PSTRG s)
-{
-	s->Append('{');
-
-	if (Opc == OP_AND || Opc == OP_OR) {
-		if (GetArgType(0) != TYPE_FILTER || GetArgType(1) != TYPE_FILTER)
-			return true;
-
-		s->Append("\"$");
-		s->Append(Opc == OP_AND ? "and" : "or");
-		s->Append("\":[");
-
-		if (((PFIL)Arg(0))->MakeSelector(g, s))
-			return true;
-
-		s->Append(',');
-
-		if (((PFIL)Arg(1))->MakeSelector(g, s))
-			return true;
-
-		s->Append(']');
-	} else {
-		if (GetArgType(0) != TYPE_COLBLK)
-			return true;
-
-		s->Append('"');
-		s->Append(((PCOL)Arg(0))->GetJpath(g, false));
-		s->Append("\":{\"$");
-
-		switch (Opc) {
-			case OP_EQ:
-				s->Append("eq");
-				break;
-			case OP_NE:
-				s->Append("ne");
-				break;
-			case OP_GT:
-				s->Append("gt");
-				break;
-			case OP_GE:
-				s->Append("gte");
-				break;
-			case OP_LT:
-				s->Append("lt");
-				break;
-			case OP_LE:
-				s->Append("lte");
-				break;
-			case OP_NULL:
-			case OP_LIKE:
-			case OP_EXIST:
-			default:
-				return true;
-		} // endswitch Opc
-
-		s->Append("\":");
-
-		if (GetArgType(1) == TYPE_COLBLK) {
-			s->Append("\"$");
-			s->Append(((PEXTCOL)Arg(1))->GetJpath(g, false));
-			s->Append('"');
-		} else {
-			char buf[501];
-
-			Arg(1)->Prints(g, buf, 500);
-			s->Append(buf);
-		} // endif Type
-
-		s->Append('}');
-	} // endif Opc
-
-	s->Append('}');
-	return false;
-} // end of MakeSelector
-#endif   // MONGO_SUPPORT
-
 /*********************************************************************/
 /*  Make file output of FILTER contents.                             */
 /*********************************************************************/
diff --git a/storage/connect/ha_connect.cc b/storage/connect/ha_connect.cc
index 8838bb7e696e1926725c5bbf84422b9ef783f61d..fc65c578e8d258f80b496bc77cb72a18430fd5e4 100644
--- a/storage/connect/ha_connect.cc
+++ b/storage/connect/ha_connect.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file ha_connect.cc
@@ -1317,7 +1317,7 @@ char *ha_connect::GetRealString(PCSZ s)
 {
   char *sv;
 
-  if (IsPartitioned() && s && *partname) {
+  if (IsPartitioned() && s && partname && *partname) {
     sv= (char*)PlugSubAlloc(xp->g, NULL, 0);
     sprintf(sv, s, partname);
     PlugSubAlloc(xp->g, NULL, strlen(sv) + 1);
@@ -3071,7 +3071,7 @@ PCFIL ha_connect::CheckCond(PGLOBAL g, PCFIL filp, const Item *cond)
                 strncat(s, res->ptr(), res->length());
 
                 if (res->length() < 19)
-                  strcat(s, "1970-01-01 00:00:00" + res->length());
+                  strcat(s, &"1970-01-01 00:00:00"[res->length()]);
 
                 strcat(s, "'}");
                 break;
@@ -3101,7 +3101,7 @@ PCFIL ha_connect::CheckCond(PGLOBAL g, PCFIL filp, const Item *cond)
                     strncat(s, res->ptr(), res->length());
 
                     if (res->length() < 19)
-                      strcat(s, "1970-01-01 00:00:00" + res->length());
+                      strcat(s, &"1970-01-01 00:00:00"[res->length()]);
 
                     strcat(s, "'}");
                     break;
diff --git a/storage/connect/ha_connect.h b/storage/connect/ha_connect.h
index de61f868038e211dbe4bb7c35447ecd485b11d32..4a10f0f5ad5215bb716f1a9cf5d0bbb19a11819d 100644
--- a/storage/connect/ha_connect.h
+++ b/storage/connect/ha_connect.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /** @file ha_connect.h
 	Author Olivier Bertrand
diff --git a/storage/connect/inihandl.cpp b/storage/connect/inihandl.cpp
index 8a911cb05c01b63a07daaea61050d8e279dbbc27..dacab3c485c1fefd8d534fe046a8e7ab6680d8c2 100644
--- a/storage/connect/inihandl.cpp
+++ b/storage/connect/inihandl.cpp
@@ -16,7 +16,7 @@
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 #include "my_global.h"
 
diff --git a/storage/connect/jdbconn.cpp b/storage/connect/jdbconn.cpp
index e54eeb0fcdd09f2e0dc2a06f2796169d2ff3fff0..e0aca3333e6982cd9c9c193da3067a01cb9bd271 100644
--- a/storage/connect/jdbconn.cpp
+++ b/storage/connect/jdbconn.cpp
@@ -178,30 +178,38 @@ int TranslateJDBCType(int stp, char *tn, int prec, int& len, char& v)
 				v = 'Y';
 			}	// endif len
 
-		break;
-	case 92:   // TIME
-		type = TYPE_DATE;
-		len = 8 + ((prec) ? (prec+1) : 0);
-		v = 'T';
-		break;
-	case -5:   // BIGINT
-		type = TYPE_BIGINT;
-		break;
-	case 0:    // NULL
-	case -2:   // BINARY
-	case -4:   // LONGVARBINARY
-	case 70:   // DATALINK
-	case 2000: // JAVA_OBJECT
-	case 2001: // DISTINCT
-	case 2002: // STRUCT
-	case 2003: // ARRAY
-	case 2004: // BLOB
-	case 2005: // CLOB
-	case 2006: // REF
-	case 2009: // SQLXML
-	case 2011: // NCLOB
-	default:
-		type = TYPE_ERROR;
+			break;
+		case 92:   // TIME
+			type = TYPE_DATE;
+			len = 8 + ((prec) ? (prec + 1) : 0);
+			v = 'T';
+			break;
+		case -5:   // BIGINT
+			type = TYPE_BIGINT;
+			break;
+		case 1111: // UNKNOWN or UUID
+			if (!tn || !stricmp(tn, "UUID")) {
+				type = TYPE_STRING;
+				len = 36;
+				break;
+			}	// endif tn
+
+			// Pass through
+		case 0:    // NULL
+		case -2:   // BINARY
+		case -4:   // LONGVARBINARY
+		case 70:   // DATALINK
+		case 2000: // JAVA_OBJECT
+		case 2001: // DISTINCT
+		case 2002: // STRUCT
+		case 2003: // ARRAY
+		case 2004: // BLOB
+		case 2005: // CLOB
+		case 2006: // REF
+		case 2009: // SQLXML
+		case 2011: // NCLOB
+		default:
+			type = TYPE_ERROR;
 		len = 0;
 	} // endswitch type
 
diff --git a/storage/connect/mycat.cc b/storage/connect/mycat.cc
index 131245929e03415b44082708740250809911d469..db56fb754fa7c609ce77c6464ede0bfdb0bec775 100644
--- a/storage/connect/mycat.cc
+++ b/storage/connect/mycat.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*************** Mycat CC Program Source Code File (.CC) ***************/
 /* PROGRAM NAME: MYCAT                                                 */
@@ -134,7 +134,9 @@ TABTYPE GetTypeID(const char *type)
 #endif
 #if defined(JAVA_SUPPORT)
 								 : (!stricmp(type, "JDBC"))  ? TAB_JDBC
-		             : (!stricmp(type, "MONGO")) ? TAB_MONGO
+#endif
+#if defined(JAVA_SUPPORT) || defined(CMGO_SUPPORT)
+		             : (!stricmp(type, "MONGO") && MongoEnabled()) ? TAB_MONGO
 #endif
 #if defined(JAVA_SUPPORT) || defined(CMGO_SUPPORT)
 		             : (!stricmp(type, "MONGO") && MongoEnabled()) ? TAB_MONGO
diff --git a/storage/connect/mycat.h b/storage/connect/mycat.h
index f0f889722dd3ad53fab00d95726de530265a423c..e5a0b783b8290a66b6e90013982bcb685aecbe0e 100644
--- a/storage/connect/mycat.h
+++ b/storage/connect/mycat.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**************** MYCAT H Declares Source Code File (.H) ***************/
 /*  Name: MYCAT.H  Version 2.3                                         */
diff --git a/storage/connect/mysql-test/connect/disabled.def b/storage/connect/mysql-test/connect/disabled.def
index 827ed58b835501df43e41ecc4528b7d8cadd7eb8..1de4deb0a60e92ea110b6d6d0f9c5c75602497b8 100644
--- a/storage/connect/mysql-test/connect/disabled.def
+++ b/storage/connect/mysql-test/connect/disabled.def
@@ -9,15 +9,15 @@
 #  Do not use any TAB characters for whitespace.
 #
 ##############################################################################
-infoschema-9739  : Crashes with MariaDB 10.0
-jdbc             : Variable settings depend on machine configuration
-jdbc_new         : Variable settings depend on machine configuration
-jdbc_oracle      : Variable settings depend on machine configuration
-jdbc_postgresql  : Variable settings depend on machine configuration
-json_mongo_c     : Need MongoDB running and its C Driver installed
-json_java_2      : Need MongoDB running and its Java Driver installed
-json_java_3      : Need MongoDB running and its Java Driver installed
-mongo_c          : Need MongoDB running and its C Driver installed
-mongo_java_2     : Need MongoDB running and its Java Driver installed
-mongo_java_3     : Need MongoDB running and its Java Driver installed
-tbl_thread       : Bug MDEV-9844,10179,14214 03/01/2018 OB Option THREAD removed
+jdbc            : Variable settings depend on machine configuration
+jdbc_new        : Variable settings depend on machine configuration
+jdbc_oracle     : Variable settings depend on machine configuration
+jdbc_postgresql : Variable settings depend on machine configuration
+json_mongo_c    : Need MongoDB running and its C Driver installed
+json_java_2     : Need MongoDB running and its Java Driver installed
+json_java_3     : Need MongoDB running and its Java Driver installed
+mongo_c         : Need MongoDB running and its C Driver installed
+mongo_java_2    : Need MongoDB running and its Java Driver installed
+mongo_java_3    : Need MongoDB running and its Java Driver installed
+tbl_thread      : Bug MDEV-9844,10179,14214 03/01/2018 OB Option THREAD removed
+#vcol            : Different error code on different versions
diff --git a/storage/connect/mysql-test/connect/r/jdbc.result b/storage/connect/mysql-test/connect/r/jdbc.result
index 1bcd7b736bbdf77df457e57fda9c8484e3e978ad..6bf67ec416fa931c0e031a2fcd0c8455d4c0e527 100644
--- a/storage/connect/mysql-test/connect/r/jdbc.result
+++ b/storage/connect/mysql-test/connect/r/jdbc.result
@@ -239,22 +239,34 @@ CREATE TABLE t2 (command varchar(128) not null,number int(5) not null flag=1,mes
 SELECT * FROM t2 WHERE command='drop table tx1';
 command	number	message
 drop table tx1	0	Execute: java.sql.SQLSyntaxErrorException: (conn:23) Unknown table 'connect.tx1'
+Warnings:
+Warning	1105	Execute: java.sql.SQLSyntaxErrorException: (conn:23) Unknown table 'connect.tx1'
 SELECT * FROM t2 WHERE command = 'create table tx1 (a int not null, b char(32), c double(8,2))';
 command	number	message
 create table tx1 (a int not null, b char(32), c double(8,2))	0	Affected rows
+Warnings:
+Warning	1105	Affected rows
 SELECT * FROM t2 WHERE command in ('insert into tx1 values(1,''The number one'',456.12)',"insert into tx1(a,b) values(2,'The number two'),(3,'The number three')");
 command	number	message
 insert into tx1 values(1,'The number one',456.12)	1	Affected rows
 insert into tx1(a,b) values(2,'The number two'),(3,'The number three')	2	Affected rows
+Warnings:
+Warning	1105	Affected rows
 SELECT * FROM t2 WHERE command='update tx1 set c = 3.1416 where a = 2';
 command	number	message
 update tx1 set c = 3.1416 where a = 2	1	Affected rows
+Warnings:
+Warning	1105	Affected rows
 SELECT * FROM t2 WHERE command='select * from tx1';
 command	number	message
 select * from tx1	3	Result set column number
+Warnings:
+Warning	1105	Result set column number
 SELECT * FROM t2 WHERE command='delete from tx1 where a = 2';
 command	number	message
 delete from tx1 where a = 2	1	Affected rows
+Warnings:
+Warning	1105	Affected rows
 SELECT * FROM connect.tx1;
 a	b	c
 1	The number one	456.12
diff --git a/storage/connect/mysql-test/connect/r/json_java_2.result b/storage/connect/mysql-test/connect/r/json_java_2.result
index ff87d8e2ad7d67d32e4852c8b83ff46dfd0c1e1a..4bbac236200aa162df566bc6c691352bd1735a27 100644
--- a/storage/connect/mysql-test/connect/r/json_java_2.result
+++ b/storage/connect/mysql-test/connect/r/json_java_2.result
@@ -381,7 +381,4 @@ planner	167	41.75
 postcard	23	5.75
 DROP TABLE t1;
 true
-<<<<<<< HEAD
-=======
 set connect_enable_mongo=0;
->>>>>>> connect/10.0
diff --git a/storage/connect/mysql-test/connect/r/tbl_thread.result b/storage/connect/mysql-test/connect/r/tbl_thread.result
index 9633f358c97ad332f9f2d778d0b531535316fceb..3526fc43ffc245b3d7fe4a5e5dda85c19f44c530 100644
--- a/storage/connect/mysql-test/connect/r/tbl_thread.result
+++ b/storage/connect/mysql-test/connect/r/tbl_thread.result
@@ -1,5 +1,10 @@
+connect  master,127.0.0.1,root,,test,$MASTER_MYPORT,;
+connect  slave,127.0.0.1,root,,test,$SLAVE_MYPORT,;
+connection master;
 CREATE DATABASE connect;
+connection slave;
 CREATE DATABASE connect;
+connection default;
 #
 # Checking thread TBL tables
 #
@@ -11,6 +16,7 @@ a	b
 1	test01
 2	test02
 3	test03
+connection master;
 CREATE TABLE rt2 (a int, b char(10));
 INSERT INTO rt2 VALUES (4,'test04'),(5,'test05'),(6,'test06'),(7,'test07');
 SELECT * FROM rt2;
@@ -19,6 +25,7 @@ a	b
 5	test05
 6	test06
 7	test07
+connection slave;
 USE test;
 CREATE TABLE rt3 (a int, b char(10));
 INSERT INTO rt3 VALUES (8,'test08'),(9,'test09'),(10,'test10'),(11,'test11');
@@ -44,6 +51,7 @@ a	b
 17	test17
 18	test18
 19	test19
+connection default;
 CREATE TABLE t2 ENGINE=CONNECT TABLE_TYPE=MYSQL
 CONNECTION='mysql://root@127.0.0.1:MASTER_PORT/test/rt2';
 SELECT * FROM t2;
@@ -103,8 +111,11 @@ a	b
 1	test01
 0	test00
 set connect_xtrace=0;
+connection master;
 DROP TABLE rt2;
+connection slave;
 DROP TABLE rt3,rt4,rt5;
+connection default;
 DROP TABLE t1,t2,t3,t4,t5,total;
 #
 # Old thread TBL tables test modified
@@ -146,7 +157,9 @@ set connect_xtrace=0;
 DROP TABLE total;
 DROP TABLE t1;
 DROP TABLE t2;
+connection master;
 DROP TABLE IF EXISTS connect.t1;
 DROP DATABASE IF EXISTS connect;
+connection slave;
 DROP TABLE IF EXISTS connect.t1;
 DROP DATABASE IF EXISTS connect;
diff --git a/storage/connect/odbconn.cpp b/storage/connect/odbconn.cpp
index 6687513fa6c21717b021b8ab05a6867ed276c5eb..d08c6d1b7a5cbd1d367d76a192bd3fb47661749a 100644
--- a/storage/connect/odbconn.cpp
+++ b/storage/connect/odbconn.cpp
@@ -2279,7 +2279,7 @@ int ODBConn::GetCatInfo(CATPARM *cap)
   int      i, irc;
   bool     b;
   PCSZ     fnc = "Unknown";
-  UWORD    n;
+  UWORD    n = 0;
   SWORD    ncol, len, tp;
   SQLULEN  crow = 0;
   PQRYRES  qrp = cap->Qrp;
diff --git a/storage/connect/user_connect.cc b/storage/connect/user_connect.cc
index d366e0222df5d740d167c816d08685a93ac9a6dd..3bde2fa58eb6a96bdd9ee900dbcc8bea65724454 100644
--- a/storage/connect/user_connect.cc
+++ b/storage/connect/user_connect.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file user_connect.cc
diff --git a/storage/connect/user_connect.h b/storage/connect/user_connect.h
index 983d9adc4785881dde01c006b8b9f87524cc5bbb..22783d7fc12fb913074f1579d4f0b4c4ae769d69 100644
--- a/storage/connect/user_connect.h
+++ b/storage/connect/user_connect.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /** @file user_connect.h
 
diff --git a/storage/connect/valblk.cpp b/storage/connect/valblk.cpp
index 73ca135691c3b3d53dfc9244e0fea245702c971f..5179fa654cf3e50dbc0c9d9285e3a10eebaa52a3 100644
--- a/storage/connect/valblk.cpp
+++ b/storage/connect/valblk.cpp
@@ -511,7 +511,7 @@ void TYPBLK::SetValues(PVBLK pv, int k, int n)
   CheckType(pv)
   TYPE *lp = ((TYPBLK*)pv)->Typp;
 
-  for (register int i = k; i < n; i++)          // TODO
+  for (int i = k; i < n; i++)          // TODO
     Typp[i] = lp[i];
 
   } // end of SetValues
@@ -805,7 +805,7 @@ void CHRBLK::SetValue(const char *sp, uint len, int n)
 
   if (Blanks) {
     // Suppress eventual ending zero and right fill with blanks
-    for (register int i = len; i < Long; i++)
+    for (int i = len; i < Long; i++)
       p[i] = ' ';
 
   } else if ((signed)len < Long)
diff --git a/storage/connect/xindex.cpp b/storage/connect/xindex.cpp
index efefc17b5f57a0f5fbedba58fd881c8a615c2bc5..db4d6cbb00d9d75b2d85a72bc9ebfb3e86ba9809 100644
--- a/storage/connect/xindex.cpp
+++ b/storage/connect/xindex.cpp
@@ -272,8 +272,8 @@ void XINDEX::Close(void)
 /***********************************************************************/
 int XINDEX::Qcompare(int *i1, int *i2)
   {
-  register int  k;
-  register PXCOL kcp;
+  int  k;
+  PXCOL kcp;
 
   for (kcp = To_KeyCol, k = 0; kcp; kcp = kcp->Next)
     if ((k = kcp->Compare(*i1, *i2)))
@@ -745,7 +745,7 @@ int XINDEX::ColMaxSame(PXCOL kp)
 /***********************************************************************/
 bool XINDEX::Reorder(PGLOBAL g __attribute__((unused)))
   {
-  register int i, j, k, n;
+  int i, j, k, n;
   bool          sorted = true;
   PXCOL         kcp;
 #if 0
@@ -1870,8 +1870,8 @@ int XINDEX::Fetch(PGLOBAL g)
 /***********************************************************************/
 int XINDEX::FastFind(void)
   {
-  register int  curk, sup, inf, i= 0, k, n = 2;
-  register PXCOL kp, kcp;
+  int  curk, sup, inf, i= 0, k, n = 2;
+  PXCOL kp, kcp;
 
 //assert((int)nv == Nval);
 
@@ -2209,8 +2209,8 @@ int XINDXS::Fetch(PGLOBAL g)
 /***********************************************************************/
 int XINDXS::FastFind(void)
   {
-  register int   sup, inf, i= 0, n = 2;
-  register PXCOL kcp = To_KeyCol;
+  int   sup, inf, i= 0, n = 2;
+  PXCOL kcp = To_KeyCol;
 
   if (Nblk && Op == OP_EQ) {
     // Look in block values to find in which block to search
@@ -3235,7 +3235,7 @@ void KXYCOL::FillValue(PVAL valp)
 int KXYCOL::Compare(int i1, int i2)
   {
   // Do the actual comparison between values.
-  register int k = Kblp->CompVal(i1, i2);
+  int k = Kblp->CompVal(i1, i2);
 
   if (trace(4))
     htrc("Compare done result=%d\n", k);
@@ -3250,7 +3250,7 @@ int KXYCOL::CompVal(int i)
   {
   // Do the actual comparison between numerical values.
   if (trace(4)) {
-    register int k = (int)Kblp->CompVal(Valp, (int)i);
+    int k = (int)Kblp->CompVal(Valp, (int)i);
 
     htrc("Compare done result=%d\n", k);
     return k;
diff --git a/storage/csv/CMakeLists.txt b/storage/csv/CMakeLists.txt
index 31e41b6d3f84126e905045158cbe435d3213d4fd..3131ebd4a0883500e9d633d6407318cc54f679c0 100644
--- a/storage/csv/CMakeLists.txt
+++ b/storage/csv/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(CSV_SOURCES  ha_tina.cc ha_tina.h transparent_file.cc transparent_file.h)
 MYSQL_ADD_PLUGIN(csv ${CSV_SOURCES} STORAGE_ENGINE MANDATORY)
diff --git a/storage/csv/ha_tina.cc b/storage/csv/ha_tina.cc
index 6659e529e975544efb062a65b17e45d11c6673e8..4f192af64ddef2f9df968faed66080725d7555dd 100644
--- a/storage/csv/ha_tina.cc
+++ b/storage/csv/ha_tina.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Make sure to look at ha_tina.h for more details.
diff --git a/storage/csv/ha_tina.h b/storage/csv/ha_tina.h
index 127c6053a5383dcc0834fc71f36c0551e2cd7b90..7f754594b76285302f8e24620c98a50a6c9fd8d0 100644
--- a/storage/csv/ha_tina.h
+++ b/storage/csv/ha_tina.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/storage/csv/transparent_file.cc b/storage/csv/transparent_file.cc
index 1f1123aefc26beda136de06e364367d223a31454..47d63f2caafd2483a0f4af86f7e4f6250c74d464 100644
--- a/storage/csv/transparent_file.cc
+++ b/storage/csv/transparent_file.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation        // gcc: Class implementation
diff --git a/storage/csv/transparent_file.h b/storage/csv/transparent_file.h
index 2536ad16a0fa56c0d99633fd1e53659e0af6dee1..024fc0e3a38e1d384692927e73fe0558c4158f5f 100644
--- a/storage/csv/transparent_file.h
+++ b/storage/csv/transparent_file.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/storage/example/CMakeLists.txt b/storage/example/CMakeLists.txt
index f0ff3e15b4d04a85c4937035102739d6bbf70b0f..5b59d1b1118db3a63fde6accf9547764627d0140 100644
--- a/storage/example/CMakeLists.txt
+++ b/storage/example/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(EXAMPLE_SOURCES ha_example.cc)
 MYSQL_ADD_PLUGIN(example ${EXAMPLE_SOURCES} STORAGE_ENGINE MODULE_ONLY COMPONENT Test)
diff --git a/storage/example/ha_example.cc b/storage/example/ha_example.cc
index 3a5b269e79f1d6c2f6b31e8f9d0f273f955bdf3d..b4e084035fd61237dfb5473a9ad8826022131290 100644
--- a/storage/example/ha_example.cc
+++ b/storage/example/ha_example.cc
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file ha_example.cc
diff --git a/storage/example/ha_example.h b/storage/example/ha_example.h
index 2d3d0c81ed97e7f7d7190199f8baee0af6806d5e..63412c179fde2167ef50d26c998b584685f33165 100644
--- a/storage/example/ha_example.h
+++ b/storage/example/ha_example.h
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /** @file ha_example.h
 
diff --git a/storage/federated/CMakeLists.txt b/storage/federated/CMakeLists.txt
index 057a5f28bb7d1714838d35eb9de6b96ce9f72bf7..9d5c49c6a9c81187ecefb8f387a797be4b455151 100644
--- a/storage/federated/CMakeLists.txt
+++ b/storage/federated/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(FEDERATED_SOURCES  ha_federated.cc)
 MYSQL_ADD_PLUGIN(federated ${FEDERATED_SOURCES} STORAGE_ENGINE MODULE_ONLY)
diff --git a/storage/federated/ha_federated.cc b/storage/federated/ha_federated.cc
index a0b2cb1ab3a354029bc056b80eb8f017bbb04199..26cc63885f30e09fb0aab0bf990a92a5be1a559f 100644
--- a/storage/federated/ha_federated.cc
+++ b/storage/federated/ha_federated.cc
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
 
diff --git a/storage/federated/ha_federated.h b/storage/federated/ha_federated.h
index 78f959634dad9ccf6371fe4bd1b34b92abf1d596..35b299ae3a7f78f623bee611e243771becb71b0a 100644
--- a/storage/federated/ha_federated.h
+++ b/storage/federated/ha_federated.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Please read ha_exmple.cc before reading this file.
diff --git a/storage/heap/CMakeLists.txt b/storage/heap/CMakeLists.txt
index 3a0c2e7271c5bbd47e745ce9e5b74caabe43fd2b..f3d10e1f18639f4837357c3584ecfb2d65adc1fa 100644
--- a/storage/heap/CMakeLists.txt
+++ b/storage/heap/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(HEAP_SOURCES  _check.c _rectest.c hp_block.c hp_clear.c hp_close.c hp_create.c
 				ha_heap.cc
diff --git a/storage/heap/_check.c b/storage/heap/_check.c
index fd8652d6a2acf51713b2feda2cc42df67b23be38..883e67046e70316fd98a658286f5e2648c794022 100644
--- a/storage/heap/_check.c
+++ b/storage/heap/_check.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Check that heap-structure is ok */
 
diff --git a/storage/heap/_rectest.c b/storage/heap/_rectest.c
index f2cadad4274dbf6f70a829fffcd892c05d9d8a8c..f611ad55ad312edaae3628a57545bc1eea57be58 100644
--- a/storage/heap/_rectest.c
+++ b/storage/heap/_rectest.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Test if a record has changed since last read */
 /* In heap this is only used when debugging */
diff --git a/storage/heap/ha_heap.cc b/storage/heap/ha_heap.cc
index 0298104c8aa4b4fe63d4a27fc706e6fe3d163111..35a0dd108e6c1ffa59f3297e11fe7f6ce6bc5820 100644
--- a/storage/heap/ha_heap.cc
+++ b/storage/heap/ha_heap.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
diff --git a/storage/heap/ha_heap.h b/storage/heap/ha_heap.h
index 503d3b896ac291e3abf902528b48161d6d92c334..a23c2c2b7cb31103ad3ae2f76fa9858ff72a072d 100644
--- a/storage/heap/ha_heap.h
+++ b/storage/heap/ha_heap.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_INTERFACE
diff --git a/storage/heap/heapdef.h b/storage/heap/heapdef.h
index d5c0ad96b05960e39626e4bc8b271f5b236d8636..430fdaa8949080842d5b42fbf998ca0504075c96 100644
--- a/storage/heap/heapdef.h
+++ b/storage/heap/heapdef.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is included in all heap-files */
 
@@ -97,7 +97,7 @@ extern uint hp_rb_key_length(HP_KEYDEF *keydef, const uchar *key);
 extern uint hp_rb_null_key_length(HP_KEYDEF *keydef, const uchar *key);
 extern uint hp_rb_var_key_length(HP_KEYDEF *keydef, const uchar *key);
 extern my_bool hp_if_null_in_key(HP_KEYDEF *keyinfo, const uchar *record);
-extern int hp_close(register HP_INFO *info);
+extern int hp_close(HP_INFO *info);
 extern void hp_clear(HP_SHARE *info);
 extern void hp_clear_keys(HP_SHARE *info);
 extern uint hp_rb_pack_key(HP_KEYDEF *keydef, uchar *key, const uchar *old,
diff --git a/storage/heap/hp_block.c b/storage/heap/hp_block.c
index aa5343a07176928b4b323ef606252265b1b56fb4..480c116c072e6f3f49bee6df17f7b4c308a6fa6c 100644
--- a/storage/heap/hp_block.c
+++ b/storage/heap/hp_block.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* functions on blocks; Keys and records are saved in blocks */
 
diff --git a/storage/heap/hp_clear.c b/storage/heap/hp_clear.c
index 2b1502e6475579d01bd3aacec6dbfbee118add8a..cb59048c846624c082d08c864d52d08bffcc76b1 100644
--- a/storage/heap/hp_clear.c
+++ b/storage/heap/hp_clear.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   remove all records from database
diff --git a/storage/heap/hp_close.c b/storage/heap/hp_close.c
index 52663fdaa0098febcf15690413db95ea8a291d08..092048a7c1c63875ed631a3a36c5b72409184839 100644
--- a/storage/heap/hp_close.c
+++ b/storage/heap/hp_close.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* close a heap-database */
 
diff --git a/storage/heap/hp_create.c b/storage/heap/hp_create.c
index dcfff4e8e9fbd03d299647993ec070527b8acc2e..171756071ebd1cc160ce23375bda40bdaa5feb52 100644
--- a/storage/heap/hp_create.c
+++ b/storage/heap/hp_create.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_delete.c b/storage/heap/hp_delete.c
index 3f02e28a31b0593753d6a6cc3fb893295dee64b4..bc3c82e9406630af00845d99dee7d4250a47ea76 100644
--- a/storage/heap/hp_delete.c
+++ b/storage/heap/hp_delete.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* remove current record in heap-database */
 
diff --git a/storage/heap/hp_extra.c b/storage/heap/hp_extra.c
index 9a19f818d3b2170ee9b8bdbd88a08679390f6ff1..3c554fe98e780a6bfdda98950ef94bc1c39bd996 100644
--- a/storage/heap/hp_extra.c
+++ b/storage/heap/hp_extra.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Extra functions we want to do with a database */
 /* - Set flags for quicker databasehandler */
diff --git a/storage/heap/hp_hash.c b/storage/heap/hp_hash.c
index aeee87fcdb52c43a6986e85832763343d603a282..8b8a20d685f76b9a1d74d67cf8ba55af719a8809 100644
--- a/storage/heap/hp_hash.c
+++ b/storage/heap/hp_hash.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* The hash functions used for saveing keys */
 
diff --git a/storage/heap/hp_info.c b/storage/heap/hp_info.c
index 10047fb2eac990da5f441f51ac0f0a874bf52739..41596d864a227e705806df1de4eac915fffb60c6 100644
--- a/storage/heap/hp_info.c
+++ b/storage/heap/hp_info.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Returns info about database status */
 
diff --git a/storage/heap/hp_open.c b/storage/heap/hp_open.c
index 611eda4e734aacd3fb293dae9d633281ba403830..65186d77e4f246c6c98bbb24968cc7100848fe22 100644
--- a/storage/heap/hp_open.c
+++ b/storage/heap/hp_open.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* open a heap-database */
 
diff --git a/storage/heap/hp_panic.c b/storage/heap/hp_panic.c
index e1e421a5115e9167202eb48c61559082d50badfb..6872f04adc8cb23c91b7b09d728d5540a6f9743e 100644
--- a/storage/heap/hp_panic.c
+++ b/storage/heap/hp_panic.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rename.c b/storage/heap/hp_rename.c
index 34c8218e3876f68bba678072db6528fc7dfcfecc..34e82bbc5311fe60893abf0f8edafc556513bca6 100644
--- a/storage/heap/hp_rename.c
+++ b/storage/heap/hp_rename.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Rename a table
diff --git a/storage/heap/hp_rfirst.c b/storage/heap/hp_rfirst.c
index 685ecdb5456c7f9bc3aeabf0c75a7e8a7e29d7ae..60596a2c650fd979719d1b358e36a1b45662b244 100644
--- a/storage/heap/hp_rfirst.c
+++ b/storage/heap/hp_rfirst.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rkey.c b/storage/heap/hp_rkey.c
index 692e1a01b6151fd7f27dafbc5a4f860199c4b7a2..2d9fae4c52097d476a4b8d3dcd339342e7677d4e 100644
--- a/storage/heap/hp_rkey.c
+++ b/storage/heap/hp_rkey.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rlast.c b/storage/heap/hp_rlast.c
index ff0d57228daa74ed2efa8102d96168306947f61f..ed9c3499d5e8400fb79ee827840e425a6bac33eb 100644
--- a/storage/heap/hp_rlast.c
+++ b/storage/heap/hp_rlast.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rnext.c b/storage/heap/hp_rnext.c
index 8fd469a317ea67a3bb5578129e9d35ae90ead6cc..f227ce4d274be5f2682ffa5ac6ad6a2bae4cac1d 100644
--- a/storage/heap/hp_rnext.c
+++ b/storage/heap/hp_rnext.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rprev.c b/storage/heap/hp_rprev.c
index 6e06607187b22e8a66a82a7891e69a99acf20f49..1d9420ba8b65f4a778e2ecbdba914d1cfc58964b 100644
--- a/storage/heap/hp_rprev.c
+++ b/storage/heap/hp_rprev.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "heapdef.h"
 
diff --git a/storage/heap/hp_rrnd.c b/storage/heap/hp_rrnd.c
index 1f2a26cb3ed0a81e94b1b9110d3521ad803e7ea8..3947946ce670607434695265eefae8e062b2d0e8 100644
--- a/storage/heap/hp_rrnd.c
+++ b/storage/heap/hp_rrnd.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Read a record from a random position */
 
diff --git a/storage/heap/hp_rsame.c b/storage/heap/hp_rsame.c
index 19767fd752be142c39dbd3e10433e72e55016013..8bba4cd23a9c198e757a2a53484d16610bf7c9b6 100644
--- a/storage/heap/hp_rsame.c
+++ b/storage/heap/hp_rsame.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* re-read current record */
 
diff --git a/storage/heap/hp_scan.c b/storage/heap/hp_scan.c
index 65726c37e1fa18611c449a47c764bfd44f638d48..3315cb05b3fa9fd4d2ced9551e8fc64d0e5d2500 100644
--- a/storage/heap/hp_scan.c
+++ b/storage/heap/hp_scan.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Scan through all rows */
 
diff --git a/storage/heap/hp_static.c b/storage/heap/hp_static.c
index c1c94a19f9693e2fd9629012b32ff09211487df5..9191e23b399076318ea0522c79c4b0e2a10c1044 100644
--- a/storage/heap/hp_static.c
+++ b/storage/heap/hp_static.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Static variables for heap library. All definied here for easy making of
diff --git a/storage/heap/hp_test1.c b/storage/heap/hp_test1.c
index 9b14610fe3087b576010ea341ed5363758b5dce5..88eaf73f5500fdeab6251b10457447c2635b1528 100644
--- a/storage/heap/hp_test1.c
+++ b/storage/heap/hp_test1.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Test av heap-database */
 /* Programmet skapar en heap-databas. Till denna skrivs ett antal poster.
diff --git a/storage/heap/hp_test2.c b/storage/heap/hp_test2.c
index 657d5bcd01e2b329bdc84d9ad3a96648d0ccc30c..27d15077b86cd4e070e1f49115ecef4d187bc33b 100644
--- a/storage/heap/hp_test2.c
+++ b/storage/heap/hp_test2.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Test av isam-databas: stor test */
 
diff --git a/storage/heap/hp_update.c b/storage/heap/hp_update.c
index 8757f8e87c5428ef78b79932904d3592ed6cfe84..dfcb8b1f1268486dbebf91af431ea76d353d5482 100644
--- a/storage/heap/hp_update.c
+++ b/storage/heap/hp_update.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Update current record in heap-database */
 
diff --git a/storage/heap/hp_write.c b/storage/heap/hp_write.c
index fc1e82bab4244078ad0a90ad479702e61915fe44..3a2d1cd678442ab0fdef9ce0db473df60f561f34 100644
--- a/storage/heap/hp_write.c
+++ b/storage/heap/hp_write.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Write a record to heap-databas */
 
diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt
index c873e77f6ac3e2cda182e3f9f6b7bbdd5b00e804..44db4552e741646b7009b2200b0dd9ca6ca2f920 100644
--- a/storage/innobase/CMakeLists.txt
+++ b/storage/innobase/CMakeLists.txt
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 # This is the CMakeLists for InnoDB
 
@@ -497,8 +497,7 @@ SET(INNOBASE_SOURCES
 	ut/ut0rnd.cc
 	ut/ut0ut.cc
 	ut/ut0vec.cc
-	ut/ut0wqueue.cc
-	ut/ut0timer.cc)
+	ut/ut0wqueue.cc)
 
 IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
     enable_language(ASM)
diff --git a/storage/innobase/api/api0api.cc b/storage/innobase/api/api0api.cc
index fd14fdefd18fe6ed8bd6f8fb435a92c82c2a12c5..98d45c2000f899f4f8a1e91e9efb818dd44c65da 100644
--- a/storage/innobase/api/api0api.cc
+++ b/storage/innobase/api/api0api.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/api/api0misc.cc b/storage/innobase/api/api0misc.cc
index 5daee5de4c9413729d434a0289a48b96a42ae04f..b16abf9b84f5b39ea48594ea06630e2625ba5d5e 100644
--- a/storage/innobase/api/api0misc.cc
+++ b/storage/innobase/api/api0misc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/btr/btr0btr.cc b/storage/innobase/btr/btr0btr.cc
index 841b14e76f43be2f19dba2b092049d0141a058f9..02c613cabbf6ddb526c659f8656dde7850f61406 100644
--- a/storage/innobase/btr/btr0btr.cc
+++ b/storage/innobase/btr/btr0btr.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/btr/btr0cur.cc b/storage/innobase/btr/btr0cur.cc
index 09d84d1ecbc76b45ef689f68755cb12b590c9549..7b2fbfa0f0edd72f6942dc8bf860929b1d661b5e 100644
--- a/storage/innobase/btr/btr0cur.cc
+++ b/storage/innobase/btr/btr0cur.cc
@@ -21,7 +21,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/btr/btr0defragment.cc b/storage/innobase/btr/btr0defragment.cc
index 9f17815cd43ca2d2a962702867cd4460a59efdfb..070f6a9cc0a0d73b96ab4ef0b8ca1678df902a94 100644
--- a/storage/innobase/btr/btr0defragment.cc
+++ b/storage/innobase/btr/btr0defragment.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
-Copyright (C) 2013, 2014 Facebook, Inc. All Rights Reserved.
-Copyright (C) 2014, 2015, MariaDB Corporation. All Rights Reserved.
+Copyright (C) 2012, 2014 Facebook, Inc. All Rights Reserved.
+Copyright (C) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
@@ -35,7 +35,6 @@ Modified 30/07/2014 Jan Lindström jan.lindstrom@mariadb.com
 #include "ibuf0ibuf.h"
 #include "lock0lock.h"
 #include "srv0start.h"
-#include "ut0timer.h"
 
 #include 
 
@@ -99,8 +98,7 @@ Initialize defragmentation. */
 void
 btr_defragment_init()
 {
-	srv_defragment_interval = ut_microseconds_to_timer(
-		1000000.0 / srv_defragment_frequency);
+	srv_defragment_interval = 1000000000ULL / srv_defragment_frequency;
 	mutex_create(btr_defragment_mutex_key, &btr_defragment_mutex,
 		     SYNC_ANY_LATCH);
 }
@@ -728,7 +726,7 @@ DECLARE_THREAD(btr_defragment_thread)(void*)
 		}
 
 		pcur = item->pcur;
-		ulonglong now = ut_timer_now();
+		ulonglong now = my_interval_timer();
 		ulonglong elapsed = now - item->last_processed;
 
 		if (elapsed < srv_defragment_interval) {
@@ -738,11 +736,12 @@ DECLARE_THREAD(btr_defragment_thread)(void*)
 			defragmentation of all indices queue up on a single
 			thread, it's likely other indices that follow this one
 			don't need to sleep again. */
-			os_thread_sleep(((ulint)ut_timer_to_microseconds(
-						srv_defragment_interval - elapsed)));
+			os_thread_sleep(static_cast
+					((srv_defragment_interval - elapsed)
+					 / 1000));
 		}
 
-		now = ut_timer_now();
+		now = my_interval_timer();
 		mtr_start(&mtr);
 		btr_pcur_restore_position(BTR_MODIFY_TREE, pcur, &mtr);
 		cursor = btr_pcur_get_btr_cur(pcur);
diff --git a/storage/innobase/btr/btr0pcur.cc b/storage/innobase/btr/btr0pcur.cc
index 5ba9409a7b1c270a8e8f98eb8843d9e2cd9f7572..7ba8b8f7412d191c66b2aaef84b2e82c2277485d 100644
--- a/storage/innobase/btr/btr0pcur.cc
+++ b/storage/innobase/btr/btr0pcur.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/btr/btr0sea.cc b/storage/innobase/btr/btr0sea.cc
index bd5cd02aa7500b963cef94e3b3ec2e3ac09243f4..a60c68fc70ad0cc439d4bcd7370c6b53916e2d89 100644
--- a/storage/innobase/btr/btr0sea.cc
+++ b/storage/innobase/btr/btr0sea.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/buf/buf0buddy.cc b/storage/innobase/buf/buf0buddy.cc
index d11a5cf9873335d7ba04b057c7d4816986363c0f..bcb935ff211e86f87f5d7e639f201a2da884d926 100644
--- a/storage/innobase/buf/buf0buddy.cc
+++ b/storage/innobase/buf/buf0buddy.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -594,7 +594,7 @@ buf_buddy_relocate(
 
 	if (buf_page_can_relocate(bpage)) {
 		/* Relocate the compressed page. */
-		ullint	usec = ut_time_us(NULL);
+		const ulonglong ns = my_interval_timer();
 
 		ut_a(bpage->zip.data == src);
 
@@ -612,11 +612,8 @@ buf_buddy_relocate(
 			reinterpret_cast(src), i);
 
 		buf_buddy_stat_t*	buddy_stat = &buf_pool->buddy_stat[i];
-
 		++buddy_stat->relocated;
-
-		buddy_stat->relocated_usec += ut_time_us(NULL) - usec;
-
+		buddy_stat->relocated_usec+= (my_interval_timer() - ns) / 1000;
 		return(true);
 	}
 
diff --git a/storage/innobase/buf/buf0buf.cc b/storage/innobase/buf/buf0buf.cc
index 78200198e62d723bbb182a0a6ccd1c9f9a53b43e..4d5b3f29f82727a3e669db681c94e8896990a4df 100644
--- a/storage/innobase/buf/buf0buf.cc
+++ b/storage/innobase/buf/buf0buf.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -951,26 +951,26 @@ buf_page_is_corrupted(
 	the first page of each file of the system tablespace.
 	Ignore it for the system tablespace. */
 	if (!checksum_field1 && !checksum_field2) {
-		ulint i = 0;
-		do {
-			if (read_buf[i]) {
-				return true;
-			}
-		} while (++i < FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION);
-
+		/* Checksum fields can have valid value as zero.
+		If the page is not empty then do the checksum
+		calculation for the page. */
+		bool all_zeroes = true;
+		for (size_t i = 0; i < srv_page_size; i++) {
 #ifndef UNIV_INNOCHECKSUM
-		if (!space || !space->id) {
-			/* Skip FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION
-			in the system tablespace. */
-			i += 8;
-		}
+			if (i == FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION
+			    && (!space || !space->id)) {
+				i += 8;
+			}
 #endif
-		do {
 			if (read_buf[i]) {
-				return true;
+				all_zeroes = false;
+				break;
 			}
-		} while (++i < srv_page_size);
-		return false;
+		}
+
+		if (all_zeroes) {
+			return false;
+		}
 	}
 
 	switch (curr_algo) {
@@ -1688,7 +1688,7 @@ buf_pool_init_instance(
 
 		buf_pool->zip_hash = hash_create(2 * buf_pool->curr_size);
 
-		buf_pool->last_printout_time = ut_time();
+		buf_pool->last_printout_time = time(NULL);
 	}
 	/* 2. Initialize flushing fields
 	-------------------------------- */
@@ -6160,7 +6160,7 @@ buf_refresh_io_stats(
 /*=================*/
 	buf_pool_t*	buf_pool)	/*!< in: buffer pool instance */
 {
-	buf_pool->last_printout_time = ut_time();
+	buf_pool->last_printout_time = time(NULL);
 	buf_pool->old_stat = buf_pool->stat;
 }
 
diff --git a/storage/innobase/buf/buf0checksum.cc b/storage/innobase/buf/buf0checksum.cc
index 9e5f1dfe475ff37330664d54e8d984caeea7e3f0..bc9a96bf6d3b85cc9310f3ea1f02fb37912d8001 100644
--- a/storage/innobase/buf/buf0checksum.cc
+++ b/storage/innobase/buf/buf0checksum.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/buf/buf0dblwr.cc b/storage/innobase/buf/buf0dblwr.cc
index 2046d8736c65a35f5f74814406f7374ebbcfd648..99582685d04bf7f9fa37828d0547990d61bebb31 100644
--- a/storage/innobase/buf/buf0dblwr.cc
+++ b/storage/innobase/buf/buf0dblwr.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -612,20 +612,13 @@ buf_dblwr_process()
 
 		ulint decomp = fil_page_decompress(buf, page);
 		if (!decomp || (decomp != srv_page_size && zip_size)) {
-			goto bad_doublewrite;
+			continue;
 		}
 
 		if (expect_encrypted && mach_read_from_4(
 			    page + FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION)
 		    ? !fil_space_verify_crypt_checksum(page, zip_size)
 		    : buf_page_is_corrupted(true, page, zip_size, space())) {
-			if (!is_all_zero) {
-bad_doublewrite:
-				ib_logf(IB_LOG_LEVEL_WARN,
-					"A doublewrite copy of page "
-					ULINTPF ":" ULINTPF " is corrupted.",
-					space_id, page_no);
-			}
 			/* Theoretically we could have another good
 			copy for this page in the doublewrite
 			buffer. If not, we will report a fatal error
diff --git a/storage/innobase/buf/buf0dump.cc b/storage/innobase/buf/buf0dump.cc
index 74d71fd97e2df5875a736c6c4ff2a779fe00b059..eabc554036a20fa372ca772ad13e7fe7796d5570 100644
--- a/storage/innobase/buf/buf0dump.cc
+++ b/storage/innobase/buf/buf0dump.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/buf/buf0flu.cc b/storage/innobase/buf/buf0flu.cc
index 66704ac1344a9a881e17ee2ff8c7b71a1f73f421..2e352c3de726be91c5c89f895841fd6a3b7e9ac6 100644
--- a/storage/innobase/buf/buf0flu.cc
+++ b/storage/innobase/buf/buf0flu.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/buf/buf0lru.cc b/storage/innobase/buf/buf0lru.cc
index 224e615f7d292904b53ec2a663ca3417649df65c..29fe81dc92019e886dddbf3d32d6a84ae10aff0e 100644
--- a/storage/innobase/buf/buf0lru.cc
+++ b/storage/innobase/buf/buf0lru.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2243,8 +2243,8 @@ buf_LRU_old_ratio_update_instance(
 	buf_pool_t*	buf_pool,/*!< in: buffer pool instance */
 	uint		old_pct,/*!< in: Reserve this percentage of
 				the buffer pool for "old" blocks. */
-	ibool		adjust)	/*!< in: TRUE=adjust the LRU list;
-				FALSE=just assign buf_pool->LRU_old_ratio
+	bool		adjust)	/*!< in: true=adjust the LRU list;
+				false=just assign buf_pool->LRU_old_ratio
 				during the initialization of InnoDB */
 {
 	uint	ratio;
@@ -2282,17 +2282,17 @@ buf_LRU_old_ratio_update_instance(
 Updates buf_pool->LRU_old_ratio.
 @return	updated old_pct */
 UNIV_INTERN
-ulint
+uint
 buf_LRU_old_ratio_update(
 /*=====================*/
 	uint	old_pct,/*!< in: Reserve this percentage of
 			the buffer pool for "old" blocks. */
-	ibool	adjust)	/*!< in: TRUE=adjust the LRU list;
-			FALSE=just assign buf_pool->LRU_old_ratio
+	bool	adjust)	/*!< in: true=adjust the LRU list;
+			false=just assign buf_pool->LRU_old_ratio
 			during the initialization of InnoDB */
 {
 	ulint	i;
-	ulint	new_ratio = 0;
+	uint	new_ratio = 0;
 
 	for (i = 0; i < srv_buf_pool_instances; i++) {
 		buf_pool_t*	buf_pool;
diff --git a/storage/innobase/buf/buf0mtflu.cc b/storage/innobase/buf/buf0mtflu.cc
index ac8a8f8f4912b57c15822926069a6e21fd5d0c57..0ecc55ed4a93aea9d69da5f7bc6e0043ba7958fd 100644
--- a/storage/innobase/buf/buf0mtflu.cc
+++ b/storage/innobase/buf/buf0mtflu.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/buf/buf0rea.cc b/storage/innobase/buf/buf0rea.cc
index d2a4897590530949699eba7463040338010c49c5..3b4d21f75076e35bfb28d1b0f6b311979369a3b4 100644
--- a/storage/innobase/buf/buf0rea.cc
+++ b/storage/innobase/buf/buf0rea.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/compile-innodb b/storage/innobase/compile-innodb
index 77d2244f2bbd93f798e84f3e97f1dd5e31978f3a..47073d3cea9cb228fe289dad522c49b198ff028c 100755
--- a/storage/innobase/compile-innodb
+++ b/storage/innobase/compile-innodb
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc., 
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 
 # we assume this script is in storage/innobase/
diff --git a/storage/innobase/data/data0data.cc b/storage/innobase/data/data0data.cc
index cda27de173670b75950eb170145831f8dc7c65e7..6c01176bfdd62c16c11809dd92834ff435204b71 100644
--- a/storage/innobase/data/data0data.cc
+++ b/storage/innobase/data/data0data.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/data/data0type.cc b/storage/innobase/data/data0type.cc
index 34ca399f9b2ad99583f22b7a2c8f6b7cadd0c0cc..715649f471e66a06dd56c547c1d3cfebb0a30ea0 100644
--- a/storage/innobase/data/data0type.cc
+++ b/storage/innobase/data/data0type.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/dict/dict0boot.cc b/storage/innobase/dict/dict0boot.cc
index 80724372f271d27d261baf22a191fc8d132db520..bd8e6a5af88faff0aa1525c7848dbc864119bab2 100644
--- a/storage/innobase/dict/dict0boot.cc
+++ b/storage/innobase/dict/dict0boot.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/dict/dict0crea.cc b/storage/innobase/dict/dict0crea.cc
index 0f9024b877a19935c2dfb2059712038a75ddd69b..5ac528dea449bd9c1753a0f52e6f2889a8144513 100644
--- a/storage/innobase/dict/dict0crea.cc
+++ b/storage/innobase/dict/dict0crea.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/dict/dict0dict.cc b/storage/innobase/dict/dict0dict.cc
index 1e9d9f8d74e5760ac6ea510d3f80150719cc5c72..c6ccc37d589bc3a15813ea2cd4a7670f0dcf1d53 100644
--- a/storage/innobase/dict/dict0dict.cc
+++ b/storage/innobase/dict/dict0dict.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/dict/dict0load.cc b/storage/innobase/dict/dict0load.cc
index b2065c7c4649ce07ebfd3c21f4c3bf56bd0e3699..dd9ddc5f20e673f44c85f3e79784a2dde0021253 100644
--- a/storage/innobase/dict/dict0load.cc
+++ b/storage/innobase/dict/dict0load.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/dict/dict0mem.cc b/storage/innobase/dict/dict0mem.cc
index 015518858bcced33f6bb18aa9612e4098c1e20c9..c5f845d14b1af9f16f1d1c2d8e3387b2bbd0d06e 100644
--- a/storage/innobase/dict/dict0mem.cc
+++ b/storage/innobase/dict/dict0mem.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -750,7 +750,7 @@ void
 dict_mem_init(void)
 {
 	/* Initialize a randomly distributed temporary file number */
-	ib_uint32_t now = static_cast(ut_time());
+	ib_uint32_t now = static_cast(time(NULL));
 
 	const byte* buf = reinterpret_cast(&now);
 	ut_ad(ut_crc32 != NULL);
diff --git a/storage/innobase/dict/dict0stats.cc b/storage/innobase/dict/dict0stats.cc
index 063646891731e222d030cbacc0cf33d0ed8d0254..59c661514f512963190bfb3eb8455f9e1b011490 100644
--- a/storage/innobase/dict/dict0stats.cc
+++ b/storage/innobase/dict/dict0stats.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -45,7 +45,7 @@ Created Jan 06, 2010 Vasil Dimov
 #include "trx0trx.h" /* trx_create() */
 #include "trx0roll.h" /* trx_rollback_to_savepoint() */
 #include "ut0rnd.h" /* ut_rnd_interval() */
-#include "ut0ut.h" /* ut_format_name(), ut_time() */
+#include "ut0ut.h" /* ut_format_name() */
 
 #include 
 #include 
@@ -1000,7 +1000,7 @@ dict_stats_update_transient(
 	table->stat_sum_of_other_index_sizes = sum_of_index_sizes
 		- index->stat_index_size;
 
-	table->stats_last_recalc = ut_time();
+	table->stats_last_recalc = time(NULL);
 
 	table->stat_modified_counter = 0;
 
@@ -2325,7 +2325,7 @@ dict_stats_update_persistent(
 			+= index->stat_index_size;
 	}
 
-	table->stats_last_recalc = ut_time();
+	table->stats_last_recalc = time(NULL);
 
 	table->stat_modified_counter = 0;
 
@@ -2535,7 +2535,7 @@ dict_stats_save(
 	/* MySQL's timestamp is 4 byte, so we use
 	pars_info_add_int4_literal() which takes a lint arg, so "now" is
 	lint */
-	now = (lint) ut_time();
+	now = (lint) time(NULL);
 
 	pinfo = pars_info_create();
 
@@ -3980,7 +3980,7 @@ dict_stats_save_defrag_summary(
 	dict_index_t*	index)	/*!< in: index */
 {
 	dberr_t	ret;
-	lint	now = (lint) ut_time();
+	lint	now = (lint) time(NULL);
 	if (dict_index_is_univ(index)) {
 		return DB_SUCCESS;
 	}
@@ -4017,7 +4017,7 @@ dict_stats_save_defrag_stats(
 		return DB_SUCCESS;
 	}
 
-	lint	now = (lint) ut_time();
+	lint	now = (lint) time(NULL);
 	mtr_t	mtr;
 	ulint	n_leaf_pages;
 	ulint	n_leaf_reserved;
diff --git a/storage/innobase/dict/dict0stats_bg.cc b/storage/innobase/dict/dict0stats_bg.cc
index 9394ca2830d9925c455c1b9d43a35c94548fc251..b4923364cac7888b22bb7e26fffcd5c56a45ef75 100644
--- a/storage/innobase/dict/dict0stats_bg.cc
+++ b/storage/innobase/dict/dict0stats_bg.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -437,14 +437,14 @@ dict_stats_process_entry_from_recalc_pool()
 
 	mutex_exit(&dict_sys->mutex);
 
-	/* ut_time() could be expensive, the current function
+	/* time() could be expensive, the current function
 	is called once every time a table has been changed more than 10% and
 	on a system with lots of small tables, this could become hot. If we
 	find out that this is a problem, then the check below could eventually
 	be replaced with something else, though a time interval is the natural
 	approach. */
 
-	if (ut_difftime(ut_time(), table->stats_last_recalc)
+	if (difftime(time(NULL), table->stats_last_recalc)
 	    < MIN_RECALC_INTERVAL) {
 
 		/* Stats were (re)calculated not long ago. To avoid
diff --git a/storage/innobase/dyn/dyn0dyn.cc b/storage/innobase/dyn/dyn0dyn.cc
index dd1f6863c145eaf8b8b3e2a5988bfd16e041e773..8302de53eb92ebc0e85e3d05ba22d6e70df97d34 100644
--- a/storage/innobase/dyn/dyn0dyn.cc
+++ b/storage/innobase/dyn/dyn0dyn.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/eval/eval0eval.cc b/storage/innobase/eval/eval0eval.cc
index ccc547811029b794f5f32b3a9ea02f8122b1deab..d62febd466d918bd7395875b11e3590e9f3bf9a0 100644
--- a/storage/innobase/eval/eval0eval.cc
+++ b/storage/innobase/eval/eval0eval.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1997, 2011, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -858,7 +859,7 @@ eval_predefined(
 			       dfield_get_data(que_node_get_val(arg1)));
 
 	} else if (func == PARS_SYSDATE_TOKEN) {
-		int_val = (lint) ut_time();
+		int_val = (lint) time(NULL);
 	} else {
 		eval_predefined_2(func_node);
 
diff --git a/storage/innobase/eval/eval0proc.cc b/storage/innobase/eval/eval0proc.cc
index e6f3a32cd483f458dedde09180e6b0373b1ec5ea..7adfe1e63899b6bb71d38139ba3cdb6088fe35c5 100644
--- a/storage/innobase/eval/eval0proc.cc
+++ b/storage/innobase/eval/eval0proc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fil/fil0crypt.cc b/storage/innobase/fil/fil0crypt.cc
index 296096e44d0101e9d1e8f22bf7dff8d614a6a496..43a3bd8ff296f1c41fec08de5e8072f24dece4a8 100644
--- a/storage/innobase/fil/fil0crypt.cc
+++ b/storage/innobase/fil/fil0crypt.cc
@@ -1,6 +1,6 @@
 /*****************************************************************************
 Copyright (C) 2013, 2015, Google Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation. All Rights Reserved.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
@@ -1698,19 +1698,18 @@ fil_crypt_get_page_throttle_func(
 
 	state->crypt_stat.pages_read_from_disk++;
 
-	ullint start = ut_time_us(NULL);
+	const ulonglong start = my_interval_timer();
 	block = buf_page_get_gen(space->id, zip_size, offset,
 				 RW_X_LATCH,
 				 NULL, BUF_GET_POSSIBLY_FREED,
 				 file, line, mtr);
-	ullint end = ut_time_us(NULL);
-
-	if (end < start) {
-		end = start; // safety...
-	}
+	const ulonglong end = my_interval_timer();
 
 	state->cnt_waited++;
-	state->sum_waited_us += (end - start);
+
+	if (end > start) {
+		state->sum_waited_us += (end - start) / 1000;
+	}
 
 	/* average page load */
 	ulint add_sleeptime_ms = 0;
@@ -2032,7 +2031,7 @@ fil_crypt_flush_space(
 		bool success = false;
 		ulint n_pages = 0;
 		ulint sum_pages = 0;
-		ullint start = ut_time_us(NULL);
+		const ulonglong start = my_interval_timer();
 
 		do {
 			success = buf_flush_list(ULINT_MAX, end_lsn, &n_pages);
@@ -2040,11 +2039,11 @@ fil_crypt_flush_space(
 			sum_pages += n_pages;
 		} while (!success && !space->is_stopping());
 
-		ullint end = ut_time_us(NULL);
+		const ulonglong end = my_interval_timer();
 
 		if (sum_pages && end > start) {
 			state->cnt_waited += sum_pages;
-			state->sum_waited_us += (end - start);
+			state->sum_waited_us += (end - start) / 1000;
 
 			/* statistics */
 			state->crypt_stat.pages_flushed += sum_pages;
diff --git a/storage/innobase/fil/fil0fil.cc b/storage/innobase/fil/fil0fil.cc
index 31178b67a067ab246618dcc68b0ca9685ded347c..7234a6c4102c5b9972b3b914f0999de9069cf5a7 100644
--- a/storage/innobase/fil/fil0fil.cc
+++ b/storage/innobase/fil/fil0fil.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2773,6 +2773,29 @@ fil_close_tablespace(
 	return(err);
 }
 
+/** Determine whether a table can be accessed in operations that are
+not (necessarily) protected by meta-data locks.
+(Rollback would generally be protected, but rollback of
+FOREIGN KEY CASCADE/SET NULL is not protected by meta-data locks
+but only by InnoDB table locks, which may be broken by
+lock_remove_all_on_table().)
+@param[in]	table	persistent table
+checked @return whether the table is accessible */
+UNIV_INTERN bool fil_table_accessible(const dict_table_t* table)
+{
+	if (UNIV_UNLIKELY(!table->is_readable() || table->corrupted)) {
+		return(false);
+	}
+
+	if (fil_space_t* space = fil_space_acquire(table->space)) {
+		bool accessible = !space->is_stopping();
+		fil_space_release(space);
+		return(accessible);
+	} else {
+		return(false);
+	}
+}
+
 /** Delete a tablespace and associated .ibd file.
 @param[in]	id		tablespace identifier
 @param[in]	drop_ahi	whether to drop the adaptive hash index
@@ -3193,8 +3216,13 @@ fil_rename_tablespace(
 		space, node, new_name, new_path);
 
 	if (success) {
+		DBUG_EXECUTE_IF("fil_rename_tablespace_failure_2",
+				goto skip_second_rename; );
 		success = os_file_rename(
 			innodb_file_data_key, old_path, new_path);
+		DBUG_EXECUTE_IF("fil_rename_tablespace_failure_2",
+skip_second_rename:
+				success = FALSE; );
 
 		if (!success) {
 			/* We have to revert the changes we made
diff --git a/storage/innobase/fil/fil0pagecompress.cc b/storage/innobase/fil/fil0pagecompress.cc
index 101f8fb0f31f34ac9286396181e9ed0a5f45b526..edc1fa913e73345fb56dab20d735565e4e392d92 100644
--- a/storage/innobase/fil/fil0pagecompress.cc
+++ b/storage/innobase/fil/fil0pagecompress.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fsp/fsp0fsp.cc b/storage/innobase/fsp/fsp0fsp.cc
index b20c59c4d8c1e2b1f609756a93e7bd84526879d2..13ac923eb3fc1f5c2c8ff48ffbef90a8b7ae74c3 100644
--- a/storage/innobase/fsp/fsp0fsp.cc
+++ b/storage/innobase/fsp/fsp0fsp.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fts/fts0ast.cc b/storage/innobase/fts/fts0ast.cc
index 4b36152cf62ae96a600bec5e67c59bf8c515c728..c69eabc0ff8e148103f4a274e4410b92a0118642 100644
--- a/storage/innobase/fts/fts0ast.cc
+++ b/storage/innobase/fts/fts0ast.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fts/fts0blex.cc b/storage/innobase/fts/fts0blex.cc
index 84811050e887d2aaf85a7e25e12a07d4beb44742..508069a328f53df4ccd87d9362ec5c1876acb19b 100644
--- a/storage/innobase/fts/fts0blex.cc
+++ b/storage/innobase/fts/fts0blex.cc
@@ -653,7 +653,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**
diff --git a/storage/innobase/fts/fts0blex.l b/storage/innobase/fts/fts0blex.l
index ae6e8ffaa48ba74b446e5dda0b8b1195573803a2..0d1788f89f052335ea8d9516e7ec191eea0a741b 100644
--- a/storage/innobase/fts/fts0blex.l
+++ b/storage/innobase/fts/fts0blex.l
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fts/fts0config.cc b/storage/innobase/fts/fts0config.cc
index 5b4ae5c39f7f9a8be71c5db915e5e436d7f69bf7..940c944a436cb7702f73d3ab6dc25df30f0ef6d8 100644
--- a/storage/innobase/fts/fts0config.cc
+++ b/storage/innobase/fts/fts0config.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -85,6 +86,7 @@ fts_config_get_value(
 	que_t*		graph;
 	dberr_t		error;
 	ulint		name_len = strlen(name);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -100,12 +102,14 @@ fts_config_get_value(
 	pars_info_bind_varchar_literal(info, "name", (byte*) name, name_len);
 
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $table_name"
 		" WHERE key = :name;\n"
 		"BEGIN\n"
 		""
@@ -212,6 +216,7 @@ fts_config_set_value(
 	undo_no_t	undo_no;
 	undo_no_t	n_rows_updated;
 	ulint		name_len = strlen(name);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -219,11 +224,17 @@ fts_config_set_value(
 	pars_info_bind_varchar_literal(info, "value",
 				       value->f_str, value->f_len);
 
+	const bool dict_locked = fts_table->table->fts->fts_status
+		& TABLE_DICT_LOCKED;
+
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name, dict_locked);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table, info,
-		"BEGIN UPDATE \"%s\" SET value = :value WHERE key = :name;");
+		"BEGIN UPDATE $table_name SET value = :value "
+		"WHERE key = :name;");
 
 	trx->op_info = "setting FTS config value";
 
@@ -245,10 +256,13 @@ fts_config_set_value(
 		pars_info_bind_varchar_literal(
 			info, "value", value->f_str, value->f_len);
 
+		fts_get_table_name(fts_table, table_name, dict_locked);
+		pars_info_bind_id(info, true, "table_name", table_name);
+
 		graph = fts_parse_sql(
 			fts_table, info,
 			"BEGIN\n"
-			"INSERT INTO \"%s\" VALUES(:name, :value);");
+			"INSERT INTO $table_name VALUES(:name, :value);");
 
 		trx->op_info = "inserting FTS config value";
 
@@ -465,6 +479,7 @@ fts_config_increment_value(
 	que_t*		graph = NULL;
 	ulint		name_len = strlen(name);
 	pars_info_t*	info = pars_info_create();
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	/* We set the length of value to the max bytes it can hold. This
 	information is used by the callback that reads the value.*/
@@ -479,11 +494,13 @@ fts_config_increment_value(
 		info, "my_func", fts_config_fetch_value, &value);
 
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "config_table", table_name);
 
 	graph = fts_parse_sql(
 		fts_table, info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $config_table"
 		" WHERE key = :name FOR UPDATE;\n"
 		"BEGIN\n"
 		""
diff --git a/storage/innobase/fts/fts0fts.cc b/storage/innobase/fts/fts0fts.cc
index 1ea3a8d2c6002ef3aae9463d05cf319a61a25cde..264c520bb1ee13de1db75610188f151222527d37 100644
--- a/storage/innobase/fts/fts0fts.cc
+++ b/storage/innobase/fts/fts0fts.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -77,8 +77,8 @@ UNIV_INTERN ulong	fts_min_token_size;
 
 
 // FIXME: testing
-ib_time_t elapsed_time = 0;
-ulint n_nodes = 0;
+static time_t elapsed_time;
+static ulint n_nodes;
 
 /** Error condition reported by fts_utf8_decode() */
 const ulint UTF8_ERROR = 0xFFFFFFFF;
@@ -107,11 +107,6 @@ UNIV_INTERN mysql_pfs_key_t	fts_doc_id_mutex_key;
 UNIV_INTERN mysql_pfs_key_t	fts_pll_tokenize_mutex_key;
 #endif /* UNIV_PFS_MUTEX */
 
-/** variable to record innodb_fts_internal_tbl_name for information
-schema table INNODB_FTS_INSERTED etc. */
-UNIV_INTERN char* fts_internal_tbl_name		= NULL;
-UNIV_INTERN char* fts_internal_tbl_name2	= NULL;
-
 /** InnoDB default stopword list:
 There are different versions of stopwords, the stop words listed
 below comes from "Google Stopword" list. Reference:
@@ -167,38 +162,39 @@ struct fts_aux_table_t {
 	char*		name;		/*!< Name of the table */
 };
 
-/** SQL statements for creating the ancillary common FTS tables. */
+/** SQL statements for creating the ancillary common FTS tables.
+The table name here shall be consistent with fts_common_tables. */
 static const char* fts_create_common_tables_sql = {
 	"BEGIN\n"
 	""
-	"CREATE TABLE \"%s_DELETED\" (\n"
+	"CREATE TABLE $DELETED (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_DELETED\"(doc_id);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $DELETED (doc_id);\n"
 	""
-	"CREATE TABLE \"%s_DELETED_CACHE\" (\n"
+	"CREATE TABLE $DELETED_CACHE (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_DELETED_CACHE\"(doc_id);\n"
+		"ON $DELETED_CACHE(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_BEING_DELETED\" (\n"
+	"CREATE TABLE $BEING_DELETED (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_BEING_DELETED\"(doc_id);\n"
+		"ON $BEING_DELETED(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_BEING_DELETED_CACHE\" (\n"
+	"CREATE TABLE $BEING_DELETED_CACHE (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_BEING_DELETED_CACHE\"(doc_id);\n"
+		"ON $BEING_DELETED_CACHE(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_CONFIG\" (\n"
+	"CREATE TABLE $CONFIG (\n"
 	"  key CHAR(50),\n"
 	"  value CHAR(200) NOT NULL\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_CONFIG\"(key);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $CONFIG(key);\n"
 };
 
 #ifdef FTS_DOC_STATS_DEBUG
@@ -207,11 +203,11 @@ mainly designed for the statistics work in the future */
 static const char* fts_create_index_tables_sql = {
 	"BEGIN\n"
 	""
-	"CREATE TABLE \"%s_DOC_ID\" (\n"
+	"CREATE TABLE $doc_id_table (\n"
 	"   doc_id BIGINT UNSIGNED,\n"
 	"   word_count INTEGER UNSIGNED NOT NULL\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_DOC_ID\"(doc_id);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $doc_id_table(doc_id);\n"
 };
 #endif
 
@@ -220,11 +216,11 @@ static const char* fts_create_index_sql = {
 	"BEGIN\n"
 	""
 	"CREATE UNIQUE CLUSTERED INDEX FTS_INDEX_TABLE_IND "
-		"ON \"%s\"(word, first_doc_id);\n"
+		"ON $table (word, first_doc_id);\n"
 };
 
 /** FTS auxiliary table suffixes that are common to all FT indexes. */
-static const char* fts_common_tables[] = {
+const char* fts_common_tables[] = {
 	"BEING_DELETED",
 	"BEING_DELETED_CACHE",
 	"CONFIG",
@@ -248,19 +244,19 @@ const  fts_index_selector_t fts_index_selector[] = {
 static const char* fts_config_table_insert_values_sql =
 	"BEGIN\n"
 	"\n"
-	"INSERT INTO \"%s\" VALUES('"
+	"INSERT INTO $config_table VALUES('"
 		FTS_MAX_CACHE_SIZE_IN_MB "', '256');\n"
 	""
-	"INSERT INTO \"%s\" VALUES('"
+	"INSERT INTO $config_table VALUES('"
 		FTS_OPTIMIZE_LIMIT_IN_SECS  "', '180');\n"
 	""
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_SYNCED_DOC_ID "', '0');\n"
 	""
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_TOTAL_DELETED_COUNT "', '0');\n"
 	"" /* Note: 0 == FTS_TABLE_STATE_RUNNING */
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_TABLE_STATE "', '0');\n";
 
 /** Run SYNC on the table, i.e., write out data from the cache to the
@@ -334,7 +330,6 @@ dberr_t
 fts_update_sync_doc_id(
 /*===================*/
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id,		/*!< in: last document id */
 	trx_t*			trx)		/*!< in: update trx, or NULL */
 	MY_ATTRIBUTE((nonnull(1)));
@@ -1586,19 +1581,17 @@ fts_rename_aux_tables(
 
 	FTS_INIT_FTS_TABLE(&fts_table, NULL, FTS_COMMON_TABLE, table);
 
+	dberr_t err = DB_SUCCESS;
+	char old_table_name[MAX_FULL_NAME_LEN];
+
 	/* Rename common auxiliary tables */
 	for (i = 0; fts_common_tables[i] != NULL; ++i) {
-		char*	old_table_name;
-		dberr_t	err = DB_SUCCESS;
-
 		fts_table.suffix = fts_common_tables[i];
 
-		old_table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, old_table_name, true);
 
 		err = fts_rename_one_aux_table(new_name, old_table_name, trx);
 
-		mem_free(old_table_name);
-
 		if (err != DB_SUCCESS) {
 			return(err);
 		}
@@ -1617,12 +1610,8 @@ fts_rename_aux_tables(
 		FTS_INIT_INDEX_TABLE(&fts_table, NULL, FTS_INDEX_TABLE, index);
 
 		for (ulint j = 0; fts_index_selector[j].value; ++j) {
-			dberr_t	err;
-			char*	old_table_name;
-
 			fts_table.suffix = fts_get_suffix(j);
-
-			old_table_name = fts_get_table_name(&fts_table);
+			fts_get_table_name(&fts_table, old_table_name, true);
 
 			err = fts_rename_one_aux_table(
 				new_name, old_table_name, trx);
@@ -1631,8 +1620,6 @@ fts_rename_aux_tables(
 					err = DB_DEADLOCK;
 					fts_sql_rollback(trx););
 
-			mem_free(old_table_name);
-
 			if (err != DB_SUCCESS) {
 				return(err);
 			}
@@ -1660,11 +1647,11 @@ fts_drop_common_tables(
 
 	for (i = 0; fts_common_tables[i] != NULL; ++i) {
 		dberr_t	err;
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table->suffix = fts_common_tables[i];
 
-		table_name = fts_get_table_name(fts_table);
+		fts_get_table_name(fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1672,8 +1659,6 @@ fts_drop_common_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 
 	return(error);
@@ -1699,11 +1684,11 @@ fts_drop_index_split_tables(
 
 	for (i = 0; fts_index_selector[i].value; ++i) {
 		dberr_t	err;
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table.suffix = fts_get_suffix(i);
 
-		table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1711,8 +1696,6 @@ fts_drop_index_split_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 
 	return(error);
@@ -1749,11 +1732,11 @@ fts_drop_index_tables(
 	FTS_INIT_INDEX_TABLE(&fts_table, NULL, FTS_INDEX_TABLE, index);
 
 	for (ulint i = 0; index_tables[i] != NULL; ++i) {
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table.suffix = index_tables[i];
 
-		table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1761,8 +1744,6 @@ fts_drop_index_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 #endif /* FTS_DOC_STATS_DEBUG */
 
@@ -1831,26 +1812,6 @@ fts_drop_tables(
 	return(error);
 }
 
-/*********************************************************************//**
-Prepare the SQL, so that all '%s' are replaced by the common prefix.
-@return sql string, use mem_free() to free the memory */
-static
-char*
-fts_prepare_sql(
-/*============*/
-	fts_table_t*	fts_table,	/*!< in: table name info */
-	const char*	my_template)	/*!< in: sql template */
-{
-	char*		sql;
-	char*		name_prefix;
-
-	name_prefix = fts_get_table_name_prefix(fts_table);
-	sql = ut_strreplace(my_template, "%s", name_prefix);
-	mem_free(name_prefix);
-
-	return(sql);
-}
-
 /*********************************************************************//**
 Creates the common ancillary tables needed for supporting an FTS index
 on the given table. row_mysql_lock_data_dictionary must have been called
@@ -1865,12 +1826,15 @@ fts_create_common_tables(
 	const char*	name,		/*!< in: table name normalized.*/
 	bool		skip_doc_id_index)/*!< in: Skip index on doc id */
 {
-	char*		sql;
 	dberr_t		error;
 	que_t*		graph;
 	fts_table_t	fts_table;
 	mem_heap_t*	heap = mem_heap_create(1024);
 	pars_info_t*	info;
+	char		fts_name[MAX_FULL_NAME_LEN];
+	char		full_name[sizeof(fts_common_tables) / sizeof(char*)]
+				[MAX_FULL_NAME_LEN];
+	ulint		i;
 
 	FTS_INIT_FTS_TABLE(&fts_table, NULL, FTS_COMMON_TABLE, table);
 
@@ -1882,9 +1846,19 @@ fts_create_common_tables(
 	}
 
 	/* Create the FTS tables that are common to an FTS index. */
-	sql = fts_prepare_sql(&fts_table, fts_create_common_tables_sql);
-	graph = fts_parse_sql_no_dict_lock(NULL, NULL, sql);
-	mem_free(sql);
+	info = pars_info_create();
+
+	for (i = 0; fts_common_tables[i] != NULL; ++i) {
+
+		fts_table.suffix = fts_common_tables[i];
+		fts_get_table_name(&fts_table, full_name[i], true);
+
+		pars_info_bind_id(info, true,
+				  fts_common_tables[i], full_name[i]);
+	}
+
+	graph = fts_parse_sql_no_dict_lock(NULL, info,
+					   fts_create_common_tables_sql);
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1896,9 +1870,14 @@ fts_create_common_tables(
 	}
 
 	/* Write the default settings to the config table. */
+	info = pars_info_create();
+
 	fts_table.suffix = "CONFIG";
+	fts_get_table_name(&fts_table, fts_name, true);
+	pars_info_bind_id(info, true, "config_table", fts_name);
+
 	graph = fts_parse_sql_no_dict_lock(
-		&fts_table, NULL, fts_config_table_insert_values_sql);
+		&fts_table, info, fts_config_table_insert_values_sql);
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1966,13 +1945,15 @@ fts_create_one_index_table(
 {
 	dict_field_t*		field;
 	dict_table_t*		new_table = NULL;
-	char*			table_name = fts_get_table_name(fts_table);
+	char			table_name[MAX_FULL_NAME_LEN];
 	dberr_t			error;
 	CHARSET_INFO*		charset;
 	ulint			flags2 = 0;
 
 	ut_ad(index->type & DICT_FTS);
 
+	fts_get_table_name(fts_table, table_name, true);
+
 	if (srv_file_per_table) {
 		flags2 = DICT_TF2_USE_TABLESPACE;
 	}
@@ -2016,8 +1997,6 @@ fts_create_one_index_table(
 			"Fail to create FTS index table %s", table_name);
 	}
 
-	mem_free(table_name);
-
 	return(new_table);
 }
 
@@ -2040,23 +2019,27 @@ fts_create_index_tables_low(
 	que_t*		graph;
 	fts_table_t	fts_table;
 	dberr_t		error = DB_SUCCESS;
+	pars_info_t*	info;
 	mem_heap_t*	heap = mem_heap_create(1024);
+	char		fts_name[MAX_FULL_NAME_LEN];
 
 	fts_table.type = FTS_INDEX_TABLE;
 	fts_table.index_id = index->id;
 	fts_table.table_id = table_id;
-	fts_table.parent = table_name;
 	fts_table.table = index->table;
 
 #ifdef FTS_DOC_STATS_DEBUG
-	char*		sql;
-
 	/* Create the FTS auxiliary tables that are specific
 	to an FTS index. */
-	sql = fts_prepare_sql(&fts_table, fts_create_index_tables_sql);
+	info = pars_info_create();
+
+	fts_table.suffix = "DOC_ID";
+	fts_get_table_name(&fts_table, fts_name, true);
 
-	graph = fts_parse_sql_no_dict_lock(NULL, NULL, sql);
-	mem_free(sql);
+	pars_info_bind_id(info, true, "doc_id_table", fts_name);
+
+	graph = fts_parse_sql_no_dict_lock(NULL, info,
+					   fts_create_index_tables_sql);
 
 	error = fts_eval_sql(trx, graph);
 	que_graph_free(graph);
@@ -2065,6 +2048,8 @@ fts_create_index_tables_low(
 	for (i = 0; fts_index_selector[i].value && error == DB_SUCCESS; ++i) {
 		dict_table_t*	new_table;
 
+		info = pars_info_create();
+
 		/* Create the FTS auxiliary tables that are specific
 		to an FTS index. We need to preserve the table_id %s
 		which fts_parse_sql_no_dict_lock() will fill in for us. */
@@ -2078,8 +2063,12 @@ fts_create_index_tables_low(
 			break;
 		}
 
+		fts_get_table_name(&fts_table, fts_name, true);
+
+		pars_info_bind_id(info, true, "table", fts_name);
+
 		graph = fts_parse_sql_no_dict_lock(
-			&fts_table, NULL, fts_create_index_sql);
+			&fts_table, info, fts_create_index_sql);
 
 		error = fts_eval_sql(trx, graph);
 		que_graph_free(graph);
@@ -2632,7 +2621,6 @@ fts_update_next_doc_id(
 /*===================*/
 	trx_t*			trx,		/*!< in/out: transaction */
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id)		/*!< in: DOC ID to set */
 {
 	table->fts->cache->synced_doc_id = doc_id;
@@ -2641,7 +2629,7 @@ fts_update_next_doc_id(
 	table->fts->cache->first_doc_id = table->fts->cache->next_doc_id;
 
 	fts_update_sync_doc_id(
-		table, table_name, table->fts->cache->synced_doc_id, trx);
+		table, table->fts->cache->synced_doc_id, trx);
 
 }
 
@@ -2704,6 +2692,7 @@ fts_cmp_set_sync_doc_id(
 	fts_table_t	fts_table;
 	que_t*		graph = NULL;
 	fts_cache_t*	cache = table->fts->cache;
+	char		table_name[MAX_FULL_NAME_LEN];
 retry:
 	ut_a(table->fts->doc_col != ULINT_UNDEFINED);
 
@@ -2712,8 +2701,6 @@ fts_cmp_set_sync_doc_id(
 	fts_table.type = FTS_COMMON_TABLE;
 	fts_table.table = table;
 
-	fts_table.parent = table->name;
-
 	trx = trx_allocate_for_background();
 
 	trx->op_info = "update the next FTS document id";
@@ -2723,10 +2710,13 @@ fts_cmp_set_sync_doc_id(
 	pars_info_bind_function(
 		info, "my_func", fts_fetch_store_doc_id, doc_id);
 
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "config_table", table_name);
+
 	graph = fts_parse_sql(
 		&fts_table, info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $config_table"
 		" WHERE key = 'synced_doc_id' FOR UPDATE;\n"
 		"BEGIN\n"
 		""
@@ -2770,7 +2760,7 @@ fts_cmp_set_sync_doc_id(
 
 	if (doc_id_cmp > *doc_id) {
 		error = fts_update_sync_doc_id(
-			table, table->name, cache->synced_doc_id, trx);
+			table, cache->synced_doc_id, trx);
 	}
 
 	*doc_id = cache->next_doc_id;
@@ -2808,7 +2798,6 @@ dberr_t
 fts_update_sync_doc_id(
 /*===================*/
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id,		/*!< in: last document id */
 	trx_t*			trx)		/*!< in: update trx, or NULL */
 {
@@ -2820,16 +2809,12 @@ fts_update_sync_doc_id(
 	dberr_t		error;
 	ibool		local_trx = FALSE;
 	fts_cache_t*	cache = table->fts->cache;
+	char		fts_name[MAX_FULL_NAME_LEN];
 
 	fts_table.suffix = "CONFIG";
 	fts_table.table_id = table->id;
 	fts_table.type = FTS_COMMON_TABLE;
 	fts_table.table = table;
-	if (table_name) {
-		fts_table.parent = table_name;
-	} else {
-		fts_table.parent = table->name;
-	}
 
 	if (!trx) {
 		trx = trx_allocate_for_background();
@@ -2845,10 +2830,14 @@ fts_update_sync_doc_id(
 
 	pars_info_bind_varchar_literal(info, "doc_id", id, id_len);
 
+	fts_get_table_name(&fts_table, fts_name,
+			   table->fts->fts_status & TABLE_DICT_LOCKED);
+	pars_info_bind_id(info, true, "table_name", fts_name);
+
 	graph = fts_parse_sql(
 		&fts_table, info,
 		"BEGIN "
-		"UPDATE \"%s\" SET value = :doc_id"
+		"UPDATE $table_name SET value = :doc_id"
 		" WHERE key = 'synced_doc_id';");
 
 	error = fts_eval_sql(trx, graph);
@@ -2895,22 +2884,6 @@ fts_doc_ids_create(void)
 	return(fts_doc_ids);
 }
 
-/*********************************************************************//**
-Free a fts_doc_ids_t. */
-
-void
-fts_doc_ids_free(
-/*=============*/
-	fts_doc_ids_t*	fts_doc_ids)
-{
-	mem_heap_t*	heap = static_cast(
-		fts_doc_ids->self_heap->arg);
-
-	memset(fts_doc_ids, 0, sizeof(*fts_doc_ids));
-
-	mem_heap_free(heap);
-}
-
 /*********************************************************************//**
 Do commit-phase steps necessary for the insertion of a new row. */
 void
@@ -2995,6 +2968,7 @@ fts_delete(
 
 	/* Note the deleted document for OPTIMIZE to purge. */
 	if (error == DB_SUCCESS) {
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		trx->op_info = "adding doc id to FTS DELETED";
 
@@ -3002,10 +2976,13 @@ fts_delete(
 
 		fts_table.suffix = "DELETED";
 
+		fts_get_table_name(&fts_table, table_name);
+		pars_info_bind_id(info, true, "deleted", table_name);
+
 		graph = fts_parse_sql(
 			&fts_table,
 			info,
-			"BEGIN INSERT INTO \"%s\" VALUES (:doc_id);");
+			"BEGIN INSERT INTO $deleted VALUES (:doc_id);");
 
 		error = fts_eval_sql(trx, graph);
 
@@ -3821,14 +3798,18 @@ fts_write_node(
 	pars_info_t*	info;
 	dberr_t		error;
 	ib_uint32_t	doc_count;
-	ib_time_t	start_time;
+	time_t		start_time;
 	doc_id_t	last_doc_id;
 	doc_id_t	first_doc_id;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
 		info = pars_info_create();
+
+		fts_get_table_name(fts_table, table_name);
+		pars_info_bind_id(info, true, "index_table_name", table_name);
 	}
 
 	pars_info_bind_varchar_literal(info, "token", word->f_str, word->f_len);
@@ -3854,18 +3835,19 @@ fts_write_node(
 		DATA_BLOB, DATA_BINARY_TYPE);
 
 	if (!*graph) {
+
 		*graph = fts_parse_sql(
 			fts_table,
 			info,
 			"BEGIN\n"
-			"INSERT INTO \"%s\" VALUES "
+			"INSERT INTO $index_table_name VALUES "
 			"(:token, :first_doc_id,"
 			" :last_doc_id, :doc_count, :ilist);");
 	}
 
-	start_time = ut_time();
+	start_time = time(NULL);
 	error = fts_eval_sql(trx, *graph);
-	elapsed_time += ut_time() - start_time;
+	elapsed_time += time(NULL) - start_time;
 	++n_nodes;
 
 	return(error);
@@ -3885,6 +3867,7 @@ fts_sync_add_deleted_cache(
 	pars_info_t*	info;
 	que_t*		graph;
 	fts_table_t	fts_table;
+	char		table_name[MAX_FULL_NAME_LEN];
 	doc_id_t	dummy = 0;
 	dberr_t		error = DB_SUCCESS;
 	ulint		n_elems = ib_vector_size(doc_ids);
@@ -3900,10 +3883,13 @@ fts_sync_add_deleted_cache(
 	FTS_INIT_FTS_TABLE(
 		&fts_table, "DELETED_CACHE", FTS_COMMON_TABLE, sync->table);
 
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		&fts_table,
 		info,
-		"BEGIN INSERT INTO \"%s\" VALUES (:doc_id);");
+		"BEGIN INSERT INTO $table_name VALUES (:doc_id);");
 
 	for (i = 0; i < n_elems && error == DB_SUCCESS; ++i) {
 		fts_update_t*	update;
@@ -4080,6 +4066,7 @@ fts_sync_write_doc_stat(
 	doc_id_t	doc_id;
 	dberr_t		error = DB_SUCCESS;
 	ib_uint32_t	word_count;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	if (*graph) {
 		info = (*graph)->info;
@@ -4102,10 +4089,15 @@ fts_sync_write_doc_stat(
 		FTS_INIT_INDEX_TABLE(
 			&fts_table, "DOC_ID", FTS_INDEX_TABLE, index);
 
+		fts_get_table_name(&fts_table, table_name);
+
+		pars_info_bind_id(info, true, "doc_id_table", table_name);
+
 		*graph = fts_parse_sql(
 			&fts_table,
 			info,
-			"BEGIN INSERT INTO \"%s\" VALUES (:doc_id, :count);");
+			"BEGIN "
+			"INSERT INTO $doc_id_table VALUES (:doc_id, :count);");
 	}
 
 	for (;;) {
@@ -4227,6 +4219,7 @@ fts_is_word_in_index(
 {
 	pars_info_t*	info;
 	dberr_t		error;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "looking up word in FTS index";
 
@@ -4236,6 +4229,8 @@ fts_is_word_in_index(
 		info = pars_info_create();
 	}
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 	pars_info_bind_function(info, "my_func", fts_lookup_word, found);
 	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
 
@@ -4246,7 +4241,7 @@ fts_is_word_in_index(
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT doc_count\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word = :word "
 			" ORDER BY first_doc_id;\n"
 			"BEGIN\n"
@@ -4303,7 +4298,7 @@ fts_sync_begin(
 	n_nodes = 0;
 	elapsed_time = 0;
 
-	sync->start_time = ut_time();
+	sync->start_time = time(NULL);
 
 	sync->trx = trx_allocate_for_background();
 
@@ -4462,7 +4457,7 @@ fts_sync_commit(
 			"SYNC for table %s: SYNC time : %lu secs: "
 			"elapsed %lf ins/sec",
 			sync->table->name,
-			(ulong) (ut_time() - sync->start_time),
+			(ulong) (time(NULL) - sync->start_time),
 			(double) n_nodes/ (double) elapsed_time);
 	}
 
@@ -4995,6 +4990,7 @@ fts_get_rows_count(
 	que_t*		graph;
 	dberr_t		error;
 	ulint		count = 0;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx = trx_allocate_for_background();
 
@@ -5004,13 +5000,16 @@ fts_get_rows_count(
 
 	pars_info_bind_function(info, "my_func", fts_read_ulint, &count);
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT COUNT(*) "
-		" FROM \"%s\";\n"
+		" FROM $table_name;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -6219,7 +6218,7 @@ fts_rename_one_aux_table_to_hex_format(
 {
 	const char*     ptr;
 	fts_table_t	fts_table;
-	char*		new_name;
+	char		new_name[MAX_FULL_NAME_LEN];
 	dberr_t		error;
 
 	ptr = strchr(aux_table->name, '/');
@@ -6260,12 +6259,11 @@ fts_rename_one_aux_table_to_hex_format(
 
 	ut_a(fts_table.suffix != NULL);
 
-	fts_table.parent = parent_table->name;
 	fts_table.table_id = aux_table->parent_id;
 	fts_table.index_id = aux_table->index_id;
 	fts_table.table = parent_table;
 
-	new_name = fts_get_table_name(&fts_table);
+	fts_get_table_name(&fts_table, new_name);
 	ut_ad(strcmp(new_name, aux_table->name) != 0);
 
 	if (trx_get_dict_operation(trx) == TRX_DICT_OP_NONE) {
@@ -6286,8 +6284,6 @@ fts_rename_one_aux_table_to_hex_format(
 			aux_table->name, new_name);
 	}
 
-	mem_free(new_name);
-
 	return (error);
 }
 
diff --git a/storage/innobase/fts/fts0opt.cc b/storage/innobase/fts/fts0opt.cc
index 28e704eb9a5851d8deafbb6698af5e28aa501678..2f8739d3d2cd908322a64a4d0bef39f6c9a896d9 100644
--- a/storage/innobase/fts/fts0opt.cc
+++ b/storage/innobase/fts/fts0opt.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -43,6 +43,9 @@ Completed 2011/7/10 Sunny and Jimmy Yang
 /** The FTS optimize thread's work queue. */
 static ib_wqueue_t* fts_optimize_wq;
 
+/** The FTS vector to store fts_slot_t */
+static ib_vector_t*  fts_slots;
+
 /** Time to wait for a message. */
 static const ulint FTS_QUEUE_WAIT_IN_USECS = 5000000;
 
@@ -56,16 +59,7 @@ static bool fts_opt_start_shutdown = false;
 static const ulint FTS_WORD_NODES_INIT_SIZE = 64;
 
 /** Last time we did check whether system need a sync */
-static ib_time_t	last_check_sync_time;
-
-/** State of a table within the optimization sub system. */
-enum fts_state_t {
-	FTS_STATE_LOADED,
-	FTS_STATE_RUNNING,
-	FTS_STATE_SUSPENDED,
-	FTS_STATE_DONE,
-	FTS_STATE_EMPTY
-};
+static time_t	last_check_sync_time;
 
 /** FTS optimize thread message types. */
 enum fts_msg_type_t {
@@ -175,11 +169,11 @@ struct fts_encode_t {
 /** We use this information to determine when to start the optimize
 cycle for a table. */
 struct fts_slot_t {
-	dict_table_t*	table;		/*!< Table to optimize */
-
-	table_id_t	table_id;	/*!< Table id */
+	/** table identifier, or 0 if the slot is empty */
+	table_id_t	table_id;
 
-	fts_state_t	state;		/*!< State of this slot */
+	/** whether this slot is being processed */
+	bool		running;
 
 	ulint		added;		/*!< Number of doc ids added since the
 					last time this table was optimized */
@@ -187,12 +181,11 @@ struct fts_slot_t {
 	ulint		deleted;	/*!< Number of doc ids deleted since the
 					last time this table was optimized */
 
-	ib_time_t	last_run;	/*!< Time last run completed */
+	/** time(NULL) of completing fts_optimize_table_bk() */
+	time_t		last_run;
 
-	ib_time_t	completed;	/*!< Optimize finish time */
-
-	ib_time_t	interval_time;	/*!< Minimum time to wait before
-					optimizing the table again. */
+	/** time(NULL) of latest successful fts_optimize_table() */
+	time_t		completed;
 };
 
 /** A table remove message for the FTS optimize thread. */
@@ -229,30 +222,33 @@ UNIV_INTERN char	fts_enable_diag_print;
 /** ZLib compressed block size.*/
 static ulint FTS_ZIP_BLOCK_SIZE	= 1024;
 
-/** The amount of time optimizing in a single pass, in milliseconds. */
-static ib_time_t fts_optimize_time_limit = 0;
+/** The amount of time optimizing in a single pass, in seconds. */
+static ulint fts_optimize_time_limit;
+
+/** It's defined in fts0fts.cc  */
+extern const char* fts_common_tables[];
 
 /** SQL Statement for changing state of rows to be deleted from FTS Index. */
 static	const char* fts_init_delete_sql =
 	"BEGIN\n"
 	"\n"
-	"INSERT INTO \"%s_BEING_DELETED\"\n"
-		"SELECT doc_id FROM \"%s_DELETED\";\n"
+	"INSERT INTO $BEING_DELETED\n"
+		"SELECT doc_id FROM $DELETED;\n"
 	"\n"
-	"INSERT INTO \"%s_BEING_DELETED_CACHE\"\n"
-		"SELECT doc_id FROM \"%s_DELETED_CACHE\";\n";
+	"INSERT INTO $BEING_DELETED_CACHE\n"
+		"SELECT doc_id FROM $DELETED_CACHE;\n";
 
 static const char* fts_delete_doc_ids_sql =
 	"BEGIN\n"
 	"\n"
-	"DELETE FROM \"%s_DELETED\" WHERE doc_id = :doc_id1;\n"
-	"DELETE FROM \"%s_DELETED_CACHE\" WHERE doc_id = :doc_id2;\n";
+	"DELETE FROM $DELETED WHERE doc_id = :doc_id1;\n"
+	"DELETE FROM $DELETED_CACHE WHERE doc_id = :doc_id2;\n";
 
 static const char* fts_end_delete_sql =
 	"BEGIN\n"
 	"\n"
-	"DELETE FROM \"%s_BEING_DELETED\";\n"
-	"DELETE FROM \"%s_BEING_DELETED_CACHE\";\n";
+	"DELETE FROM $BEING_DELETED;\n"
+	"DELETE FROM $BEING_DELETED_CACHE;\n";
 
 /**********************************************************************//**
 Initialize fts_zip_t. */
@@ -483,21 +479,17 @@ fts_index_fetch_nodes(
 {
 	pars_info_t*	info;
 	dberr_t		error;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS index nodes";
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
-		info = pars_info_create();
-	}
-
-	pars_info_bind_function(info, "my_func", fetch->read_record, fetch);
-	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
-
-	if (!*graph) {
 		ulint	selected;
 
+		info = pars_info_create();
+
 		ut_a(fts_table->type == FTS_INDEX_TABLE);
 
 		selected = fts_select_index(fts_table->charset,
@@ -505,6 +497,16 @@ fts_index_fetch_nodes(
 
 		fts_table->suffix = fts_get_suffix(selected);
 
+		fts_get_table_name(fts_table, table_name);
+
+		pars_info_bind_id(info, true, "table_name", table_name);
+	}
+
+	pars_info_bind_function(info, "my_func", fetch->read_record, fetch);
+	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
+
+	if (!*graph) {
+
 		*graph = fts_parse_sql(
 			fts_table,
 			info,
@@ -512,7 +514,7 @@ fts_index_fetch_nodes(
 			"DECLARE CURSOR c IS"
 			" SELECT word, doc_count, first_doc_id, last_doc_id, "
 				"ilist\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word LIKE :word\n"
 			" ORDER BY first_doc_id;\n"
 			"BEGIN\n"
@@ -812,6 +814,8 @@ fts_index_fetch_words(
 	     fts_index_selector[selected].value;
 	     selected++) {
 
+		char	table_name[MAX_FULL_NAME_LEN];
+
 		optim->fts_index_table.suffix = fts_get_suffix(selected);
 
 		/* We've search all indexes. */
@@ -827,13 +831,16 @@ fts_index_fetch_words(
 		pars_info_bind_varchar_literal(
 			info, "word", word->f_str, word->f_len);
 
+		fts_get_table_name(&optim->fts_index_table, table_name);
+		pars_info_bind_id(info, true, "table_name", table_name);
+
 		graph = fts_parse_sql(
 			&optim->fts_index_table,
 			info,
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT word\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word > :word\n"
 			" ORDER BY word;\n"
 			"BEGIN\n"
@@ -975,6 +982,7 @@ fts_table_fetch_doc_ids(
 	que_t*		graph;
 	pars_info_t*	info = pars_info_create();
 	ibool		alloc_bk_trx = FALSE;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	ut_a(fts_table->suffix != NULL);
 	ut_a(fts_table->type == FTS_COMMON_TABLE);
@@ -988,12 +996,15 @@ fts_table_fetch_doc_ids(
 
 	pars_info_bind_function(info, "my_func", fts_fetch_doc_ids, doc_ids);
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
-		" SELECT doc_id FROM \"%s\";\n"
+		" SELECT doc_id FROM $table_name;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -1446,7 +1457,7 @@ fts_optimize_write_word(
 	que_t*		graph;
 	ulint		selected;
 	dberr_t		error = DB_SUCCESS;
-	char*		table_name = fts_get_table_name(fts_table);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -1464,11 +1475,13 @@ fts_optimize_write_word(
 				    word->f_str, word->f_len);
 
 	fts_table->suffix = fts_get_suffix(selected);
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table,
 		info,
-		"BEGIN DELETE FROM \"%s\" WHERE word = :word;");
+		"BEGIN DELETE FROM $table_name WHERE word = :word;");
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1482,8 +1495,6 @@ fts_optimize_write_word(
 	fts_que_graph_free(graph);
 	graph = NULL;
 
-	mem_free(table_name);
-
 	/* Even if the operation needs to be rolled back and redone,
 	we iterate over the nodes in order to free the ilist. */
 	for (i = 0; i < ib_vector_size(nodes); ++i) {
@@ -1541,7 +1552,7 @@ fts_optimize_compact(
 /*=================*/
 	fts_optimize_t*	optim,		/*!< in: optimize state data */
 	dict_index_t*	index,		/*!< in: current FTS being optimized */
-	ib_time_t	start_time)	/*!< in: optimize start time */
+	time_t		start_time)	/*!< in: optimize start time */
 {
 	ulint		i;
 	dberr_t		error = DB_SUCCESS;
@@ -1574,8 +1585,11 @@ fts_optimize_compact(
 		/* Free the word that was optimized. */
 		fts_word_free(word);
 
+		ulint interval = ulint(time(NULL) - start_time);
+
 		if (fts_optimize_time_limit > 0
-		    && (ut_time() - start_time) > fts_optimize_time_limit) {
+		    && (lint(interval) < 0
+			|| interval > fts_optimize_time_limit)) {
 
 			optim->done = TRUE;
 		}
@@ -1609,12 +1623,10 @@ fts_optimize_create(
 
 	optim->trx = trx_allocate_for_background();
 
-	optim->fts_common_table.parent = table->name;
 	optim->fts_common_table.table_id = table->id;
 	optim->fts_common_table.type = FTS_COMMON_TABLE;
 	optim->fts_common_table.table = table;
 
-	optim->fts_index_table.parent = table->name;
 	optim->fts_index_table.table_id = table->id;
 	optim->fts_index_table.type = FTS_INDEX_TABLE;
 	optim->fts_index_table.table = table;
@@ -1636,7 +1648,7 @@ fts_optimize_get_index_start_time(
 /*==============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t*	start_time)		/*!< out: time in secs */
+	time_t*		start_time)		/*!< out: time in secs */
 {
 	return(fts_config_get_index_ulint(
 		       trx, index, FTS_OPTIMIZE_START_TIME,
@@ -1652,7 +1664,7 @@ fts_optimize_set_index_start_time(
 /*==============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t	start_time)		/*!< in: start time */
+	time_t		start_time)		/*!< in: start time */
 {
 	return(fts_config_set_index_ulint(
 		       trx, index, FTS_OPTIMIZE_START_TIME,
@@ -1668,7 +1680,7 @@ fts_optimize_get_index_end_time(
 /*============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t*	end_time)		/*!< out: time in secs */
+	time_t*		end_time)		/*!< out: time in secs */
 {
 	return(fts_config_get_index_ulint(
 		       trx, index, FTS_OPTIMIZE_END_TIME, (ulint*) end_time));
@@ -1683,7 +1695,7 @@ fts_optimize_set_index_end_time(
 /*============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t	end_time)		/*!< in: end time */
+	time_t		end_time)		/*!< in: end time */
 {
 	return(fts_config_set_index_ulint(
 		       trx, index, FTS_OPTIMIZE_END_TIME, (ulint) end_time));
@@ -1735,7 +1747,7 @@ fts_optimize_free(
 	fts_doc_ids_free(optim->to_delete);
 	fts_optimize_graph_free(&optim->graph);
 
-	mem_free(optim->name_prefix);
+	ut_free(optim->name_prefix);
 
 	/* This will free the heap from which optim itself was allocated. */
 	mem_heap_free(heap);
@@ -1745,22 +1757,23 @@ fts_optimize_free(
 Get the max time optimize should run in millisecs.
 @return max optimize time limit in millisecs. */
 static
-ib_time_t
+ulint
 fts_optimize_get_time_limit(
 /*========================*/
 	trx_t*		trx,			/*!< in: transaction */
 	fts_table_t*	fts_table)		/*!< in: aux table */
 {
-	ib_time_t	time_limit = 0;
+	ulint	time_limit = 0;
 
 	fts_config_get_ulint(
 		trx, fts_table,
-		FTS_OPTIMIZE_LIMIT_IN_SECS, (ulint*) &time_limit);
+		FTS_OPTIMIZE_LIMIT_IN_SECS, &time_limit);
 
+	/* FIXME: This is returning milliseconds, while the variable
+	is being stored and interpreted as seconds! */
 	return(time_limit * 1000);
 }
 
-
 /**********************************************************************//**
 Run OPTIMIZE on the given table. Note: this can take a very long time
 (hours). */
@@ -1773,7 +1786,6 @@ fts_optimize_words(
 	fts_string_t*	word)	/*!< in: the starting word to optimize */
 {
 	fts_fetch_t	fetch;
-	ib_time_t	start_time;
 	que_t*		graph = NULL;
 	CHARSET_INFO*	charset = optim->fts_index_table.charset;
 
@@ -1783,14 +1795,12 @@ fts_optimize_words(
 	fts_optimize_time_limit = fts_optimize_get_time_limit(
 		optim->trx, &optim->fts_common_table);
 
-	start_time = ut_time();
+	const time_t start_time = time(NULL);
 
 	/* Setup the callback to use for fetching the word ilist etc. */
 	fetch.read_arg = optim->words;
 	fetch.read_record = fts_optimize_index_fetch_node;
 
-	fprintf(stderr, "%.*s\n", (int) word->f_len, word->f_str);
-
 	while(!optim->done) {
 		dberr_t	error;
 		trx_t*	trx = optim->trx;
@@ -1908,7 +1918,7 @@ fts_optimize_index_completed(
 	dberr_t		error;
 	byte		buf[sizeof(ulint)];
 #ifdef FTS_OPTIMIZE_DEBUG
-	ib_time_t	end_time = ut_time();
+	time_t		end_time = time(NULL);
 
 	error = fts_optimize_set_index_end_time(optim->trx, index, end_time);
 #endif
@@ -2075,9 +2085,10 @@ fts_optimize_purge_deleted_doc_ids(
 	pars_info_t*	info;
 	que_t*		graph;
 	fts_update_t*	update;
-	char*		sql_str;
 	doc_id_t	write_doc_id;
 	dberr_t		error = DB_SUCCESS;
+	char		deleted[MAX_FULL_NAME_LEN];
+	char		deleted_cache[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -2094,14 +2105,17 @@ fts_optimize_purge_deleted_doc_ids(
 	fts_bind_doc_id(info, "doc_id1", &write_doc_id);
 	fts_bind_doc_id(info, "doc_id2", &write_doc_id);
 
-	/* Since we only replace the table_id and don't construct the full
-	name, we do substitution ourselves. Remember to free sql_str. */
-	sql_str = ut_strreplace(
-		fts_delete_doc_ids_sql, "%s", optim->name_prefix);
+	/* Make sure the following two names are consistent with the name
+	used in the fts_delete_doc_ids_sql */
+	optim->fts_common_table.suffix = fts_common_tables[3];
+	fts_get_table_name(&optim->fts_common_table, deleted);
+	pars_info_bind_id(info, true, fts_common_tables[3], deleted);
 
-	graph = fts_parse_sql(NULL, info, sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[4];
+	fts_get_table_name(&optim->fts_common_table, deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[4], deleted_cache);
 
-	mem_free(sql_str);
+	graph = fts_parse_sql(NULL, info, fts_delete_doc_ids_sql);
 
 	/* Delete the doc ids that were copied at the start. */
 	for (i = 0; i < ib_vector_size(optim->to_delete->doc_ids); ++i) {
@@ -2142,17 +2156,26 @@ fts_optimize_purge_deleted_doc_id_snapshot(
 {
 	dberr_t		error;
 	que_t*		graph;
-	char*		sql_str;
+	pars_info_t*	info;
+	char		being_deleted[MAX_FULL_NAME_LEN];
+	char		being_deleted_cache[MAX_FULL_NAME_LEN];
 
-	/* Since we only replace the table_id and don't construct
-	the full name, we do the '%s' substitution ourselves. */
-	sql_str = ut_strreplace(fts_end_delete_sql, "%s", optim->name_prefix);
+	info = pars_info_create();
+
+	/* Make sure the following two names are consistent with the name
+	used in the fts_end_delete_sql */
+	optim->fts_common_table.suffix = fts_common_tables[0];
+	fts_get_table_name(&optim->fts_common_table, being_deleted);
+	pars_info_bind_id(info, true, fts_common_tables[0], being_deleted);
+
+	optim->fts_common_table.suffix = fts_common_tables[1];
+	fts_get_table_name(&optim->fts_common_table, being_deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[1],
+			  being_deleted_cache);
 
 	/* Delete the doc ids that were copied to delete pending state at
 	the start of optimize. */
-	graph = fts_parse_sql(NULL, NULL, sql_str);
-
-	mem_free(sql_str);
+	graph = fts_parse_sql(NULL, info, fts_end_delete_sql);
 
 	error = fts_eval_sql(optim->trx, graph);
 	fts_que_graph_free(graph);
@@ -2192,16 +2215,35 @@ fts_optimize_create_deleted_doc_id_snapshot(
 {
 	dberr_t		error;
 	que_t*		graph;
-	char*		sql_str;
+	pars_info_t*	info;
+	char		being_deleted[MAX_FULL_NAME_LEN];
+	char		deleted[MAX_FULL_NAME_LEN];
+	char		being_deleted_cache[MAX_FULL_NAME_LEN];
+	char		deleted_cache[MAX_FULL_NAME_LEN];
+
+	info = pars_info_create();
 
-	/* Since we only replace the table_id and don't construct the
-	full name, we do the substitution ourselves. */
-	sql_str = ut_strreplace(fts_init_delete_sql, "%s", optim->name_prefix);
+	/* Make sure the following four names are consistent with the name
+	used in the fts_init_delete_sql */
+	optim->fts_common_table.suffix = fts_common_tables[0];
+	fts_get_table_name(&optim->fts_common_table, being_deleted);
+	pars_info_bind_id(info, true, fts_common_tables[0], being_deleted);
 
-	/* Move doc_ids that are to be deleted to state being deleted. */
-	graph = fts_parse_sql(NULL, NULL, sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[3];
+	fts_get_table_name(&optim->fts_common_table, deleted);
+	pars_info_bind_id(info, true, fts_common_tables[3], deleted);
 
-	mem_free(sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[1];
+	fts_get_table_name(&optim->fts_common_table, being_deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[1],
+			  being_deleted_cache);
+
+	optim->fts_common_table.suffix = fts_common_tables[4];
+	fts_get_table_name(&optim->fts_common_table, deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[4], deleted_cache);
+
+	/* Move doc_ids that are to be deleted to state being deleted. */
+	graph = fts_parse_sql(NULL, info, fts_init_delete_sql);
 
 	error = fts_eval_sql(optim->trx, graph);
 
@@ -2274,8 +2316,8 @@ fts_optimize_indexes(
 		dict_index_t*	index;
 
 #ifdef	FTS_OPTIMIZE_DEBUG
-		ib_time_t	end_time;
-		ib_time_t	start_time;
+		time_t	end_time;
+		time_t	start_time;
 
 		/* Get the start and end optimize times for this index. */
 		error = fts_optimize_get_index_start_time(
@@ -2295,14 +2337,14 @@ fts_optimize_indexes(
 		/* Start time will be 0 only for the first time or after
 		completing the optimization of all FTS indexes. */
 		if (start_time == 0) {
-			start_time = ut_time();
+			start_time = time(NULL);
 
 			error = fts_optimize_set_index_start_time(
 				optim->trx, index, start_time);
 		}
 
 		/* Check if this index needs to be optimized or not. */
-		if (ut_difftime(end_time, start_time) < 0) {
+		if (difftime(end_time, start_time) < 0) {
 			error = fts_optimize_index(optim, index);
 
 			if (error != DB_SUCCESS) {
@@ -2374,7 +2416,7 @@ fts_optimize_reset_start_time(
 	for (uint i = 0; i < ib_vector_size(fts->indexes); ++i) {
 		dict_index_t*	index;
 
-		ib_time_t	start_time = 0;
+		time_t	start_time = 0;
 
 		/* Reset the start time to 0 for this index. */
 		error = fts_optimize_set_index_start_time(
@@ -2403,32 +2445,45 @@ fts_optimize_table_bk(
 /*==================*/
 	fts_slot_t*	slot)	/*!< in: table to optimiza */
 {
-	dberr_t		error;
-	dict_table_t*	table = slot->table;
-	fts_t*		fts = table->fts;
+	const time_t now = time(NULL);
+	const ulint interval = ulint(now - slot->last_run);
 
 	/* Avoid optimizing tables that were optimized recently. */
 	if (slot->last_run > 0
-	    && (ut_time() - slot->last_run) < slot->interval_time) {
+	    && lint(interval) >= 0
+	    && interval < FTS_OPTIMIZE_INTERVAL_IN_SECS) {
 
 		return(DB_SUCCESS);
+	}
+
+	dict_table_t* table = dict_table_open_on_id(
+		slot->table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
-	} else if (fts && fts->cache
-		   && fts->cache->deleted >= FTS_OPTIMIZE_THRESHOLD) {
+	if (!table) {
+		slot->last_run = now;
+		return DB_SUCCESS;
+	}
+
+	dberr_t		error;
 
+	if (fil_table_accessible(table)
+	    && table->fts && table->fts->cache
+	    && table->fts->cache->deleted >= FTS_OPTIMIZE_THRESHOLD) {
 		error = fts_optimize_table(table);
 
+		slot->last_run = time(NULL);
+
 		if (error == DB_SUCCESS) {
-			slot->state = FTS_STATE_DONE;
-			slot->last_run = 0;
-			slot->completed = ut_time();
+			slot->running = false;
+			slot->completed = slot->last_run;
 		}
 	} else {
+		/* Note time this run completed. */
+		slot->last_run = now;
 		error = DB_SUCCESS;
 	}
 
-	/* Note time this run completed. */
-	slot->last_run = ut_time();
+	dict_table_close(table, FALSE, FALSE);
 
 	return(error);
 }
@@ -2647,85 +2702,59 @@ fts_optimize_request_sync_table(
 	ib_wqueue_add(fts_optimize_wq, msg, msg->heap);
 }
 
-/**********************************************************************//**
-Add the table to the vector if it doesn't already exist. */
-static
-ibool
-fts_optimize_new_table(
-/*===================*/
-	ib_vector_t*	tables,			/*!< in/out: vector of tables */
-	dict_table_t*	table)			/*!< in: table to add */
+/** Add a table to fts_slots if it doesn't already exist. */
+static bool fts_optimize_new_table(dict_table_t* table)
 {
 	ulint		i;
 	fts_slot_t*	slot;
-	ulint		empty_slot = ULINT_UNDEFINED;
+	fts_slot_t*	empty = NULL;
+	const table_id_t table_id = table->id;
+	ut_ad(table_id);
 
 	/* Search for duplicates, also find a free slot if one exists. */
-	for (i = 0; i < ib_vector_size(tables); ++i) {
+	for (i = 0; i < ib_vector_size(fts_slots); ++i) {
 
-		slot = static_cast(
-			ib_vector_get(tables, i));
+		slot = static_cast(ib_vector_get(fts_slots, i));
 
-		if (slot->state == FTS_STATE_EMPTY) {
-			empty_slot = i;
-		} else if (slot->table->id == table->id) {
+		if (!slot->table_id) {
+			empty = slot;
+		} else if (slot->table_id == table_id) {
 			/* Already exists in our optimize queue. */
-			ut_ad(slot->table_id = table->id);
 			return(FALSE);
 		}
 	}
 
-	/* Reuse old slot. */
-	if (empty_slot != ULINT_UNDEFINED) {
-
-		slot = static_cast(
-			ib_vector_get(tables, empty_slot));
-
-		ut_a(slot->state == FTS_STATE_EMPTY);
-
-	} else { /* Create a new slot. */
-
-		slot = static_cast(ib_vector_push(tables, NULL));
-	}
+	slot = empty ? empty : static_cast(
+		ib_vector_push(fts_slots, NULL));
 
 	memset(slot, 0x0, sizeof(*slot));
 
-	slot->table = table;
 	slot->table_id = table->id;
-	slot->state = FTS_STATE_LOADED;
-	slot->interval_time = FTS_OPTIMIZE_INTERVAL_IN_SECS;
+	slot->running = false;
 
 	return(TRUE);
 }
 
-/**********************************************************************//**
-Remove the table from the vector if it exists. */
-static
-ibool
-fts_optimize_del_table(
-/*===================*/
-	ib_vector_t*	tables,			/*!< in/out: vector of tables */
-	fts_msg_del_t*	msg)			/*!< in: table to delete */
+/** Remove a table from fts_slots if it exists.
+@param[in,out]	table	table to be removed from fts_slots */
+static bool fts_optimize_del_table(const dict_table_t* table)
 {
-	ulint		i;
-	dict_table_t*	table = msg->table;
+	const table_id_t table_id = table->id;
+	ut_ad(table_id);
 
-	for (i = 0; i < ib_vector_size(tables); ++i) {
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
 		fts_slot_t*	slot;
 
-		slot = static_cast(ib_vector_get(tables, i));
+		slot = static_cast(ib_vector_get(fts_slots, i));
 
-		/* FIXME: Should we assert on this ? */
-		if (slot->state != FTS_STATE_EMPTY
-		    && slot->table->id == table->id) {
-
-			ut_print_timestamp(stderr);
-			fprintf(stderr, " InnoDB: FTS Optimize Removing "
-				"table %s\n", table->name);
-
-			slot->table = NULL;
-			slot->state = FTS_STATE_EMPTY;
+		if (slot->table_id == table_id) {
+			if (fts_enable_diag_print) {
+				ib_logf(IB_LOG_LEVEL_INFO,
+					"FTS Optimize Removing table %s",
+					table->name);
+			}
 
+			slot->table_id = 0;
 			return(TRUE);
 		}
 	}
@@ -2734,58 +2763,28 @@ fts_optimize_del_table(
 }
 
 /**********************************************************************//**
-Calculate how many of the registered tables need to be optimized.
+Calculate how many tables in fts_slots need to be optimized.
 @return no. of tables to optimize */
-static
-ulint
-fts_optimize_how_many(
-/*==================*/
-	const ib_vector_t*	tables)		/*!< in: registered tables
-						vector*/
+static ulint fts_optimize_how_many()
 {
-	ulint		i;
-	ib_time_t	delta;
-	ulint		n_tables = 0;
-	ib_time_t	current_time;
-
-	current_time = ut_time();
-
-	for (i = 0; i < ib_vector_size(tables); ++i) {
-		const fts_slot_t*	slot;
-
-		slot = static_cast(
-			ib_vector_get_const(tables, i));
-
-		switch (slot->state) {
-		case FTS_STATE_DONE:
-		case FTS_STATE_LOADED:
-			ut_a(slot->completed <= current_time);
+	ulint n_tables = 0;
+	const time_t current_time = time(NULL);
 
-			delta = current_time - slot->completed;
-
-			/* Skip slots that have been optimized recently. */
-			if (delta >= slot->interval_time) {
-				++n_tables;
-			}
-			break;
-
-		case FTS_STATE_RUNNING:
-			ut_a(slot->last_run <= current_time);
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
+		const fts_slot_t* slot = static_cast(
+			ib_vector_get_const(fts_slots, i));
+		if (slot->table_id == 0) {
+			continue;
+		}
 
-			delta = current_time - slot->last_run;
+		const time_t end = slot->running
+			? slot->last_run : slot->completed;
+		ulint interval = ulint(current_time - end);
 
-			if (delta > slot->interval_time) {
-				++n_tables;
-			}
-			break;
-
-			/* Slots in a state other than the above
-			are ignored. */
-		case FTS_STATE_EMPTY:
-		case FTS_STATE_SUSPENDED:
-			break;
+		if (lint(interval) < 0
+		    || interval >= FTS_OPTIMIZE_INTERVAL_IN_SECS) {
+			++n_tables;
 		}
-
 	}
 
 	return(n_tables);
@@ -2794,33 +2793,38 @@ fts_optimize_how_many(
 /**********************************************************************//**
 Check if the total memory used by all FTS table exceeds the maximum limit.
 @return true if a sync is needed, false otherwise */
-static
-bool
-fts_is_sync_needed(
-/*===============*/
-	const ib_vector_t*	tables)		/*!< in: registered tables
-						vector*/
+static bool fts_is_sync_needed()
 {
 	ulint		total_memory = 0;
-	double		time_diff = difftime(ut_time(), last_check_sync_time);
+	const time_t	now = time(NULL);
+	double		time_diff = difftime(now, last_check_sync_time);
 
-	if (fts_need_sync || time_diff < 5) {
+	if (fts_need_sync || (time_diff >= 0 && time_diff < 5)) {
 		return(false);
 	}
 
-	last_check_sync_time = ut_time();
+	last_check_sync_time = now;
+
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
+		const fts_slot_t* slot = static_cast(
+			ib_vector_get_const(fts_slots, i));
 
-	for (ulint i = 0; i < ib_vector_size(tables); ++i) {
-		const fts_slot_t*	slot;
+		if (slot->table_id == 0) {
+			continue;
+		}
 
-		slot = static_cast(
-			ib_vector_get_const(tables, i));
+		dict_table_t* table = dict_table_open_on_id(
+			slot->table_id, FALSE, DICT_TABLE_OP_NORMAL);
+		if (!table) {
+			continue;
+		}
 
-		if (slot->state != FTS_STATE_EMPTY && slot->table
-		    && slot->table->fts) {
-			total_memory += slot->table->fts->cache->total_size;
+		if (table->fts && table->fts->cache) {
+			total_memory += table->fts->cache->total_size;
 		}
 
+		dict_table_close(table, FALSE, FALSE);
+
 		if (total_memory > fts_max_total_cache_size) {
 			return(true);
 		}
@@ -2831,16 +2835,12 @@ fts_is_sync_needed(
 
 /** Sync fts cache of a table
 @param[in]	table_id	table id */
-void
-fts_optimize_sync_table(
-	table_id_t	table_id)
+static void fts_optimize_sync_table(table_id_t table_id)
 {
-	dict_table_t*   table = NULL;
-
-	table = dict_table_open_on_id(table_id, FALSE, DICT_TABLE_OP_NORMAL);
-
-	if (table) {
-		if (dict_table_has_fts_index(table) && table->fts->cache) {
+	if (dict_table_t* table = dict_table_open_on_id(
+		    table_id, FALSE, DICT_TABLE_OP_NORMAL)) {
+		if (fil_table_accessible(table)
+		    && table->fts && table->fts->cache) {
 			fts_sync_table(table, true, false, false);
 		}
 
@@ -2858,7 +2858,6 @@ fts_optimize_thread(
 	void*		arg)			/*!< in: work queue*/
 {
 	mem_heap_t*	heap;
-	ib_vector_t*	tables;
 	ib_alloc_t*	heap_alloc;
 	ulint		current = 0;
 	ibool		done = FALSE;
@@ -2873,7 +2872,7 @@ fts_optimize_thread(
 	heap = mem_heap_create(sizeof(dict_table_t*) * 64);
 	heap_alloc = ib_heap_allocator_create(heap);
 
-	tables = ib_vector_create(heap_alloc, sizeof(fts_slot_t), 4);
+	fts_slots = ib_vector_create(heap_alloc, sizeof(fts_slot_t), 4);
 
 	while(!done && srv_shutdown_state == SRV_SHUTDOWN_NONE) {
 
@@ -2884,28 +2883,18 @@ fts_optimize_thread(
 		    && ib_wqueue_is_empty(wq)
 		    && n_tables > 0
 		    && n_optimize > 0) {
-
-			fts_slot_t*	slot;
-
-			ut_a(ib_vector_size(tables) > 0);
-
-			slot = static_cast(
-				ib_vector_get(tables, current));
+			fts_slot_t* slot = static_cast(
+				ib_vector_get(fts_slots, current));
 
 			/* Handle the case of empty slots. */
-			if (slot->state != FTS_STATE_EMPTY) {
-
-				slot->state = FTS_STATE_RUNNING;
-
+			if (slot->table_id) {
+				slot->running = true;
 				fts_optimize_table_bk(slot);
 			}
 
-			++current;
-
 			/* Wrap around the counter. */
-			if (current >= ib_vector_size(tables)) {
-				n_optimize = fts_optimize_how_many(tables);
-
+			if (++current >= ib_vector_size(fts_slots)) {
+				n_optimize = fts_optimize_how_many();
 				current = 0;
 			}
 
@@ -2917,7 +2906,7 @@ fts_optimize_thread(
 
 			/* Timeout ? */
 			if (msg == NULL) {
-				if (fts_is_sync_needed(tables)) {
+				if (fts_is_sync_needed()) {
 					fts_need_sync = true;
 				}
 
@@ -2933,17 +2922,16 @@ fts_optimize_thread(
 			case FTS_MSG_ADD_TABLE:
 				ut_a(!done);
 				if (fts_optimize_new_table(
-					tables,
-					static_cast(
-					msg->ptr))) {
+					    static_cast(
+						    msg->ptr))) {
 					++n_tables;
 				}
 				break;
 
 			case FTS_MSG_DEL_TABLE:
 				if (fts_optimize_del_table(
-					tables, static_cast(
-						msg->ptr))) {
+					    static_cast(
+						    msg->ptr)->table)) {
 					--n_tables;
 				}
 
@@ -2967,33 +2955,25 @@ fts_optimize_thread(
 			}
 
 			mem_heap_free(msg->heap);
-
-			if (!done) {
-				n_optimize = fts_optimize_how_many(tables);
-			} else {
-				n_optimize = 0;
-			}
+			n_optimize = done ? 0 : fts_optimize_how_many();
 		}
 	}
 
 	/* Server is being shutdown, sync the data from FTS cache to disk
 	if needed */
 	if (n_tables > 0) {
-		ulint	i;
-
-		for (i = 0; i < ib_vector_size(tables); i++) {
-			fts_slot_t*	slot;
-
-			slot = static_cast(
-				ib_vector_get(tables, i));
+		for (ulint i = 0; i < ib_vector_size(fts_slots); i++) {
+			fts_slot_t* slot = static_cast(
+				ib_vector_get(fts_slots, i));
 
-			if (slot->state != FTS_STATE_EMPTY) {
-				fts_optimize_sync_table(slot->table_id);
+			if (table_id_t table_id = slot->table_id) {
+				fts_optimize_sync_table(table_id);
 			}
 		}
 	}
 
-	ib_vector_free(tables);
+	ib_vector_free(fts_slots);
+	fts_slots = NULL;
 
 	ib_logf(IB_LOG_LEVEL_INFO, "FTS optimize thread exiting.");
 
@@ -3021,7 +3001,7 @@ fts_optimize_init(void)
 
 	fts_optimize_wq = ib_wqueue_create();
 	ut_a(fts_optimize_wq != NULL);
-	last_check_sync_time = ut_time();
+	last_check_sync_time = time(NULL);
 
 	os_thread_create(fts_optimize_thread, fts_optimize_wq, NULL);
 }
diff --git a/storage/innobase/fts/fts0pars.y b/storage/innobase/fts/fts0pars.y
index 65c4189eecea37213baabf414c7d7381331126b6..31895e8a86cbd9b830e373cf7b5b08ef5bcf1172 100644
--- a/storage/innobase/fts/fts0pars.y
+++ b/storage/innobase/fts/fts0pars.y
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fts/fts0que.cc b/storage/innobase/fts/fts0que.cc
index 7983181c23a46a2d5bfa02084b9d5954d4c97d22..ce6151e63b8883ae0b9373067b6b6ea1ddd3bb85 100644
--- a/storage/innobase/fts/fts0que.cc
+++ b/storage/innobase/fts/fts0que.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2032,13 +2032,22 @@ fts_query_find_term(
 	fts_select_t		select;
 	doc_id_t		match_doc_id;
 	trx_t*			trx = query->trx;
+	char			table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS index matching nodes";
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
+		ulint	selected;
+
 		info = pars_info_create();
+
+		selected = fts_select_index(*word->f_str);
+		query->fts_index_table.suffix = fts_get_suffix(selected);
+
+		fts_get_table_name(&query->fts_index_table, table_name);
+		pars_info_bind_id(info, true, "index_table_name", table_name);
 	}
 
 	select.found = FALSE;
@@ -2057,11 +2066,6 @@ fts_query_find_term(
 	fts_bind_doc_id(info, "max_doc_id", &match_doc_id);
 
 	if (!*graph) {
-		ulint		selected;
-
-		selected = fts_select_index(*word->f_str);
-
-		query->fts_index_table.suffix = fts_get_suffix(selected);
 
 		*graph = fts_parse_sql(
 			&query->fts_index_table,
@@ -2069,7 +2073,7 @@ fts_query_find_term(
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT doc_count, ilist\n"
-			" FROM \"%s\"\n"
+			" FROM $index_table_name\n"
 			" WHERE word LIKE :word AND "
 			"	first_doc_id <= :min_doc_id AND "
 			"	last_doc_id >= :max_doc_id\n"
@@ -2168,6 +2172,7 @@ fts_query_total_docs_containing_term(
 	que_t*			graph;
 	ulint			selected;
 	trx_t*			trx = query->trx;
+	char			table_name[MAX_FULL_NAME_LEN]
 
 	trx->op_info = "fetching FTS index document count";
 
@@ -2182,13 +2187,17 @@ fts_query_total_docs_containing_term(
 
 	query->fts_index_table.suffix = fts_get_suffix(selected);
 
+	fts_get_table_name(&query->fts_index_table, table_name);
+
+	pars_info_bind_id(info, true, "index_table_name", table_name);
+
 	graph = fts_parse_sql(
 		&query->fts_index_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT doc_count\n"
-		" FROM %s\n"
+		" FROM $index_table_name\n"
 		" WHERE word = :word "
 		" ORDER BY first_doc_id;\n"
 		"BEGIN\n"
@@ -2247,6 +2256,7 @@ fts_query_terms_in_document(
 	que_t*		graph;
 	doc_id_t	read_doc_id;
 	trx_t*		trx = query->trx;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS document term count";
 
@@ -2262,13 +2272,17 @@ fts_query_terms_in_document(
 
 	query->fts_index_table.suffix = "DOC_ID";
 
+	fts_get_table_name(&query->fts_index_table, table_name);
+
+	pars_info_bind_id(info, true, "index_table_name", table_name);
+
 	graph = fts_parse_sql(
 		&query->fts_index_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT count\n"
-		" FROM \"%s\"\n"
+		" FROM $index_table_name\n"
 		" WHERE doc_id = :doc_id "
 		"BEGIN\n"
 		"\n"
@@ -3870,7 +3884,6 @@ fts_query(
 
 	query.fts_common_table.type = FTS_COMMON_TABLE;
 	query.fts_common_table.table_id = index->table->id;
-	query.fts_common_table.parent = index->table->name;
 	query.fts_common_table.table = index->table;
 
 	charset = fts_index_get_charset(index);
@@ -3878,7 +3891,6 @@ fts_query(
 	query.fts_index_table.type = FTS_INDEX_TABLE;
 	query.fts_index_table.index_id = index->id;
 	query.fts_index_table.table_id = index->table->id;
-	query.fts_index_table.parent = index->table->name;
 	query.fts_index_table.charset = charset;
 	query.fts_index_table.table = index->table;
 
diff --git a/storage/innobase/fts/fts0sql.cc b/storage/innobase/fts/fts0sql.cc
index cb8eff3cacce5254caab91e375bcdcce7a4bd0a1..258164415f4345e7609c2cecb7793e2135bbbd3e 100644
--- a/storage/innobase/fts/fts0sql.cc
+++ b/storage/innobase/fts/fts0sql.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -35,8 +36,7 @@ Created 2007-03-27 Sunny Bains
 #include "fts0vlc.ic"
 #endif
 
-/** SQL statements for creating the ancillary FTS tables. %s must be replaced
-with the indexed table's id. */
+/** SQL statements for creating the ancillary FTS tables. */
 
 /** Preamble to all SQL statements. */
 static const char* fts_sql_begin=
@@ -95,76 +95,56 @@ fts_get_table_id(
 	return(len);
 }
 
-/******************************************************************//**
-Construct the prefix name of an FTS table.
-@return own: table name, must be freed with mem_free() */
-UNIV_INTERN
-char*
-fts_get_table_name_prefix(
-/*======================*/
-	const fts_table_t*
-			fts_table)	/*!< in: Auxiliary table type */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[in]	dict_locked	whether dict_sys->mutex is being held
+@return	the prefix, must be freed with ut_free() */
+UNIV_INTERN char* fts_get_table_name_prefix(const fts_table_t* fts_table)
 {
-	int		len;
-	const char*	slash;
-	char*		prefix_name;
-	int		dbname_len = 0;
-	int		prefix_name_len;
 	char		table_id[FTS_AUX_MIN_TABLE_ID_LENGTH];
-
-	slash = static_cast(
-		memchr(fts_table->parent, '/', strlen(fts_table->parent)));
-
-	if (slash) {
-		/* Print up to and including the separator. */
-		dbname_len = static_cast(slash - fts_table->parent) + 1;
-	}
-
-	len = fts_get_table_id(fts_table, table_id);
-
-	prefix_name_len = dbname_len + 4 + len + 1;
-
-	prefix_name = static_cast(mem_alloc(prefix_name_len));
-
-	len = sprintf(prefix_name, "%.*sFTS_%s",
-		      dbname_len, fts_table->parent, table_id);
-
-	ut_a(len > 0);
-	ut_a(len == prefix_name_len - 1);
-
-	return(prefix_name);
+	const size_t table_id_len = size_t(fts_get_table_id(fts_table,
+							    table_id)) + 1;
+	mutex_enter(&dict_sys->mutex);
+	const char* slash = strchr(fts_table->table->name, '/');
+	ut_ad(slash);
+	/* Include the separator as well. */
+	const size_t dbname_len = (slash - fts_table->table->name) + 1;
+	ut_ad(dbname_len > 1);
+	const size_t prefix_name_len = dbname_len + 4 + table_id_len;
+	char* prefix_name = static_cast(ut_malloc(prefix_name_len));
+	memcpy(prefix_name, fts_table->table->name, dbname_len);
+	mutex_exit(&dict_sys->mutex);
+	memcpy(prefix_name + dbname_len, "FTS_", 4);
+	memcpy(prefix_name + dbname_len + 4, table_id, table_id_len);
+	return prefix_name;
 }
 
-/******************************************************************//**
-Construct the name of an ancillary FTS table.
-@return own: table name, must be freed with mem_free() */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[out]	table_name	a name up to MAX_FULL_NAME_LEN
+@param[in]	dict_locked	whether dict_sys->mutex is being held */
 UNIV_INTERN
-char*
-fts_get_table_name(
-/*===============*/
-	const fts_table_t*	fts_table)
-					/*!< in: Auxiliary table type */
+void fts_get_table_name(const fts_table_t* fts_table, char* table_name,
+			bool dict_locked)
 {
-	int		len;
-	char*		name;
-	int		name_len;
-	char*		prefix_name;
-
-	prefix_name = fts_get_table_name_prefix(fts_table);
-
-	name_len = static_cast(
-		strlen(prefix_name) + 1 + strlen(fts_table->suffix) + 1);
-
-	name = static_cast(mem_alloc(name_len));
-
-	len = sprintf(name, "%s_%s", prefix_name, fts_table->suffix);
-
-	ut_a(len > 0);
-	ut_a(len == name_len - 1);
-
-	mem_free(prefix_name);
-
-	return(name);
+	if (!dict_locked) {
+		mutex_enter(&dict_sys->mutex);
+	}
+	ut_ad(mutex_own(&dict_sys->mutex));
+	const char* slash = strchr(fts_table->table->name, '/');
+	ut_ad(slash);
+	/* Include the separator as well. */
+	const size_t dbname_len = (slash - fts_table->table->name) + 1;
+	ut_ad(dbname_len > 1);
+	memcpy(table_name, fts_table->table->name, dbname_len);
+	if (!dict_locked) {
+		mutex_exit(&dict_sys->mutex);
+	}
+	memcpy(table_name += dbname_len, "FTS_", 4);
+	table_name += 4;
+	table_name += fts_get_table_id(fts_table, table_name);
+	*table_name++ = '_';
+	strcpy(table_name, fts_table->suffix);
 }
 
 /******************************************************************//**
@@ -180,24 +160,9 @@ fts_parse_sql(
 {
 	char*		str;
 	que_t*		graph;
-	char*		str_tmp;
 	ibool		dict_locked;
 
-	if (fts_table != NULL) {
-		char*	table_name;
-
-		table_name = fts_get_table_name(fts_table);
-		str_tmp = ut_strreplace(sql, "%s", table_name);
-		mem_free(table_name);
-	} else {
-		ulint	sql_len = strlen(sql) + 1;
-
-		str_tmp = static_cast(mem_alloc(sql_len));
-		strcpy(str_tmp, sql);
-	}
-
-	str = ut_str3cat(fts_sql_begin, str_tmp, fts_sql_end);
-	mem_free(str_tmp);
+	str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
 
 	dict_locked = (fts_table && fts_table->table->fts
 		       && (fts_table->table->fts->fts_status
@@ -223,7 +188,7 @@ fts_parse_sql(
 }
 
 /******************************************************************//**
-Parse an SQL string. %s is replaced with the table's id.
+Parse an SQL string.
 @return query graph */
 UNIV_INTERN
 que_t*
@@ -235,28 +200,10 @@ fts_parse_sql_no_dict_lock(
 {
 	char*		str;
 	que_t*		graph;
-	char*		str_tmp = NULL;
 
-#ifdef UNIV_DEBUG
 	ut_ad(mutex_own(&dict_sys->mutex));
-#endif
-
-	if (fts_table != NULL) {
-		char*		table_name;
-
-		table_name = fts_get_table_name(fts_table);
-		str_tmp = ut_strreplace(sql, "%s", table_name);
-		mem_free(table_name);
-	}
-
-	if (str_tmp != NULL) {
-		str = ut_str3cat(fts_sql_begin, str_tmp, fts_sql_end);
-		mem_free(str_tmp);
-	} else {
-		str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
-	}
 
-	//fprintf(stderr, "%s\n", str);
+	str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
 
 	graph = pars_sql(info, str);
 	ut_a(graph);
diff --git a/storage/innobase/fts/fts0tlex.cc b/storage/innobase/fts/fts0tlex.cc
index 73c34a607ca7de3bfbfe7497b02def640144ff42..9cb46c70e1a203dc5616e3dd6fd4757cd7d8919a 100644
--- a/storage/innobase/fts/fts0tlex.cc
+++ b/storage/innobase/fts/fts0tlex.cc
@@ -649,7 +649,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**
diff --git a/storage/innobase/fts/fts0tlex.l b/storage/innobase/fts/fts0tlex.l
index 4f55a83afe5faf1261d27a76298ddf3db2356045..bcf5439ae9f90456f5c635b8aa887ff06987ebb3 100644
--- a/storage/innobase/fts/fts0tlex.l
+++ b/storage/innobase/fts/fts0tlex.l
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fts/make_parser.sh b/storage/innobase/fts/make_parser.sh
index 52b63eff6745493c0a304ece2117db3d301383f8..6b82c5ba68a714641f445263bd1b424ef9f3ec6c 100755
--- a/storage/innobase/fts/make_parser.sh
+++ b/storage/innobase/fts/make_parser.sh
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 
 TMPF=t.$$
diff --git a/storage/innobase/fut/fut0fut.cc b/storage/innobase/fut/fut0fut.cc
index 9bb1c512182d02aa4be83c8ab9be25b6a8fa7c1a..74814acbb1d6b388dd5c8986cd6b50cca06413d1 100644
--- a/storage/innobase/fut/fut0fut.cc
+++ b/storage/innobase/fut/fut0fut.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/fut/fut0lst.cc b/storage/innobase/fut/fut0lst.cc
index dd3fa1238d926a4f89231c15c7c6a96d7b663984..76cf3cadd5fe3988e227ab4232d07b9d5b8b82e3 100644
--- a/storage/innobase/fut/fut0lst.cc
+++ b/storage/innobase/fut/fut0lst.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ha/ha0ha.cc b/storage/innobase/ha/ha0ha.cc
index ae1eb55982a2d36335aadc0abcffccdc3cf908e3..499412ade120f77c59d06c2642cdfe855485b610 100644
--- a/storage/innobase/ha/ha0ha.cc
+++ b/storage/innobase/ha/ha0ha.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ha/ha0storage.cc b/storage/innobase/ha/ha0storage.cc
index 6820591f316ca11e42980abb3778ff8063b5e2f8..2a8ee8b2432b8f486ecddfc93d66e4920044b2e1 100644
--- a/storage/innobase/ha/ha0storage.cc
+++ b/storage/innobase/ha/ha0storage.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ha/hash0hash.cc b/storage/innobase/ha/hash0hash.cc
index 174b6bcb57e4b6b548b28abf67230b8dc685506e..40354aafa432a56bc0b862f6fd1bb1afc8edb160 100644
--- a/storage/innobase/ha/hash0hash.cc
+++ b/storage/innobase/ha/hash0hash.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index cd605b6b7914295cb0ab9f234e6a39958fd3bceb..081fcbd9c51e77c675bf91fc6e3b98fa5074a6fe 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -29,7 +29,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -95,7 +95,6 @@ MYSQL_PLUGIN_IMPORT extern char mysql_unpacked_real_data_home[];
 #include "dict0stats_bg.h"
 #include "ha_prototypes.h"
 #include "ut0mem.h"
-#include "ut0timer.h"
 #include "ibuf0ibuf.h"
 #include "dict0dict.h"
 #include "srv0mon.h"
@@ -1685,13 +1684,14 @@ innobase_srv_conc_enter_innodb(
 
 		} else if (trx->mysql_thd != NULL
 			   && thd_is_replication_slave_thread(trx->mysql_thd)) {
-
-			UT_WAIT_FOR(
-				srv_conc_get_active_threads()
-				< srv_thread_concurrency,
-				srv_replication_delay * 1000);
-
-		}  else {
+			const ulonglong end = my_interval_timer()
+				+ ulonglong(srv_replication_delay) * 1000000;
+			while (srv_conc_get_active_threads()
+			       >= srv_thread_concurrency
+			       || my_interval_timer() >= end) {
+				os_thread_sleep(2000 /* 2 ms */);
+			}
+		} else {
 			srv_conc_enter_innodb(trx);
 		}
 	}
@@ -12645,11 +12645,12 @@ ha_innobase::delete_table(
 	++trx->will_lock;
 	trx->ddl = true;
 
+	const int sqlcom = thd_sql_command(thd);
+
 	/* Drop the table in InnoDB */
 	err = row_drop_table_for_mysql(
-		norm_name, trx, thd_sql_command(thd) == SQLCOM_DROP_DB,
-		FALSE);
-
+		norm_name, trx, sqlcom == SQLCOM_DROP_DB,
+		sqlcom == SQLCOM_CREATE_TABLE /* CREATE TABLE ... SELECT */);
 
 	if (err == DB_TABLE_NOT_FOUND
 	    && innobase_get_lower_case_table_names() == 1) {
@@ -12679,8 +12680,9 @@ ha_innobase::delete_table(
 #endif
 			err = row_drop_table_for_mysql(
 				par_case_name, trx,
-				thd_sql_command(thd) == SQLCOM_DROP_DB,
-				FALSE);
+				sqlcom == SQLCOM_DROP_DB,
+				sqlcom == SQLCOM_CREATE_TABLE
+				/* CREATE TABLE ... SELECT */);
 		}
 	}
 
@@ -13520,7 +13522,7 @@ innodb_rec_per_key(
 		}
 
 		/* If the number of NULL values is the same as or
-		large than that of the distinct values, we could
+		larger than that of the distinct values, we could
 		consider that the table consists mostly of NULL value.
 		Set rec_per_key to 1. */
 		if (n_diff <= n_null) {
@@ -14455,6 +14457,10 @@ get_foreign_key_info(
 	LEX_STRING*		referenced_key_name;
 	LEX_STRING*		name = NULL;
 
+	if (row_is_mysql_tmp_table_name(foreign->foreign_table_name)) {
+		return NULL;
+	}
+
 	ptr = dict_remove_db_name(foreign->id);
 	f_key_info.foreign_id = thd_make_lex_string(thd, 0, ptr,
 						    (uint) strlen(ptr), 1);
@@ -17114,98 +17120,36 @@ innodb_stopword_table_validate(
 	return(ret);
 }
 
-/*************************************************************//**
-Check whether valid argument given to "innodb_fts_internal_tbl_name"
-This function is registered as a callback with MySQL.
-@return 0 for valid stopword table */
-static
-int
-innodb_internal_table_validate(
-/*===========================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to system
-						variable */
-	void*				save,	/*!< out: immediate result
-						for update function */
-	struct st_mysql_value*		value)	/*!< in: incoming string */
-{
-	const char*	table_name;
-	char		buff[STRING_BUFFER_USUAL_SIZE];
-	int		len = sizeof(buff);
-	int		ret = 1;
-	dict_table_t*	user_table;
-
-	ut_a(save != NULL);
-	ut_a(value != NULL);
-
-	table_name = value->val_str(value, buff, &len);
-
-	if (!table_name) {
-		*static_cast(save) = NULL;
-		return(0);
-	}
-
-	user_table = dict_table_open_on_name(
-		table_name, FALSE, TRUE, DICT_ERR_IGNORE_NONE);
-
-	if (user_table) {
-		if (dict_table_has_fts_index(user_table)) {
-			*static_cast(save) = table_name;
-			ret = 0;
+/** The latest assigned innodb_ft_aux_table name */
+static char* innodb_ft_aux_table;
+
+/** Update innodb_ft_aux_table_id on SET GLOBAL innodb_ft_aux_table.
+@param[out]	save	new value of innodb_ft_aux_table
+@param[in]	value	user-specified value */
+static int innodb_ft_aux_table_validate(THD*, st_mysql_sys_var*,
+					void* save, st_mysql_value* value)
+{
+	char buf[STRING_BUFFER_USUAL_SIZE];
+	int len = sizeof buf;
+
+	if (const char* table_name = value->val_str(value, buf, &len)) {
+		if (dict_table_t* table = dict_table_open_on_name(
+			    table_name, FALSE, TRUE, DICT_ERR_IGNORE_NONE)) {
+			const table_id_t id = dict_table_has_fts_index(table)
+				? table->id : 0;
+			dict_table_close(table, FALSE, FALSE);
+			if (id) {
+				innodb_ft_aux_table_id = id;
+				*static_cast(save) = table_name;
+				return 0;
+			}
 		}
 
-		dict_table_close(user_table, FALSE, TRUE);
-
-		DBUG_EXECUTE_IF("innodb_evict_autoinc_table",
-			mutex_enter(&dict_sys->mutex);
-			dict_table_remove_from_cache_low(user_table, TRUE);
-			mutex_exit(&dict_sys->mutex);
-		);
-	}
-
-	return(ret);
-}
-
-/****************************************************************//**
-Update global variable "fts_internal_tbl_name" with the "saved"
-stopword table name value. This function is registered as a callback
-with MySQL. */
-static
-void
-innodb_internal_table_update(
-/*=========================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
-{
-	const char*	table_name;
-	char*		old;
-
-	ut_a(save != NULL);
-	ut_a(var_ptr != NULL);
-
-	table_name = *static_cast(save);
-	old = *(char**) var_ptr;
-
-	if (table_name) {
-		*(char**) var_ptr =  my_strdup(table_name,  MYF(0));
-	} else {
-		*(char**) var_ptr = NULL;
-	}
-
-	if (old) {
-		my_free(old);
-	}
-
-	fts_internal_tbl_name2 = *(char**) var_ptr;
-	if (fts_internal_tbl_name2 == NULL) {
-		fts_internal_tbl_name = const_cast("default");
+		return 1;
 	} else {
-		fts_internal_tbl_name = fts_internal_tbl_name2;
+		*static_cast(save) = NULL;
+		innodb_ft_aux_table_id = 0;
+		return 0;
 	}
 }
 
@@ -17224,11 +17168,13 @@ innodb_adaptive_hash_index_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	if (*(my_bool*) save) {
 		btr_search_enable();
 	} else {
 		btr_search_disable();
 	}
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 /****************************************************************//**
@@ -17249,7 +17195,9 @@ innodb_cmp_per_index_update(
 	/* Reset the stats whenever we enable the table
 	INFORMATION_SCHEMA.innodb_cmp_per_index. */
 	if (!srv_cmp_per_index_enabled && *(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		page_zip_reset_stat_per_index();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 
 	srv_cmp_per_index_enabled = !!(*(my_bool*) save);
@@ -17270,9 +17218,11 @@ innodb_old_blocks_pct_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
-	innobase_old_blocks_pct = static_cast(
-		buf_LRU_old_ratio_update(
-			*static_cast(save), TRUE));
+	mysql_mutex_unlock(&LOCK_global_system_variables);
+	uint ratio = buf_LRU_old_ratio_update(*static_cast(save),
+					      true);
+	mysql_mutex_lock(&LOCK_global_system_variables);
+	innobase_old_blocks_pct = ratio;
 }
 
 /****************************************************************//**
@@ -17290,9 +17240,10 @@ innodb_change_buffer_max_size_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
-	innobase_change_buffer_max_size =
-			(*static_cast(save));
+	innobase_change_buffer_max_size = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	ibuf_max_size_update(innobase_change_buffer_max_size);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 #ifdef UNIV_DEBUG
@@ -17336,6 +17287,7 @@ innodb_make_page_dirty(
 {
 	mtr_t mtr;
 	ulong space_id = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 
 	mtr_start(&mtr);
 
@@ -17353,6 +17305,7 @@ innodb_make_page_dirty(
 				 MLOG_2BYTES, &mtr);
 	}
 	mtr_commit(&mtr);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 #endif // UNIV_DEBUG
 
@@ -17991,8 +17944,11 @@ innodb_buffer_pool_evict_update(
 {
 	if (const char* op = *static_cast(save)) {
 		if (!strcmp(op, "uncompressed")) {
+			mysql_mutex_unlock(&LOCK_global_system_variables);
 			for (uint tries = 0; tries < 10000; tries++) {
 				if (innodb_buffer_pool_evict_uncompressed()) {
+					mysql_mutex_lock(
+						&LOCK_global_system_variables);
 					return;
 				}
 
@@ -18095,8 +18051,7 @@ innodb_defragment_frequency_update(
 	          from check function */
 {
 	srv_defragment_frequency = (*static_cast(save));
-	srv_defragment_interval = ut_microseconds_to_timer(
-		1000000.0 / srv_defragment_frequency);
+	srv_defragment_interval = 1000000000ULL / srv_defragment_frequency;
 }
 
 /****************************************************************//**
@@ -18295,7 +18250,9 @@ purge_run_now_set(
 						check function */
 {
 	if (*(my_bool*) save && trx_purge_state() != PURGE_STATE_DISABLED) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		trx_purge_run();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -18318,7 +18275,9 @@ purge_stop_now_set(
 						check function */
 {
 	if (*(my_bool*) save && trx_purge_state() != PURGE_STATE_DISABLED) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		trx_purge_stop();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -18340,6 +18299,8 @@ checkpoint_now_set(
 						check function */
 {
 	if (*(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
+
 		while (log_sys->last_checkpoint_lsn < log_sys->lsn) {
 			log_make_checkpoint_at(LSN_MAX, TRUE);
 			fil_flush_file_spaces(FIL_LOG);
@@ -18353,6 +18314,8 @@ checkpoint_now_set(
 				"system tablespace at checkpoint err=%s",
 				ut_strerr(err));
 		}
+
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -18374,8 +18337,10 @@ buf_flush_list_now_set(
 						check function */
 {
 	if (*(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_flush_list(ULINT_MAX, LSN_MAX, NULL);
 		buf_flush_wait_batch_end(NULL, BUF_FLUSH_LIST);
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 #endif /* UNIV_DEBUG */
@@ -18477,7 +18442,9 @@ buffer_pool_dump_now(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_dump_start();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -18500,7 +18467,9 @@ buffer_pool_load_now(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_load_start();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -18523,96 +18492,71 @@ buffer_pool_load_abort(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_load_abort();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
 /** Update innodb_status_output or innodb_status_output_locks,
 which control InnoDB "status monitor" output to the error log.
-@param[in]	thd	thread handle
-@param[in]	var	system variable
-@param[out]	var_ptr	current value
+@param[out]	var	current value
 @param[in]	save	to-be-assigned value */
 static
 void
-innodb_status_output_update(
-/*========================*/
-	THD*				thd __attribute__((unused)),
-	struct st_mysql_sys_var*	var __attribute__((unused)),
-	void*				var_ptr __attribute__((unused)),
-	const void*			save __attribute__((unused)))
+innodb_status_output_update(THD*,st_mysql_sys_var*,void*var,const void*save)
 {
-	*static_cast(var_ptr) = *static_cast(save);
+	*static_cast(var) = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	/* Wakeup server monitor thread. */
 	os_event_set(srv_monitor_event);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_threads */
+/** Update the system variable innodb_encryption_threads.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_threads_update(
-/*=============================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_threads_update(THD*,st_mysql_sys_var*,void*,const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_thread_cnt(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_rotate_key_age */
+/** Update the system variable innodb_encryption_rotate_key_age.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_rotate_key_age_update(
-/*====================================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_rotate_key_age_update(THD*,st_mysql_sys_var*,void*,
+					const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_rotate_key_age(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_rotation_iops */
+/** Update the system variable innodb_encryption_rotation_iops.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_rotation_iops_update(
-/*===================================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_rotation_iops_update(THD*,st_mysql_sys_var*,void*,
+				       const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_rotation_iops(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encrypt_tables*/
+/** Update the system variable innodb_encrypt_tables.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encrypt_tables_update(
-/*=========================*/
-	THD*                            thd,    /*!< in: thread handle */
-	struct st_mysql_sys_var*        var,    /*!< in: pointer to
-						system variable */
-	void*                           var_ptr,/*!< out: where the
-						formal string goes */
-	const void*                     save)   /*!< in: immediate result
-						from check function */
+innodb_encrypt_tables_update(THD*,st_mysql_sys_var*,void*,const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_encrypt_tables(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 static SHOW_VAR innodb_status_variables_export[]= {
@@ -19472,11 +19416,10 @@ static MYSQL_SYSVAR_BOOL(disable_sort_file_cache, srv_disable_sort_file_cache,
   "Whether to disable OS system file cache for sort I/O",
   NULL, NULL, FALSE);
 
-static MYSQL_SYSVAR_STR(ft_aux_table, fts_internal_tbl_name2,
-  PLUGIN_VAR_NOCMDARG,
+static MYSQL_SYSVAR_STR(ft_aux_table, innodb_ft_aux_table,
+  PLUGIN_VAR_NOCMDARG | PLUGIN_VAR_MEMALLOC,
   "FTS internal auxiliary table to be checked",
-  innodb_internal_table_validate,
-  innodb_internal_table_update, NULL);
+  innodb_ft_aux_table_validate, NULL, NULL);
 
 static MYSQL_SYSVAR_ULONG(ft_cache_size, fts_max_cache_size,
   PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
@@ -19795,12 +19738,15 @@ innobase_disallow_writes_update(
 						variable */
 	const void*		save)		/* in: temporary storage */
 {
-	*(my_bool*)var_ptr = *(my_bool*)save;
+	const my_bool val = *static_cast(save);
+	*static_cast(var_ptr) = val;
 	ut_a(srv_allow_writes_event);
-	if (*(my_bool*)var_ptr)
+	mysql_mutex_unlock(&LOCK_global_system_variables);
+	if (val)
 		os_event_reset(srv_allow_writes_event);
 	else
 		os_event_set(srv_allow_writes_event);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 static MYSQL_SYSVAR_BOOL(disallow_writes, innobase_disallow_writes,
diff --git a/storage/innobase/handler/ha_innodb.h b/storage/innobase/handler/ha_innodb.h
index 2429c8a3f862a6e0c5e740bfffe784fa1281e2bb..a417828f242fa5aa17e92308affa2a65dcf96297 100644
--- a/storage/innobase/handler/ha_innodb.h
+++ b/storage/innobase/handler/ha_innodb.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -208,7 +208,7 @@ class ha_innobase: public handler
 			     char* remote_path);
 	const char* check_table_options(THD *thd, TABLE* table,
 		HA_CREATE_INFO*	create_info, const bool use_tablespace, const ulint file_format);
-	int create(const char *name, register TABLE *form,
+	int create(const char *name, TABLE *form,
 					HA_CREATE_INFO *create_info);
 	int truncate();
 	int delete_table(const char *name);
diff --git a/storage/innobase/handler/handler0alter.cc b/storage/innobase/handler/handler0alter.cc
index 0d0982fa498d9f50bc77f75ac2a33b14c84d0eb4..24db706d0bcc77b3b12a60ba145f4447b871cb2e 100644
--- a/storage/innobase/handler/handler0alter.cc
+++ b/storage/innobase/handler/handler0alter.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/handler/i_s.cc b/storage/innobase/handler/i_s.cc
index 8ea6fca63a42c2b93ee4159a1301ab1af8f29e75..2729a7555707c9ae7a24fa18dcad1a7224dd3dd6 100644
--- a/storage/innobase/handler/i_s.cc
+++ b/storage/innobase/handler/i_s.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -64,6 +64,9 @@ Modified Dec 29, 2014 Jan Lindström (Added sys_semaphore_waits)
 #include "fil0fil.h"
 #include "fil0crypt.h"
 
+/** The latest successfully looked up innodb_fts_aux_table */
+UNIV_INTERN table_id_t innodb_ft_aux_table_id;
+
 /** structure associates a name string with a file page type and/or buffer
 page state. */
 struct buf_page_desc_t{
@@ -2934,25 +2937,21 @@ i_s_fts_deleted_generic_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	} else if (!dict_table_has_fts_index(user_table)) {
 		dict_table_close(user_table, FALSE, FALSE);
-
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	}
 
@@ -2967,6 +2966,12 @@ i_s_fts_deleted_generic_fill(
 
 	fts_table_fetch_doc_ids(trx, &fts_table, deleted);
 
+	dict_table_close(user_table, FALSE, FALSE);
+
+	rw_lock_s_unlock(&dict_operation_lock);
+
+	trx_free_for_background(trx);
+
 	fields = table->field;
 
 	int	ret = 0;
@@ -2981,14 +2986,8 @@ i_s_fts_deleted_generic_fill(
 		BREAK_IF(ret = schema_table_store_record(thd, table));
 	}
 
-	trx_free_for_background(trx);
-
 	fts_doc_ids_free(deleted);
 
-	dict_table_close(user_table, FALSE, FALSE);
-
-	rw_lock_s_unlock(&dict_operation_lock);
-
 	DBUG_RETURN(ret);
 }
 
@@ -3348,32 +3347,33 @@ i_s_fts_index_cache_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
+	rw_lock_s_lock(&dict_operation_lock);
+
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
+no_fts:
+		rw_lock_s_unlock(&dict_operation_lock);
 		DBUG_RETURN(0);
 	}
 
-	if (user_table->fts == NULL || user_table->fts->cache == NULL) {
+	if (!user_table->fts || !user_table->fts->cache) {
 		dict_table_close(user_table, FALSE, FALSE);
-
-		DBUG_RETURN(0);
+		goto no_fts;
 	}
 
 	cache = user_table->fts->cache;
 
-	ut_a(cache);
-
 	int			ret = 0;
 	fts_string_t		conv_str;
-	conv_str.f_len = system_charset_info->mbmaxlen
-		* FTS_MAX_WORD_LEN_IN_CHAR;
-	conv_str.f_str = static_cast(ut_malloc(conv_str.f_len));
+	byte			word[HA_FT_MAXBYTELEN + 1];
+	conv_str.f_len = sizeof word;
+	conv_str.f_str = word;
 
 	for (ulint i = 0; i < ib_vector_size(cache->indexes); i++) {
 		fts_index_cache_t*      index_cache;
@@ -3385,9 +3385,8 @@ i_s_fts_index_cache_fill(
 				 index_cache, thd, &conv_str, tables));
 	}
 
-	ut_free(conv_str.f_str);
-
 	dict_table_close(user_table, FALSE, FALSE);
+	rw_lock_s_unlock(&dict_operation_lock);
 
 	DBUG_RETURN(ret);
 }
@@ -3479,6 +3478,7 @@ i_s_fts_index_table_fill_selected(
 	que_t*			graph;
 	dberr_t			error;
 	fts_fetch_t		fetch;
+	char			table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -3499,6 +3499,8 @@ i_s_fts_index_table_fill_selected(
 
 	FTS_INIT_INDEX_TABLE(&fts_table, fts_get_suffix(selected),
 			     FTS_INDEX_TABLE, index);
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		&fts_table, info,
@@ -3506,7 +3508,7 @@ i_s_fts_index_table_fill_selected(
 		"DECLARE CURSOR c IS"
 		" SELECT word, doc_count, first_doc_id, last_doc_id, "
 		"ilist\n"
-		" FROM %s WHERE word >= :word;\n"
+		" FROM $table_name WHERE word >= :word;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -3798,19 +3800,17 @@ i_s_fts_index_table_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	}
 
@@ -3963,32 +3963,28 @@ i_s_fts_config_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
-
-	DEBUG_SYNC_C("i_s_fts_config_fille_check");
-
-	fields = table->field;
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
+no_fts:
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
-	} else if (!dict_table_has_fts_index(user_table)) {
-		dict_table_close(user_table, FALSE, FALSE);
-
-		rw_lock_s_unlock(&dict_operation_lock);
+	}
 
-		DBUG_RETURN(0);
+	if (!dict_table_has_fts_index(user_table)) {
+		dict_table_close(user_table, FALSE, FALSE);
+		goto no_fts;
 	}
 
+	fields = table->field;
+
 	trx = trx_allocate_for_background();
 	trx->op_info = "Select for FTS CONFIG TABLE";
 
@@ -4040,12 +4036,12 @@ i_s_fts_config_fill(
 
 	fts_sql_commit(trx);
 
-	trx_free_for_background(trx);
-
 	dict_table_close(user_table, FALSE, FALSE);
 
 	rw_lock_s_unlock(&dict_operation_lock);
 
+	trx_free_for_background(trx);
+
 	DBUG_RETURN(ret);
 }
 
diff --git a/storage/innobase/handler/i_s.h b/storage/innobase/handler/i_s.h
index 98494c38d1d09659bb697918a9666295268c25ba..9dc025fa649634b8c0d9955a88e1ead7b699fddf 100644
--- a/storage/innobase/handler/i_s.h
+++ b/storage/innobase/handler/i_s.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
-Copyrigth (c) 2014, 2017, MariaDB Corporation.
+Copyrigth (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -27,6 +27,7 @@ Modified Dec 29, 2014 Jan Lindström
 
 #ifndef i_s_h
 #define i_s_h
+#include "dict0types.h"
 
 const char plugin_author[] = "Oracle Corporation";
 const char maria_plugin_author[] = "MariaDB Corporation";
@@ -64,6 +65,9 @@ extern struct st_maria_plugin	i_s_innodb_tablespaces_encryption;
 extern struct st_maria_plugin	i_s_innodb_tablespaces_scrubbing;
 extern struct st_maria_plugin	i_s_innodb_sys_semaphore_waits;
 
+/** The latest successfully looked up innodb_fts_aux_table */
+extern table_id_t innodb_ft_aux_table_id;
+
 /** maximum number of buffer page info we would cache. */
 #define MAX_BUF_INFO_CACHED		10000
 
diff --git a/storage/innobase/ibuf/ibuf0ibuf.cc b/storage/innobase/ibuf/ibuf0ibuf.cc
index 17fe3ae7511fe57220afa95a4d83e7ba1b896b40..baaa19f3241636fe12a4830f2289b9cd89baa6a8 100644
--- a/storage/innobase/ibuf/ibuf0ibuf.cc
+++ b/storage/innobase/ibuf/ibuf0ibuf.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/api0api.h b/storage/innobase/include/api0api.h
index 500bf4fe3b22de39056b7ce4068fe3a68ada8b4e..1d4882d1f04485479ccac7744965432311d2426f 100644
--- a/storage/innobase/include/api0api.h
+++ b/storage/innobase/include/api0api.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/api0misc.h b/storage/innobase/include/api0misc.h
index fcd748390d1e56cb93bd39076b7ae7eaf3455f18..4827b53d24923582e48f2b57f7c0e6179f1ac68e 100644
--- a/storage/innobase/include/api0misc.h
+++ b/storage/innobase/include/api0misc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0btr.h b/storage/innobase/include/btr0btr.h
index a1882cdd0ad7bfa33d4e084405d7032a73d8ad00..a5661c23fcb64e8b208781374252ec9fba15bd6b 100644
--- a/storage/innobase/include/btr0btr.h
+++ b/storage/innobase/include/btr0btr.h
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0btr.ic b/storage/innobase/include/btr0btr.ic
index 57fccede952acff360d41fcd7be6aab16c717d49..4215a1092bc356ba47c8b921a3aa71b4ed953b5a 100644
--- a/storage/innobase/include/btr0btr.ic
+++ b/storage/innobase/include/btr0btr.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0cur.h b/storage/innobase/include/btr0cur.h
index 51ff300fa1f3c1f6dae204d12bca726e12d3940c..214ae435627d21804cd4dc6b09c67ab6f6301e8f 100644
--- a/storage/innobase/include/btr0cur.h
+++ b/storage/innobase/include/btr0cur.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0cur.ic b/storage/innobase/include/btr0cur.ic
index 43ee3304c0ec4f525cf2df8eca80c33f6d88009d..c27956f29cf3aba43f0bd1a66434feb41acd519f 100644
--- a/storage/innobase/include/btr0cur.ic
+++ b/storage/innobase/include/btr0cur.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0defragment.h b/storage/innobase/include/btr0defragment.h
index 477824c1a35861ca9e5a351c0e443a1ad33e20a0..9f6aba490a8bca00f67fa01b1f5bca58d3752e28 100644
--- a/storage/innobase/include/btr0defragment.h
+++ b/storage/innobase/include/btr0defragment.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0pcur.h b/storage/innobase/include/btr0pcur.h
index dafe14ce55617a96fcf9a655410c821ecfb8beb6..bcb9fb6dba3b45243f875c92bcc15f3d64deba72 100644
--- a/storage/innobase/include/btr0pcur.h
+++ b/storage/innobase/include/btr0pcur.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0pcur.ic b/storage/innobase/include/btr0pcur.ic
index 1cd13824542a631508a2d1e4b204a7b562c14527..05ac35c1ebb899ed11f516ce45626515b194382e 100644
--- a/storage/innobase/include/btr0pcur.ic
+++ b/storage/innobase/include/btr0pcur.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0sea.h b/storage/innobase/include/btr0sea.h
index 4e1df7066d1857dc337d6c2ef20f88531b46a795..06f18c2d23f1d3ca782570e6989b4326c7c0391e 100644
--- a/storage/innobase/include/btr0sea.h
+++ b/storage/innobase/include/btr0sea.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0sea.ic b/storage/innobase/include/btr0sea.ic
index 0bd869be1363473c29abf35fad78a9828fa0d6ad..9a512427fa9b5fad2e19b80a699a51f442494de9 100644
--- a/storage/innobase/include/btr0sea.ic
+++ b/storage/innobase/include/btr0sea.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/btr0types.h b/storage/innobase/include/btr0types.h
index 04b69d8145cc2d2dc3cc2a8fe8a769fd2ccf170b..56705932cf140038c43f0c96d9b884f81e22fdb2 100644
--- a/storage/innobase/include/btr0types.h
+++ b/storage/innobase/include/btr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0buddy.h b/storage/innobase/include/buf0buddy.h
index 7fc4408505de4369f95e94399d3b93c4bcef5f1b..be4415e6557b98fe5763ef49c863eeb518c0aeb5 100644
--- a/storage/innobase/include/buf0buddy.h
+++ b/storage/innobase/include/buf0buddy.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0buddy.ic b/storage/innobase/include/buf0buddy.ic
index 4352ebe89451006583ac71ab7bbfd175496a3341..4ff19eb5ed2ee32f5975ba10225bdecfaebad2c3 100644
--- a/storage/innobase/include/buf0buddy.ic
+++ b/storage/innobase/include/buf0buddy.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0buf.h b/storage/innobase/include/buf0buf.h
index 4850d2432cc5e120288b271a3ec3f930f9c5582d..bcb2252e7dc3bdf90802764a9aae7e2e2824d5c4 100644
--- a/storage/innobase/include/buf0buf.h
+++ b/storage/innobase/include/buf0buf.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0buf.ic b/storage/innobase/include/buf0buf.ic
index e77c5a842026cb3e48417f6f8de2c0b71cbe82fe..9901ca9224ca3c789c62185053ce324f25205ae2 100644
--- a/storage/innobase/include/buf0buf.ic
+++ b/storage/innobase/include/buf0buf.ic
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0checksum.h b/storage/innobase/include/buf0checksum.h
index 6818345f965d13c3d488a668a5c13dab75766d6a..8a87c4815eab3e6d5bd82062d80597c098bf6761 100644
--- a/storage/innobase/include/buf0checksum.h
+++ b/storage/innobase/include/buf0checksum.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0dblwr.h b/storage/innobase/include/buf0dblwr.h
index 7b7464761cc1d2500039a5d30fae8c313e36d71f..3d51c1e1061ec1e7899106ee2fa7d8eec7d7924f 100644
--- a/storage/innobase/include/buf0dblwr.h
+++ b/storage/innobase/include/buf0dblwr.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0dump.h b/storage/innobase/include/buf0dump.h
index c704a8e97e090e514891b03f9d750a335294ab55..32db2a0eb0277c4194624d0f54a23167d1705b30 100644
--- a/storage/innobase/include/buf0dump.h
+++ b/storage/innobase/include/buf0dump.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0flu.h b/storage/innobase/include/buf0flu.h
index f503d52802cda4cca9d8947e92102da3edf5f94a..676a412f64ea8af11a34bf4fabad6147badc8e43 100644
--- a/storage/innobase/include/buf0flu.h
+++ b/storage/innobase/include/buf0flu.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0flu.ic b/storage/innobase/include/buf0flu.ic
index a763cd115fe6a6bbfbd7d06e79d81cce8e92f450..dd049daa7261ef6894390f0dc61519124a647d06 100644
--- a/storage/innobase/include/buf0flu.ic
+++ b/storage/innobase/include/buf0flu.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0lru.h b/storage/innobase/include/buf0lru.h
index b04086287ce19ad74a88a491d0b3f1dfe6c01c34..09100b35e688133b87eae273b45fe4ab48e57cb0 100644
--- a/storage/innobase/include/buf0lru.h
+++ b/storage/innobase/include/buf0lru.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -202,13 +202,13 @@ buf_LRU_make_block_old(
 Updates buf_pool->LRU_old_ratio.
 @return	updated old_pct */
 UNIV_INTERN
-ulint
+uint
 buf_LRU_old_ratio_update(
 /*=====================*/
 	uint	old_pct,/*!< in: Reserve this percentage of
 			the buffer pool for "old" blocks. */
-	ibool	adjust);/*!< in: TRUE=adjust the LRU list;
-			FALSE=just assign buf_pool->LRU_old_ratio
+	bool	adjust);/*!< in: true=adjust the LRU list;
+			false=just assign buf_pool->LRU_old_ratio
 			during the initialization of InnoDB */
 /********************************************************************//**
 Update the historical stats that we are collecting for LRU eviction
diff --git a/storage/innobase/include/buf0lru.ic b/storage/innobase/include/buf0lru.ic
index 6e0da7a25886a8a106785e4aff578506eaafc2d3..b39fc06e96cbbac159c4a6da39b04182ca2734b3 100644
--- a/storage/innobase/include/buf0lru.ic
+++ b/storage/innobase/include/buf0lru.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0mtflu.h b/storage/innobase/include/buf0mtflu.h
index 0475335bbf53d70432cabd4db55b33aec5c6a0d4..5f11de572adb85fde997960dc81c8734eb94c0e6 100644
--- a/storage/innobase/include/buf0mtflu.h
+++ b/storage/innobase/include/buf0mtflu.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0rea.h b/storage/innobase/include/buf0rea.h
index 83f145d8dafa040598706f46b7f04eb3b190b5b1..5ca9ea478e0f8b66a41abdbc1e04970ff1067613 100644
--- a/storage/innobase/include/buf0rea.h
+++ b/storage/innobase/include/buf0rea.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/buf0types.h b/storage/innobase/include/buf0types.h
index 511240d669d965427ba8e24dad6d733c675f1699..8a7b5c6d9cb8d5b4ed5054838cdf2e401d691339 100644
--- a/storage/innobase/include/buf0types.h
+++ b/storage/innobase/include/buf0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/data0data.h b/storage/innobase/include/data0data.h
index 1d954bfc07cbe1e3bc74e59827b8538a840b7ffc..2cd9f61baf4e13e1fedb6d4ec5cd74d9dd241869 100644
--- a/storage/innobase/include/data0data.h
+++ b/storage/innobase/include/data0data.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/data0data.ic b/storage/innobase/include/data0data.ic
index deac969a03d7a5711377c772f37c02a945b7303b..21f534d1be79c65dfe8669de2be71ca9e43d76e9 100644
--- a/storage/innobase/include/data0data.ic
+++ b/storage/innobase/include/data0data.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/data0type.h b/storage/innobase/include/data0type.h
index 28182782105b7723de3781e4b258d399d193ee7d..11ff98ca19eb3e10c95c99cdc33387bc1f89d330 100644
--- a/storage/innobase/include/data0type.h
+++ b/storage/innobase/include/data0type.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/data0type.ic b/storage/innobase/include/data0type.ic
index c04da618a849dc1c27a3033977636b238f191efd..9d1d6d58b6e7da7c50a20584a3f011f1f57ef9e3 100644
--- a/storage/innobase/include/data0type.ic
+++ b/storage/innobase/include/data0type.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/data0types.h b/storage/innobase/include/data0types.h
index bd2bb57761194562fa35da1647869800d4a5efca..bcd6b8bc21e7c3062996819f833d904ff8ea0827 100644
--- a/storage/innobase/include/data0types.h
+++ b/storage/innobase/include/data0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/db0err.h b/storage/innobase/include/db0err.h
index 4bd007323a9f87a4a6f9e3eb8ab9902546cbc5e9..09eafc0e9d84e54fd668946af362b6c9ca9a754d 100644
--- a/storage/innobase/include/db0err.h
+++ b/storage/innobase/include/db0err.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0boot.h b/storage/innobase/include/dict0boot.h
index 477e1150f437ba445c3fa5d96446bfbf905d35d3..186c8b50b8d732434c3f95332b3009f128729521 100644
--- a/storage/innobase/include/dict0boot.h
+++ b/storage/innobase/include/dict0boot.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0boot.ic b/storage/innobase/include/dict0boot.ic
index 2b156a4f67263e0c7f17b9d2d99d6c8d3d84bd49..2f12e7a5d4965ad9705e56a2122eb212da84101a 100644
--- a/storage/innobase/include/dict0boot.ic
+++ b/storage/innobase/include/dict0boot.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0crea.h b/storage/innobase/include/dict0crea.h
index 150c76b2e6594cddc9301e777e0421062332931c..2a92c523e35ea9284f5ea73d9f614257bbd0378c 100644
--- a/storage/innobase/include/dict0crea.h
+++ b/storage/innobase/include/dict0crea.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0crea.ic b/storage/innobase/include/dict0crea.ic
index 3eb3ddfa84efe3aa89bb3acf88ca7e058c776e2e..59d6fb9d80c0460131042d4451b70ef2d2f5b23b 100644
--- a/storage/innobase/include/dict0crea.ic
+++ b/storage/innobase/include/dict0crea.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0dict.h b/storage/innobase/include/dict0dict.h
index 7011f4a9226d1c8d06756668289baa51e0e6240d..37f2a4e2b23b66908d79fee723e782d90e0e75d7 100644
--- a/storage/innobase/include/dict0dict.h
+++ b/storage/innobase/include/dict0dict.h
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0dict.ic b/storage/innobase/include/dict0dict.ic
index 60c33fc067965121e39b141b1e070c752d2928bd..bd1d529f753f84e05e8b8426fa4ae6d471b24b4b 100644
--- a/storage/innobase/include/dict0dict.ic
+++ b/storage/innobase/include/dict0dict.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0load.h b/storage/innobase/include/dict0load.h
index dcbc3de8e942f00636aaf5c304a56d8c526a7dff..1d68fcc58f3541f0b8bc5bfa71075d4b7466cee5 100644
--- a/storage/innobase/include/dict0load.h
+++ b/storage/innobase/include/dict0load.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0load.ic b/storage/innobase/include/dict0load.ic
index 2c0f1ff38a5c7eb395c29139ac3ca417a31a7472..a0b0feb56ddfb68f5eeac9b212d26f831f08a41e 100644
--- a/storage/innobase/include/dict0load.ic
+++ b/storage/innobase/include/dict0load.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0mem.h b/storage/innobase/include/dict0mem.h
index 0b8a9acdfa079e80b113984f7655c04b8a85be3c..505d4925324f2081715af9aab843e165367a056d 100644
--- a/storage/innobase/include/dict0mem.h
+++ b/storage/innobase/include/dict0mem.h
@@ -2,7 +2,7 @@
 
 Copyright (c) 1996, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1181,7 +1181,7 @@ struct dict_table_t{
 				goes to zero. If it's -1, means there's DDL
 		                on the table, DML from memcached will be
 				blocked. */
-	ib_time_t	stats_last_recalc;
+	time_t		stats_last_recalc;
 				/*!< Timestamp of last recalc of the stats */
 	ib_uint32_t	stat_persistent;
 				/*!< The two bits below are set in the
diff --git a/storage/innobase/include/dict0mem.ic b/storage/innobase/include/dict0mem.ic
index 38d51f61789650954fe9082e3483836d365ca223..9acdd6a45cc7b5cc3e52ae89238cbfa0246f0b66 100644
--- a/storage/innobase/include/dict0mem.ic
+++ b/storage/innobase/include/dict0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0pagecompress.h b/storage/innobase/include/dict0pagecompress.h
index 6503c86ffa27d0f71ef24a6e1963a4c64dd86812..9c0c551d9e1ce78f801d29cc3edb8f0d2381c8f7 100644
--- a/storage/innobase/include/dict0pagecompress.h
+++ b/storage/innobase/include/dict0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0pagecompress.ic b/storage/innobase/include/dict0pagecompress.ic
index 13c2b46c51caf2a6c1d562e95914efe308a6a386..6311668ee8a8060c47e5b5a95218e7b8d5809909 100644
--- a/storage/innobase/include/dict0pagecompress.ic
+++ b/storage/innobase/include/dict0pagecompress.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0priv.h b/storage/innobase/include/dict0priv.h
index e034662aba0462de7e7d7f3eaca681e40880721f..3ebd7599703a862d643994d0158b05e09dbf2aca 100644
--- a/storage/innobase/include/dict0priv.h
+++ b/storage/innobase/include/dict0priv.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0priv.ic b/storage/innobase/include/dict0priv.ic
index 983218af78a50df37fb31022ad95d37ad716e76a..e9b111c3271be81b577a15d926c64165735b246c 100644
--- a/storage/innobase/include/dict0priv.ic
+++ b/storage/innobase/include/dict0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0stats.h b/storage/innobase/include/dict0stats.h
index 72501bf9429cc9b2aa51ea892b3e8e484e597dc6..4eda752c46f27cd3bed2062052607beb433ba0cc 100644
--- a/storage/innobase/include/dict0stats.h
+++ b/storage/innobase/include/dict0stats.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0stats.ic b/storage/innobase/include/dict0stats.ic
index ec9a9065470d4aa41c190f2f7211aff71031a70d..940100077609cb1269adeac6175ea9d763d624e0 100644
--- a/storage/innobase/include/dict0stats.ic
+++ b/storage/innobase/include/dict0stats.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0stats_bg.h b/storage/innobase/include/dict0stats_bg.h
index 66fcf7a09982e46221c13cc64fdc6ddfd61c53f1..a14c183c667393075f59549b2521a945faacc763 100644
--- a/storage/innobase/include/dict0stats_bg.h
+++ b/storage/innobase/include/dict0stats_bg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0stats_bg.ic b/storage/innobase/include/dict0stats_bg.ic
index 87e3225de58954ec1a66ac00e8d43e547ada370c..7e0d596afa95a497ddf733cd134c6e651048f53a 100644
--- a/storage/innobase/include/dict0stats_bg.ic
+++ b/storage/innobase/include/dict0stats_bg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dict0types.h b/storage/innobase/include/dict0types.h
index 35430e8ea6248f4fc11a84396d09b79c1f4b43ef..25facfbaf087a9312780abf09db01e8b2e3708c8 100644
--- a/storage/innobase/include/dict0types.h
+++ b/storage/innobase/include/dict0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dyn0dyn.h b/storage/innobase/include/dyn0dyn.h
index 1bd10b6bf58bc7393dc30f9a4a5e9ad8639b7224..2fbfb838b59ccaa476302b2e6fb4be03705e4ebf 100644
--- a/storage/innobase/include/dyn0dyn.h
+++ b/storage/innobase/include/dyn0dyn.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/dyn0dyn.ic b/storage/innobase/include/dyn0dyn.ic
index 13003862638bab65dbf18630d46cc4a091483341..6f2fbc4a153b62e924e2efa39d4b877c183fb90c 100644
--- a/storage/innobase/include/dyn0dyn.ic
+++ b/storage/innobase/include/dyn0dyn.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/eval0eval.h b/storage/innobase/include/eval0eval.h
index e3b1e6c16b6ff018cf7259213f146a393f57cf35..4301b491ad2662d84bba821a69efb82a9cb2be09 100644
--- a/storage/innobase/include/eval0eval.h
+++ b/storage/innobase/include/eval0eval.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/eval0eval.ic b/storage/innobase/include/eval0eval.ic
index e4b1dd08017ee8ed2d5ae6047b28bea93051d87b..47d70d593223fb0eb606ec13f01a432506166607 100644
--- a/storage/innobase/include/eval0eval.ic
+++ b/storage/innobase/include/eval0eval.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/eval0proc.h b/storage/innobase/include/eval0proc.h
index 7755fb10343f2fee94572a987dad405f5de9c29d..6dfeff1cc89c3022b76b5d92e88f4d406962364f 100644
--- a/storage/innobase/include/eval0proc.h
+++ b/storage/innobase/include/eval0proc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/eval0proc.ic b/storage/innobase/include/eval0proc.ic
index 81418bae2c916f7de190a9ba4c848588ef705678..c3ba8a97d3f75745015dfff561335352a585360e 100644
--- a/storage/innobase/include/eval0proc.ic
+++ b/storage/innobase/include/eval0proc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fil0crypt.h b/storage/innobase/include/fil0crypt.h
index 5e828ae41bb2ef9e0555b6491503d81b28ab5a02..2b4f924247c3247ed6d53aa1d719c7bb9b3832d0 100644
--- a/storage/innobase/include/fil0crypt.h
+++ b/storage/innobase/include/fil0crypt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fil0crypt.ic b/storage/innobase/include/fil0crypt.ic
index cb9ba083466b79a456ebbe73dae44b7427e74138..0c3b0114487392e8e443e622037107145aeb6a90 100644
--- a/storage/innobase/include/fil0crypt.ic
+++ b/storage/innobase/include/fil0crypt.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fil0fil.h b/storage/innobase/include/fil0fil.h
index 79a598b3612ea3a86e9689d90ffc52a0630799a7..4bd394ff94d049aecf4e82338a6dcbe457775e34 100644
--- a/storage/innobase/include/fil0fil.h
+++ b/storage/innobase/include/fil0fil.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -843,6 +843,18 @@ fil_op_log_parse_or_replay(
 				only be parsed but not replayed */
 	ulint	log_flags);	/*!< in: redo log flags
 				(stored in the page number parameter) */
+
+/** Determine whether a table can be accessed in operations that are
+not (necessarily) protected by meta-data locks.
+(Rollback would generally be protected, but rollback of
+FOREIGN KEY CASCADE/SET NULL is not protected by meta-data locks
+but only by InnoDB table locks, which may be broken by
+lock_remove_all_on_table().)
+@param[in]	table	persistent table
+checked @return whether the table is accessible */
+UNIV_INTERN bool fil_table_accessible(const dict_table_t* table)
+	MY_ATTRIBUTE((warn_unused_result, nonnull));
+
 /** Delete a tablespace and associated .ibd file.
 @param[in]	id		tablespace identifier
 @param[in]	drop_ahi	whether to drop the adaptive hash index
diff --git a/storage/innobase/include/fil0fil.ic b/storage/innobase/include/fil0fil.ic
index 3f21c5293081e17e044f2a0be11676a3c286c306..e9e681ffbef128deab19c1a0312d8915722b2167 100644
--- a/storage/innobase/include/fil0fil.ic
+++ b/storage/innobase/include/fil0fil.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fil0pagecompress.h b/storage/innobase/include/fil0pagecompress.h
index 934372c55b2a45169f07b4e0d11d21ab37aac309..c2f94247d2af10eab786ee0ee3258fbc9580be21 100644
--- a/storage/innobase/include/fil0pagecompress.h
+++ b/storage/innobase/include/fil0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fsp0fsp.h b/storage/innobase/include/fsp0fsp.h
index c11c48d58cfd545138b5d2a52c8e8ec3d791354c..90939e02db1ad759737efd412a2b369a4cbf261c 100644
--- a/storage/innobase/include/fsp0fsp.h
+++ b/storage/innobase/include/fsp0fsp.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fsp0fsp.ic b/storage/innobase/include/fsp0fsp.ic
index 59c732b7a29ee4fc488c8a86938ef967ac242803..a59f000180d8267c2cc993e2e99eb73e3e32ef09 100644
--- a/storage/innobase/include/fsp0fsp.ic
+++ b/storage/innobase/include/fsp0fsp.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fsp0pagecompress.h b/storage/innobase/include/fsp0pagecompress.h
index c623d11c32607f0d5f842666b8f2031c5c7bd123..0dfbc258e0512caaeac42c2e776ae2e9a37e6e99 100644
--- a/storage/innobase/include/fsp0pagecompress.h
+++ b/storage/innobase/include/fsp0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fsp0pagecompress.ic b/storage/innobase/include/fsp0pagecompress.ic
index 99d0dfb3c7cbdfee7b60fe659c0f1550fa58c4be..159b0526b8cbc4a8b4d84430d018115d86cc26d1 100644
--- a/storage/innobase/include/fsp0pagecompress.ic
+++ b/storage/innobase/include/fsp0pagecompress.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fsp0types.h b/storage/innobase/include/fsp0types.h
index 94063cc66370301f41793edfdccc2ebf85680355..88bd629289a918c93fcc744074e960247415f113 100644
--- a/storage/innobase/include/fsp0types.h
+++ b/storage/innobase/include/fsp0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fts0ast.h b/storage/innobase/include/fts0ast.h
index 983a35797731b353d17ea4e8fa9c61f7284a28b4..b7d467e00822bde5352ddee47c7a4bde81250752 100644
--- a/storage/innobase/include/fts0ast.h
+++ b/storage/innobase/include/fts0ast.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fts0fts.h b/storage/innobase/include/fts0fts.h
index ce30a17c4b4a765b6e904f139f301de36eadd043..a1fab65973229bda771543fb384ab59c32f8da1d 100644
--- a/storage/innobase/include/fts0fts.h
+++ b/storage/innobase/include/fts0fts.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2016, 2017, MariaDB Corporation.
+Copyright (c) 2016, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -151,7 +151,6 @@ do {								\
 	(fts_table)->suffix = m_suffix;				\
         (fts_table)->type = m_type;				\
         (fts_table)->table_id = m_table->id;			\
-        (fts_table)->parent = m_table->name;			\
         (fts_table)->table = m_table;				\
 } while (0);
 
@@ -160,7 +159,6 @@ do {								\
 	(fts_table)->suffix = m_suffix;				\
         (fts_table)->type = m_type;				\
         (fts_table)->table_id = m_index->table->id;		\
-        (fts_table)->parent = m_index->table->name;		\
         (fts_table)->table = m_index->table;			\
         (fts_table)->index_id = m_index->id;			\
 } while (0);
@@ -265,10 +263,6 @@ struct fts_result_t {
 table id and the index id to generate the column specific FTS auxiliary
 table name. */
 struct fts_table_t {
-	const char*	parent;		/*!< Parent table name, this is
-					required only for the database
-					name */
-
 	fts_table_type_t
 			type;		/*!< The auxiliary table type */
 
@@ -373,11 +367,6 @@ extern bool		fts_need_sync;
 /** Maximum possible Fulltext word length (in characters) */
 #define FTS_MAX_WORD_LEN_IN_CHAR	HA_FT_MAXCHARLEN
 
-/** Variable specifying the table that has Fulltext index to display its
-content through information schema table */
-extern char*		fts_internal_tbl_name;
-extern char*		fts_internal_tbl_name2;
-
 #define	fts_que_graph_free(graph)			\
 do {							\
 	mutex_enter(&dict_sys->mutex);			\
@@ -424,7 +413,6 @@ fts_update_next_doc_id(
 /*===================*/
 	trx_t*			trx,		/*!< in/out: transaction */
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id)		/*!< in: DOC ID to set */
 	MY_ATTRIBUTE((nonnull(2)));
 
@@ -436,13 +424,11 @@ fts_doc_ids_t*
 fts_doc_ids_create(void);
 /*=====================*/
 
-/******************************************************************//**
-Free a fts_doc_ids_t. */
-UNIV_INTERN
-void
-fts_doc_ids_free(
-/*=============*/
-	fts_doc_ids_t*	doc_ids);		/*!< in: doc_ids to free */
+/** Free fts_doc_ids_t */
+inline void fts_doc_ids_free(fts_doc_ids_t* doc_ids)
+{
+	mem_heap_free(static_cast(doc_ids->self_heap->arg));
+}
 
 /******************************************************************//**
 Notify the FTS system about an operation on an FTS-indexed table. */
diff --git a/storage/innobase/include/fts0opt.h b/storage/innobase/include/fts0opt.h
index 92eaf8270d2af5f78ad19e22d160cc05f2b64964..e8bd4be95b7af4b2ad03cb145e435e269e6d9275 100644
--- a/storage/innobase/include/fts0opt.h
+++ b/storage/innobase/include/fts0opt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fts0priv.h b/storage/innobase/include/fts0priv.h
index a3936f54a48c08d655203f97e986fcea1f08bb69..266534c9511ea7e514deae1e3a1ac6ba668a1af5 100644
--- a/storage/innobase/include/fts0priv.h
+++ b/storage/innobase/include/fts0priv.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -132,16 +133,15 @@ fts_eval_sql(
 	trx_t*		trx,		/*!< in: transaction */
 	que_t*		graph)		/*!< in: Parsed statement */
 	MY_ATTRIBUTE((nonnull, warn_unused_result));
-/******************************************************************//**
-Construct the name of an ancillary FTS table for the given table.
-@return own: table name, must be freed with mem_free() */
+
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[out]	table_name	a name up to MAX_FULL_NAME_LEN
+@param[in]	dict_locked	whether dict_sys->mutex is being held */
 UNIV_INTERN
-char*
-fts_get_table_name(
-/*===============*/
-	const fts_table_t*
-			fts_table)	/*!< in: FTS aux table info */
-	MY_ATTRIBUTE((nonnull, malloc, warn_unused_result));
+void fts_get_table_name(const fts_table_t* fts_table, char* table_name,
+			bool dict_locked = false)
+	MY_ATTRIBUTE((nonnull));
 /******************************************************************//**
 Construct the column specification part of the SQL string for selecting the
 indexed FTS columns for the given table. Adds the necessary bound
@@ -597,15 +597,11 @@ fts_get_table_id(
 					FTS_AUX_MIN_TABLE_ID_LENGTH bytes
 					long */
 	MY_ATTRIBUTE((nonnull, warn_unused_result));
-/******************************************************************//**
-Construct the prefix name of an FTS table.
-@return own: table name, must be freed with mem_free() */
-UNIV_INTERN
-char*
-fts_get_table_name_prefix(
-/*======================*/
-	const fts_table_t*
-			fts_table)	/*!< in: Auxiliary table type */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[in]	dict_locked	whether dict_sys->mutex is being held
+@return	the prefix, must be freed with ut_free() */
+UNIV_INTERN char* fts_get_table_name_prefix(const fts_table_t* fts_table)
 	MY_ATTRIBUTE((nonnull, malloc, warn_unused_result));
 /******************************************************************//**
 Add node positions. */
diff --git a/storage/innobase/include/fts0priv.ic b/storage/innobase/include/fts0priv.ic
index 88f2d67c7b898b8653de978b489143bf9df696a7..6d52edc75a1589cbf8b80d505e56db67404dac59 100644
--- a/storage/innobase/include/fts0priv.ic
+++ b/storage/innobase/include/fts0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fts0types.h b/storage/innobase/include/fts0types.h
index 9ecd9080881c3e7810eb56d0c99f78c68b6daba0..3cb01a92df03be016402c493169a832f44792c2f 100644
--- a/storage/innobase/include/fts0types.h
+++ b/storage/innobase/include/fts0types.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2016, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -122,7 +123,8 @@ struct fts_sync_t {
 	doc_id_t	max_doc_id;	/*!< The doc id at which the cache was
 					noted as being full, we use this to
 					set the upper_limit field */
-	ib_time_t	start_time;	/*!< SYNC start time */
+	time_t		start_time;	/*!< SYNC start time; only used if
+					fts_enable_diag_print */
 	bool		in_progress;	/*!< flag whether sync is in progress.*/
 	bool		unlock_cache;	/*!< flag whether unlock cache when
 					write fts node */
diff --git a/storage/innobase/include/fts0types.ic b/storage/innobase/include/fts0types.ic
index f0dfd023a70afd575618c9bed27bd26fa659c1cd..5e29cf6d8c59dca10d924c534cd052f5610e005a 100644
--- a/storage/innobase/include/fts0types.ic
+++ b/storage/innobase/include/fts0types.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fts0vlc.ic b/storage/innobase/include/fts0vlc.ic
index e79bcf593477c6b9a3f60d96db8f7415a49a7860..75d8535057e8bc2f2c3f3be881579185ef309086 100644
--- a/storage/innobase/include/fts0vlc.ic
+++ b/storage/innobase/include/fts0vlc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fut0fut.h b/storage/innobase/include/fut0fut.h
index 851cdb44cdf175989521604d2bcf743d21ea3be8..4f7b9af2e5e8736778c4be60d54ecd17e2f2e4ac 100644
--- a/storage/innobase/include/fut0fut.h
+++ b/storage/innobase/include/fut0fut.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fut0fut.ic b/storage/innobase/include/fut0fut.ic
index b065b10b9ca2eeb0a8d58b5b2cb5cc1800c815d9..fd46f2d7f3d0fafdf1680b116ea9c89fed92a2bc 100644
--- a/storage/innobase/include/fut0fut.ic
+++ b/storage/innobase/include/fut0fut.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fut0lst.h b/storage/innobase/include/fut0lst.h
index 8554cc60cdde4c1c019c83b1075a63970447aa6a..f8a99bf1bd41abdf0edfa346c1fd8c5640fe1082 100644
--- a/storage/innobase/include/fut0lst.h
+++ b/storage/innobase/include/fut0lst.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/fut0lst.ic b/storage/innobase/include/fut0lst.ic
index d18cf21378f520a77073d3a97a66540da07bb705..ba617ff0db58b2eaf79a1715816bd66bb7dd65d3 100644
--- a/storage/innobase/include/fut0lst.ic
+++ b/storage/innobase/include/fut0lst.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ha0ha.h b/storage/innobase/include/ha0ha.h
index a4ea5f6371a5a05b7db81f93590aed9321b4fd44..879f1269e2471c7982885df92cd47cd8554b520d 100644
--- a/storage/innobase/include/ha0ha.h
+++ b/storage/innobase/include/ha0ha.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ha0ha.ic b/storage/innobase/include/ha0ha.ic
index c478ff54303c214a0d5e8074cdb4f6b91a57a01f..b09a24dced347c3535fbf46a4944b8396d7e7c5e 100644
--- a/storage/innobase/include/ha0ha.ic
+++ b/storage/innobase/include/ha0ha.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ha0storage.h b/storage/innobase/include/ha0storage.h
index 0073930b502ed5164224a6831167477f6f1dfd19..d4e680a10a3ebf783ddd5233f64bd16c66df57ac 100644
--- a/storage/innobase/include/ha0storage.h
+++ b/storage/innobase/include/ha0storage.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ha0storage.ic b/storage/innobase/include/ha0storage.ic
index 7150ca045ece1d271aabffeea8355de8fdd4ffff..03df7be5e737a405cef3044d9b61b87eb57c9a05 100644
--- a/storage/innobase/include/ha0storage.ic
+++ b/storage/innobase/include/ha0storage.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ha_prototypes.h b/storage/innobase/include/ha_prototypes.h
index be423c8bd01f9523644aaa7756328883155b34d7..bcf8a8936952575e3487641ba3972f7a71dbed9a 100644
--- a/storage/innobase/include/ha_prototypes.h
+++ b/storage/innobase/include/ha_prototypes.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/handler0alter.h b/storage/innobase/include/handler0alter.h
index 63379ad93716be302a0680c7495d10d665449f5e..ca71edb42fc9517306116b91d898487c08b666d3 100644
--- a/storage/innobase/include/handler0alter.h
+++ b/storage/innobase/include/handler0alter.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/hash0hash.h b/storage/innobase/include/hash0hash.h
index 9a4077befb1e28b38a6bd51c00195cdf96138c41..aff679c5301df53e3912501c4ca3a8afdb2369e4 100644
--- a/storage/innobase/include/hash0hash.h
+++ b/storage/innobase/include/hash0hash.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/hash0hash.ic b/storage/innobase/include/hash0hash.ic
index 254f3f82e5d48c90814253c1898d41bcb8decef1..f32c33e5da75c94a94f10a0e39a727f33e10e545 100644
--- a/storage/innobase/include/hash0hash.ic
+++ b/storage/innobase/include/hash0hash.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ibuf0ibuf.h b/storage/innobase/include/ibuf0ibuf.h
index 09c48822b9ff2b6a6aeec101bc7f0d24ee53a17c..bfd1d75d8c3a1cb24d44eb5415b9bd08707a2674 100644
--- a/storage/innobase/include/ibuf0ibuf.h
+++ b/storage/innobase/include/ibuf0ibuf.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ibuf0ibuf.ic b/storage/innobase/include/ibuf0ibuf.ic
index a5df9f7b6b433b743aacaaeec6b5b812bd44baff..d26a8c60a04cf7bb005e01e27c79fcd25c257419 100644
--- a/storage/innobase/include/ibuf0ibuf.ic
+++ b/storage/innobase/include/ibuf0ibuf.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ibuf0types.h b/storage/innobase/include/ibuf0types.h
index 3fdbf078b0ba2dd152f454755ad205cc82759a15..6b7c47208a093ee937c2f0db38c3d2b77a9fa1d7 100644
--- a/storage/innobase/include/ibuf0types.h
+++ b/storage/innobase/include/ibuf0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/lock0iter.h b/storage/innobase/include/lock0iter.h
index 0054850b5263e0a601de6d560c6f809b191313dc..e63ed54bbd0bae44ef7189ceacb7281da1d2b6db 100644
--- a/storage/innobase/include/lock0iter.h
+++ b/storage/innobase/include/lock0iter.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/lock0lock.h b/storage/innobase/include/lock0lock.h
index b4259cd4851f1176ed7d9c17b80a0b0df8aac2a5..2628cdfc461c640ea9a52aa79f60888c1687767b 100644
--- a/storage/innobase/include/lock0lock.h
+++ b/storage/innobase/include/lock0lock.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -615,22 +615,6 @@ lock_report_trx_id_insanity(
 	trx_id_t	max_trx_id)	/*!< in: trx_sys_get_max_trx_id() */
 	MY_ATTRIBUTE((nonnull));
 /*********************************************************************//**
-Prints info of a table lock. */
-UNIV_INTERN
-void
-lock_table_print(
-/*=============*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock);	/*!< in: table type lock */
-/*********************************************************************//**
-Prints info of a record lock. */
-UNIV_INTERN
-void
-lock_rec_print(
-/*===========*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock);	/*!< in: record type lock */
-/*********************************************************************//**
 Prints info of locks for all transactions.
 @return FALSE if not able to obtain lock mutex and exits without
 printing info */
diff --git a/storage/innobase/include/lock0lock.ic b/storage/innobase/include/lock0lock.ic
index 736936954cbed16fc29b3a8ef54fce96aac5a94b..bce04e582d9f3da0fa2695235fa18529b3da7500 100644
--- a/storage/innobase/include/lock0lock.ic
+++ b/storage/innobase/include/lock0lock.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/lock0priv.h b/storage/innobase/include/lock0priv.h
index b60dd0d92c82481f9b4261589db70adbc60a2157..ef502be904459b68d0424a9291fe73e061c84f63 100644
--- a/storage/innobase/include/lock0priv.h
+++ b/storage/innobase/include/lock0priv.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -74,10 +74,14 @@ struct lock_t {
 					lock */
 	dict_index_t*	index;		/*!< index for a record lock */
 
-	/* Statistics for how long lock has been held and time
-	how long this lock had to be waited before it was granted */
-	time_t		requested_time; /*!< Lock request time */
-	ulint		wait_time;	/*!< Time waited this lock or 0 */
+	/** time(NULL) of the lock request creation.
+	Used for computing wait_time and diagnostics only.
+	Note: bogus durations may be reported
+	when the system time is adjusted! */
+	time_t		requested_time;
+	/** Cumulated wait time in seconds.
+	Note: may be bogus when the system time is adjusted! */
+	ulint		wait_time;
 
 	union {
 		lock_table_t	tab_lock;/*!< table lock */
diff --git a/storage/innobase/include/lock0priv.ic b/storage/innobase/include/lock0priv.ic
index 6b70dc33d3ca62d5f6776b27e4868d4efeb4f981..02c4ff093c8057a3a8d45e18ccc89574e2a77536 100644
--- a/storage/innobase/include/lock0priv.ic
+++ b/storage/innobase/include/lock0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/lock0types.h b/storage/innobase/include/lock0types.h
index cf32e72f8640ebbec51a5d4118913cbc9cdc836e..90c6f6cea4c29b88767054d3678b127d9708f402 100644
--- a/storage/innobase/include/lock0types.h
+++ b/storage/innobase/include/lock0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/log0crypt.h b/storage/innobase/include/log0crypt.h
index b7a221e0a8172892a13bd349d5f1d1067b5da1ce..97ceac7b8a7d091980f0d6e48ffecceca3f5a91e 100644
--- a/storage/innobase/include/log0crypt.h
+++ b/storage/innobase/include/log0crypt.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
diff --git a/storage/innobase/include/log0log.h b/storage/innobase/include/log0log.h
index 4403f353826824aba374fc11b5679d93fdb2da34..a30bf563d11af37f238db4a7b269e3def9a4db82 100644
--- a/storage/innobase/include/log0log.h
+++ b/storage/innobase/include/log0log.h
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/log0log.ic b/storage/innobase/include/log0log.ic
index 38ed2b51a4eb2ecc0307889ef1c64e9b2e06755d..7bcd7f130851421c6eb40ed62c6092782314e2a5 100644
--- a/storage/innobase/include/log0log.ic
+++ b/storage/innobase/include/log0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/log0recv.h b/storage/innobase/include/log0recv.h
index dca99f2a7a5a0c8aae77976730c78cf01f17fe36..f030881edc90c1912160e16c2e27fadf076f242e 100644
--- a/storage/innobase/include/log0recv.h
+++ b/storage/innobase/include/log0recv.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -426,7 +426,7 @@ struct recv_sys_t{
 				log record, or there is a log parsing
 				buffer overflow */
 	/** the time when progress was last reported */
-	ib_time_t	progress_time;
+	time_t		progress_time;
 #ifdef UNIV_LOG_ARCHIVE
 	log_group_t*	archive_group;
 				/*!< in archive recovery: the log group whose
@@ -444,7 +444,7 @@ struct recv_sys_t{
 	@param[in]	time	the current time
 	@return	whether progress should be reported
 		(the last report was at least 15 seconds ago) */
-	bool report(ib_time_t time)
+	bool report(time_t time)
 	{
 		if (time - progress_time < 15) {
 			return false;
diff --git a/storage/innobase/include/log0recv.ic b/storage/innobase/include/log0recv.ic
index 32c28dd03e6c9f84c26d12b6c98761d47b46e4a4..332d656255f830a6accae15398cfa54025ed417d 100644
--- a/storage/innobase/include/log0recv.ic
+++ b/storage/innobase/include/log0recv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mach0data.h b/storage/innobase/include/mach0data.h
index 9859def0adc9ff973f608521967f0e46adb4c9c6..24eee4a0071c3c3c89d0c2f4cb47c102be522c7c 100644
--- a/storage/innobase/include/mach0data.h
+++ b/storage/innobase/include/mach0data.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mach0data.ic b/storage/innobase/include/mach0data.ic
index 72e793da8fdef44033b8561fc84a44989c993d5d..c4837596f0530567f963ecea8d2c9fa28253fab3 100644
--- a/storage/innobase/include/mach0data.ic
+++ b/storage/innobase/include/mach0data.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0dbg.h b/storage/innobase/include/mem0dbg.h
index cc339b8291078a8b5fe09a8b7769a4fc1a186a56..448e5f80f5da6a8fefc4e42853396edf66968417 100644
--- a/storage/innobase/include/mem0dbg.h
+++ b/storage/innobase/include/mem0dbg.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0dbg.ic b/storage/innobase/include/mem0dbg.ic
index ec60ed35337f3cf92168527dac3f885aa61db981..69bb5fd8d90352e7e43347c4ca760ec79cda583c 100644
--- a/storage/innobase/include/mem0dbg.ic
+++ b/storage/innobase/include/mem0dbg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0mem.h b/storage/innobase/include/mem0mem.h
index de9b8b29fd9c79f0f4fffae5aa4c1d3b8147d1a8..b01a0fdee73856a34b5f90f609ab4719e61ceafe 100644
--- a/storage/innobase/include/mem0mem.h
+++ b/storage/innobase/include/mem0mem.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0mem.ic b/storage/innobase/include/mem0mem.ic
index 2b4638718fd11770488d4ecb8408aa6e66c12ede..3010bbf5c021496a4ce438aa2f242162ec452bff 100644
--- a/storage/innobase/include/mem0mem.ic
+++ b/storage/innobase/include/mem0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0pool.h b/storage/innobase/include/mem0pool.h
index a65ba50fdf9cae7ef173575acad26a10f1e6e7e5..d6fb23f74ad33f76634e38a93f7a8949f27b177c 100644
--- a/storage/innobase/include/mem0pool.h
+++ b/storage/innobase/include/mem0pool.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mem0pool.ic b/storage/innobase/include/mem0pool.ic
index f4bafb8ba63ea1999828991f0229c4d32d547551..d99daf59e13fddf254a42117d481f66869adff10 100644
--- a/storage/innobase/include/mem0pool.ic
+++ b/storage/innobase/include/mem0pool.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mtr0log.h b/storage/innobase/include/mtr0log.h
index 18a345d050fb66890d0325048d2461922aa3bfd1..929f68122aff11cb723b31ae6a546cb7e47a50be 100644
--- a/storage/innobase/include/mtr0log.h
+++ b/storage/innobase/include/mtr0log.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mtr0log.ic b/storage/innobase/include/mtr0log.ic
index bdfd98709d1939551311d60651a2353c9779856a..c239140785f2e796aca7a831249c7f564a7b23b9 100644
--- a/storage/innobase/include/mtr0log.ic
+++ b/storage/innobase/include/mtr0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mtr0mtr.h b/storage/innobase/include/mtr0mtr.h
index 1df9fba5e9ede0be487db04ac114ae8c9a14156a..6c0ee2c7ac79e608036b5dc9642ac98b85fc5e21 100644
--- a/storage/innobase/include/mtr0mtr.h
+++ b/storage/innobase/include/mtr0mtr.h
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mtr0mtr.ic b/storage/innobase/include/mtr0mtr.ic
index 3f897ae1d101d94edc687d043af474532f8e7410..5763c054a8f89ba2229a0376972774fe4144b08a 100644
--- a/storage/innobase/include/mtr0mtr.ic
+++ b/storage/innobase/include/mtr0mtr.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/mtr0types.h b/storage/innobase/include/mtr0types.h
index 43368c0b7260e9372828683d19541e6dedb23101..715e9d8b5789a38931a04f819acf7a2e40cac680 100644
--- a/storage/innobase/include/mtr0types.h
+++ b/storage/innobase/include/mtr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0file.h b/storage/innobase/include/os0file.h
index 55e41f6ebb5d65f267535a0c360cf8b5ddc00e06..434b209d3abfb8c657f5dba08209c44a40572b72 100644
--- a/storage/innobase/include/os0file.h
+++ b/storage/innobase/include/os0file.h
@@ -22,7 +22,7 @@ Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 ***********************************************************************/
 
diff --git a/storage/innobase/include/os0file.ic b/storage/innobase/include/os0file.ic
index 2e7c12ecd793f82a305ac335b4c8346ad24ba3f4..f5fe35dd9c97d7fd1c6056154de4e3a6a43519b7 100644
--- a/storage/innobase/include/os0file.ic
+++ b/storage/innobase/include/os0file.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0once.h b/storage/innobase/include/os0once.h
index a8bbaf1d2d4cbdafbb4e69b0f53f716f4e1674a7..aaf2db1174247ce842757925d8e8d7195d2a73dc 100644
--- a/storage/innobase/include/os0once.h
+++ b/storage/innobase/include/os0once.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0proc.h b/storage/innobase/include/os0proc.h
index 613e3bd6947d9ea1762252858c89483d355c476d..3103bddb97245bf312fb651bcc4223fe413cc296 100644
--- a/storage/innobase/include/os0proc.h
+++ b/storage/innobase/include/os0proc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0proc.ic b/storage/innobase/include/os0proc.ic
index 506f4f8ce0c1d134c74456c92ffa3f35986f1e6c..4726eb56f6ddd8d2ac60b324e3e6aad1cf9257cb 100644
--- a/storage/innobase/include/os0proc.ic
+++ b/storage/innobase/include/os0proc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0sync.h b/storage/innobase/include/os0sync.h
index bb225c53dfe25c2fc0b744058a75f531aecd820e..c4185e814ca13a78abc7f0fc6dfb784c28e3c83b 100644
--- a/storage/innobase/include/os0sync.h
+++ b/storage/innobase/include/os0sync.h
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0sync.ic b/storage/innobase/include/os0sync.ic
index 4ebf84dba988ffa0e83b1625994bc6ca756d53c8..f0eba9b440f8c271bcf0c1918cb3f033c0d321f8 100644
--- a/storage/innobase/include/os0sync.ic
+++ b/storage/innobase/include/os0sync.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0thread.h b/storage/innobase/include/os0thread.h
index 54f3d7554bf9568e22ea73b00c516fd39b0e1112..dd129edef2c57836ea2e159137831fa1362fa701 100644
--- a/storage/innobase/include/os0thread.h
+++ b/storage/innobase/include/os0thread.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/os0thread.ic b/storage/innobase/include/os0thread.ic
index 0622d22f2dcf806c30d9d9d182f2687755f7100a..15f9b277fa1287a9831ca1ef10638d70f53f93c0 100644
--- a/storage/innobase/include/os0thread.ic
+++ b/storage/innobase/include/os0thread.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0cur.h b/storage/innobase/include/page0cur.h
index f04667ff29c2ca9c5c4e1ff1f53de859a8eccdfc..aec7c63563cc404f68a05998dedea3ab47f418d3 100644
--- a/storage/innobase/include/page0cur.h
+++ b/storage/innobase/include/page0cur.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0cur.ic b/storage/innobase/include/page0cur.ic
index 6e068d9f739c30c804ec069d8d5aedf04ea26a32..9d0e8408c54f76a86bd747edb733da54e1314958 100644
--- a/storage/innobase/include/page0cur.ic
+++ b/storage/innobase/include/page0cur.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0page.h b/storage/innobase/include/page0page.h
index 9c6d430eb2ae1b45bc93e4cf4574062d2926c500..64ae31905b4a8bfd7fcc3802cbddbf2951072682 100644
--- a/storage/innobase/include/page0page.h
+++ b/storage/innobase/include/page0page.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0page.ic b/storage/innobase/include/page0page.ic
index 7a1a3be91ec0a7e5fce41fddc08d3369201228d2..638ff609e6774627260bbe1b08d9622b1077039e 100644
--- a/storage/innobase/include/page0page.ic
+++ b/storage/innobase/include/page0page.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0size.h b/storage/innobase/include/page0size.h
index b1e1254bfc5e89d272857818df48c412b0cfd07a..0b3fa905cf5438d78bf59c24480fed938bb58a97 100644
--- a/storage/innobase/include/page0size.h
+++ b/storage/innobase/include/page0size.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0types.h b/storage/innobase/include/page0types.h
index 2892e8608758e765cb031d83fc2d11c914ce00f6..cba2d7a7a8b7f2be9dea1a733a96e1ba5dbe7ee1 100644
--- a/storage/innobase/include/page0types.h
+++ b/storage/innobase/include/page0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0zip.h b/storage/innobase/include/page0zip.h
index 0bf77e2fcf3cfdff0b959a477fe31153cdcfc8ab..f45dd412ffc241d4c1960e41d06679c62f15f4fc 100644
--- a/storage/innobase/include/page0zip.h
+++ b/storage/innobase/include/page0zip.h
@@ -15,7 +15,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/page0zip.ic b/storage/innobase/include/page0zip.ic
index 3fa8a08c4f91f13491a7c34c3a50887f9fa8d59a..45979e4d0842ce3425cf2794fd46ef16a78de97c 100644
--- a/storage/innobase/include/page0zip.ic
+++ b/storage/innobase/include/page0zip.ic
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0grm.h b/storage/innobase/include/pars0grm.h
index 8e725fe95454eb83966a154d033c62cf0e6e1cff..d3228f7c0f95179ac57679d90e51dc4358deb7c0 100644
--- a/storage/innobase/include/pars0grm.h
+++ b/storage/innobase/include/pars0grm.h
@@ -18,7 +18,7 @@
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Boston, MA 02110-1335  USA.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
diff --git a/storage/innobase/include/pars0opt.h b/storage/innobase/include/pars0opt.h
index 1084d644c906a49e2e9072661832797175e2183a..ce3e4410ee75b90b961741a9f0f9519c4d7986b3 100644
--- a/storage/innobase/include/pars0opt.h
+++ b/storage/innobase/include/pars0opt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0opt.ic b/storage/innobase/include/pars0opt.ic
index 786d911ca3d33c22405cd4296691c5d68094a777..99075c81d39039608117401fb4aa1b5a0f158d7e 100644
--- a/storage/innobase/include/pars0opt.ic
+++ b/storage/innobase/include/pars0opt.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0pars.h b/storage/innobase/include/pars0pars.h
index 313380a40b454a1ab8ff6c8a8743a029ff7b2097..1032862b20deccbcc0d75884955a1c022a8212ef 100644
--- a/storage/innobase/include/pars0pars.h
+++ b/storage/innobase/include/pars0pars.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0pars.ic b/storage/innobase/include/pars0pars.ic
index 4c88337a265d413ab781c4290e4f432b700782b4..f788f4479bfb14813b966009112fc9741095ab35 100644
--- a/storage/innobase/include/pars0pars.ic
+++ b/storage/innobase/include/pars0pars.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0sym.h b/storage/innobase/include/pars0sym.h
index bcf73639228fe8d220debc1d585e8d464909eee1..d423f84ab5714c0a9728be1e6ec4f4a824c441a5 100644
--- a/storage/innobase/include/pars0sym.h
+++ b/storage/innobase/include/pars0sym.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0sym.ic b/storage/innobase/include/pars0sym.ic
index 266c1a6310df2d89495fd37a6892c0dd950c2d0b..6401a525cc56591596f9082efebee03d4b33a80b 100644
--- a/storage/innobase/include/pars0sym.ic
+++ b/storage/innobase/include/pars0sym.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/pars0types.h b/storage/innobase/include/pars0types.h
index 47f4b432d2037b90e68b8ed3cf96cb0ef7f5bed2..f5b695225c6e0c951fa1c72953d788e2d46208fe 100644
--- a/storage/innobase/include/pars0types.h
+++ b/storage/innobase/include/pars0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/que0que.h b/storage/innobase/include/que0que.h
index f37581cbf8f6f20429eb065c08c02ef542c4020d..4ec24f4081b02c2af34e8d6672a9d741c4f63814 100644
--- a/storage/innobase/include/que0que.h
+++ b/storage/innobase/include/que0que.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/que0que.ic b/storage/innobase/include/que0que.ic
index eff5a86d958860a9f60eb217b6d5821ee86e1d0e..1775467781a5838484a82b19cedd70bd3fa8df9c 100644
--- a/storage/innobase/include/que0que.ic
+++ b/storage/innobase/include/que0que.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/que0types.h b/storage/innobase/include/que0types.h
index 0f11cad301afea64724bf32659ac4746b5129d9f..025cf818ab3c23f2c434a94100b109b57a45d752 100644
--- a/storage/innobase/include/que0types.h
+++ b/storage/innobase/include/que0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/read0read.h b/storage/innobase/include/read0read.h
index ae75cfac6f5833e2be00d235c89ac6ca0d225346..fb30719b652506eaa002d9a33816c07e2fa4c772 100644
--- a/storage/innobase/include/read0read.h
+++ b/storage/innobase/include/read0read.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/read0read.ic b/storage/innobase/include/read0read.ic
index 82c1028f12ee806fa7f31f7bd9269148972aa6c7..ed2b2dae3889089882d704b76cf96b59a6379340 100644
--- a/storage/innobase/include/read0read.ic
+++ b/storage/innobase/include/read0read.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/read0types.h b/storage/innobase/include/read0types.h
index 969f4ebb637379d7fe35f79dc5d2e954c08ad331..1ad501d931df707630312cd858dfcd4f45485154 100644
--- a/storage/innobase/include/read0types.h
+++ b/storage/innobase/include/read0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/rem0cmp.h b/storage/innobase/include/rem0cmp.h
index 65116229fdce4c129b6199a217d145512b42285a..828e1175e6e1c27bd958c01f37ceea95dfadcad0 100644
--- a/storage/innobase/include/rem0cmp.h
+++ b/storage/innobase/include/rem0cmp.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/rem0cmp.ic b/storage/innobase/include/rem0cmp.ic
index 67a2dcacba1c6ac80be9d22c317b5dc261f8009b..9dee05a768c467e43d20f550066e66504c6f0a8c 100644
--- a/storage/innobase/include/rem0cmp.ic
+++ b/storage/innobase/include/rem0cmp.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/rem0rec.h b/storage/innobase/include/rem0rec.h
index 4adfc128d0878a6153cdc5f7e46f6d30070dcfa6..4d10e98f45b207b6b6e6510c341761303698e27e 100644
--- a/storage/innobase/include/rem0rec.h
+++ b/storage/innobase/include/rem0rec.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/rem0rec.ic b/storage/innobase/include/rem0rec.ic
index 122ea733065a1768b7ac8f8ca1a4ce445c35373a..e0d0682ff60dcab4899d94b6f635c227d6585f81 100644
--- a/storage/innobase/include/rem0rec.ic
+++ b/storage/innobase/include/rem0rec.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/rem0types.h b/storage/innobase/include/rem0types.h
index f8133f77466d9d031301bff35d03ea1f009bb101..cc59bd91076381bc32dfb5d2d81b6e811b203049 100644
--- a/storage/innobase/include/rem0types.h
+++ b/storage/innobase/include/rem0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0ext.h b/storage/innobase/include/row0ext.h
index a098e2f9b2995508ed13de02b47ca008e3c5463e..02f46867da62b3191c929b589b40d657f6127a41 100644
--- a/storage/innobase/include/row0ext.h
+++ b/storage/innobase/include/row0ext.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0ext.ic b/storage/innobase/include/row0ext.ic
index 39e150d91d5ff563999f873038ad17494ba2c4ab..913b51b34d207d6d3855a0a2a142928c63610e5b 100644
--- a/storage/innobase/include/row0ext.ic
+++ b/storage/innobase/include/row0ext.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0ftsort.h b/storage/innobase/include/row0ftsort.h
index b006385371d1794a998ec1b8a22e8d2541de4bbe..7b99eb3773b720a27e1dcf7ab635abde60079e49 100644
--- a/storage/innobase/include/row0ftsort.h
+++ b/storage/innobase/include/row0ftsort.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0import.h b/storage/innobase/include/row0import.h
index a821c230a3b264e27258c56403d27f9c0b46f055..4f9f372ffa151439fed383f2bb4731ecb3a84913 100644
--- a/storage/innobase/include/row0import.h
+++ b/storage/innobase/include/row0import.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0import.ic b/storage/innobase/include/row0import.ic
index c5bbab49f6fbb42a00973e7058cce64ff884fecb..75b45e7710ab027c3e084ca28afa3a33ec19ed20 100644
--- a/storage/innobase/include/row0import.ic
+++ b/storage/innobase/include/row0import.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0ins.h b/storage/innobase/include/row0ins.h
index 71ee39070ef2d57417237cb9c8fccc8374493934..54e7fa6d1fbc350b4c2e9864b69a18b22f2b29df 100644
--- a/storage/innobase/include/row0ins.h
+++ b/storage/innobase/include/row0ins.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0ins.ic b/storage/innobase/include/row0ins.ic
index 9c191d869a232c7495f166a6d6749e21c0291a53..f1f0a4497260ec85e34c6730381e624bd1af7a4e 100644
--- a/storage/innobase/include/row0ins.ic
+++ b/storage/innobase/include/row0ins.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0log.h b/storage/innobase/include/row0log.h
index 5ff148ff045d6caff52a3c7496d64daaa2ad8a8b..6d91e25e6bd8ea19b6989c0274178e54e451302b 100644
--- a/storage/innobase/include/row0log.h
+++ b/storage/innobase/include/row0log.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0log.ic b/storage/innobase/include/row0log.ic
index b0f37dbd8e727c9ede7da0c335e6cfec0648fa9a..53f99da15fdc70d28027a477e22d186901f979e0 100644
--- a/storage/innobase/include/row0log.ic
+++ b/storage/innobase/include/row0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0merge.h b/storage/innobase/include/row0merge.h
index 6129d03fa09e1c9208e4e5f70bf9b1f0a03a0f4c..a3738f8fb02b8a238bdb20c8592879d98c0dc70f 100644
--- a/storage/innobase/include/row0merge.h
+++ b/storage/innobase/include/row0merge.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/row0mysql.h b/storage/innobase/include/row0mysql.h
index a38e9b6b3d559c4fa39d730f3a29c3bdb394c3a1..2069caf7f3f56d8b0424ae8a065ff763f0a3d408 100644
--- a/storage/innobase/include/row0mysql.h
+++ b/storage/innobase/include/row0mysql.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2000, 2016, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2015, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -491,7 +492,7 @@ row_drop_table_for_mysql(
 	const char*	name,	/*!< in: table name */
 	trx_t*		trx,	/*!< in: dictionary transaction handle */
 	bool		drop_db,/*!< in: true=dropping whole database */
-	ibool		create_failed,/*!lock.wait_started */
 	ullint		trx_weight;	/*!< TRX_WEIGHT() */
 	ulint		trx_mysql_thread_id; /*!< thd_get_thread_id() */
 	const char*	trx_query;	/*!< MySQL statement being
diff --git a/storage/innobase/include/trx0purge.h b/storage/innobase/include/trx0purge.h
index f72652963c97dc5f29dfc8182ab75aa7208bd9d0..f5b3b6efa7ef7d55ad41d2ac729029c10570ce51 100644
--- a/storage/innobase/include/trx0purge.h
+++ b/storage/innobase/include/trx0purge.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0purge.ic b/storage/innobase/include/trx0purge.ic
index ca9cc1fb894081596883cb39975ca2c71f72d5f6..a32ecefe4b5818ad47efb1c01b5aa9bb9257245c 100644
--- a/storage/innobase/include/trx0purge.ic
+++ b/storage/innobase/include/trx0purge.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0rec.h b/storage/innobase/include/trx0rec.h
index ec15250ec7b7eb00e23884ee40b6e283b2b1f176..cfb3bd81206aca5b70cfcfbfadc9737b407e63af 100644
--- a/storage/innobase/include/trx0rec.h
+++ b/storage/innobase/include/trx0rec.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0rec.ic b/storage/innobase/include/trx0rec.ic
index 08704f6b821063b1a025078f1c65a38874d5d473..57d1e9aff0bf16500560a75aaa24cced09c5a413 100644
--- a/storage/innobase/include/trx0rec.ic
+++ b/storage/innobase/include/trx0rec.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0roll.h b/storage/innobase/include/trx0roll.h
index 274a3b038ba2a99b9171415bca07d356d52de7a3..fcafd1b5bac5d56374547f7f7bf3e37d49855d31 100644
--- a/storage/innobase/include/trx0roll.h
+++ b/storage/innobase/include/trx0roll.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0roll.ic b/storage/innobase/include/trx0roll.ic
index 178e9bb730af14792f16ca56d572a67afadf5132..e6f9dd5ebcbc858897197e4f36bc3e9351afdf10 100644
--- a/storage/innobase/include/trx0roll.ic
+++ b/storage/innobase/include/trx0roll.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0rseg.h b/storage/innobase/include/trx0rseg.h
index 2fe5df14cee4bd0c39ee176406f77f897f49814f..acf2f9d04fba6925997383897f9a740c6c61b336 100644
--- a/storage/innobase/include/trx0rseg.h
+++ b/storage/innobase/include/trx0rseg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0rseg.ic b/storage/innobase/include/trx0rseg.ic
index 30743da9b8c87d772401df49f2625f9f70487d76..4bcbebaf6d34bf64aceb179e210b051fa04ca3d4 100644
--- a/storage/innobase/include/trx0rseg.ic
+++ b/storage/innobase/include/trx0rseg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0sys.h b/storage/innobase/include/trx0sys.h
index f70c53b57e6570d10972c7985632f7910828ff9f..6b1ff959a8a6cd86bf035d724f405404bca582e8 100644
--- a/storage/innobase/include/trx0sys.h
+++ b/storage/innobase/include/trx0sys.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0sys.ic b/storage/innobase/include/trx0sys.ic
index e097e29b551b76894ea988b5bc043d6f2f6fac68..04c858118da552f3f517937e3aa7b698c48453b9 100644
--- a/storage/innobase/include/trx0sys.ic
+++ b/storage/innobase/include/trx0sys.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0trx.h b/storage/innobase/include/trx0trx.h
index 165ebe82df84a265a7078cf76cd4e18ff50b8a44..0291140a982fb6bf9901ae7955f6122ab407fdd4 100644
--- a/storage/innobase/include/trx0trx.h
+++ b/storage/innobase/include/trx0trx.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -867,10 +867,11 @@ struct trx_t{
 					when trx->in_rw_trx_list. Initially
 					set to TRX_ID_MAX. */
 
-	time_t		start_time;	/*!< time the trx state last time became
-					TRX_STATE_ACTIVE */
-	ib_uint64_t	start_time_micro;	/*!< start time of transaction in
-					microseconds */
+	/** wall-clock time of the latest transition to TRX_STATE_ACTIVE;
+	used for diagnostic purposes only */
+	time_t		start_time;
+	/** microsecond_interval_timer() of transaction start */
+	ulonglong	start_time_micro;
 	trx_id_t	id;		/*!< transaction id */
 	XID		xid;		/*!< X/Open XA transaction
 					identification to identify a
diff --git a/storage/innobase/include/trx0trx.ic b/storage/innobase/include/trx0trx.ic
index 0011f2ca74bf4c025f1c49a6368f78124f80174f..d037696a0872391bda79b97bae60e0be4f31d4c7 100644
--- a/storage/innobase/include/trx0trx.ic
+++ b/storage/innobase/include/trx0trx.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0types.h b/storage/innobase/include/trx0types.h
index a0b398fffa1b99666d5ee3018073c08290a3121e..1c869bdd4ac572e9bd9fc4d11f23df928ed18833 100644
--- a/storage/innobase/include/trx0types.h
+++ b/storage/innobase/include/trx0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0undo.h b/storage/innobase/include/trx0undo.h
index 266ca32548c5cefd869003271e812a2c8dfb5292..210b7a433cbd7bc3800671b5afb3a8089f8a41ad 100644
--- a/storage/innobase/include/trx0undo.h
+++ b/storage/innobase/include/trx0undo.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0undo.ic b/storage/innobase/include/trx0undo.ic
index 577759d6c3da7975ec5836ae6005f8003e1caa72..4ab197f5767c34844303ed1803693da30b6f666d 100644
--- a/storage/innobase/include/trx0undo.ic
+++ b/storage/innobase/include/trx0undo.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/trx0xa.h b/storage/innobase/include/trx0xa.h
index 4d5adc68dcd0d38c5629c606aaf786d63fb9bfee..cb5d67cf5de462023b765d39e37c10f47821700c 100644
--- a/storage/innobase/include/trx0xa.h
+++ b/storage/innobase/include/trx0xa.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i
index e056f0f4bb08e61cfcb0ec0abb3a0a9da5bb5ce7..02ab9e8b94f65876dc7e4c8be708cadd7c1d4b21 100644
--- a/storage/innobase/include/univ.i
+++ b/storage/innobase/include/univ.i
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -45,7 +45,7 @@ Created 1/20/1994 Heikki Tuuri
 
 #define INNODB_VERSION_MAJOR	5
 #define INNODB_VERSION_MINOR	6
-#define INNODB_VERSION_BUGFIX	44
+#define INNODB_VERSION_BUGFIX	45
 
 /* The following is the InnoDB version as shown in
 SELECT plugin_version FROM information_schema.plugins;
diff --git a/storage/innobase/include/usr0sess.h b/storage/innobase/include/usr0sess.h
index b5c80b97b4389740861ec33ae6e3a5042f46e536..5978332d5818be0dba8c1799354301439f2dca1e 100644
--- a/storage/innobase/include/usr0sess.h
+++ b/storage/innobase/include/usr0sess.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/usr0sess.ic b/storage/innobase/include/usr0sess.ic
index 284e59537fee62e2b3997618e6138a6879f13c92..65e404fb7d150500e74b0e74ebd5dd75e0bb39ee 100644
--- a/storage/innobase/include/usr0sess.ic
+++ b/storage/innobase/include/usr0sess.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/usr0types.h b/storage/innobase/include/usr0types.h
index 6ba937cacc8aac3f6e950906a525529861b46783..693bb239a54f12f59b04db7c8c4051285c549518 100644
--- a/storage/innobase/include/usr0types.h
+++ b/storage/innobase/include/usr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0bh.h b/storage/innobase/include/ut0bh.h
index 1085736c7ab0f01d67555c053aeceae9d1eb8e16..bde310a7d446f2e33cd7adcfa88ce39bc0dd0812 100644
--- a/storage/innobase/include/ut0bh.h
+++ b/storage/innobase/include/ut0bh.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0bh.ic b/storage/innobase/include/ut0bh.ic
index b11de5b8b3e37e1f176cb697dfcea1ced13a1ae2..579a487fab84d6ca0358f1235f7d6242900feacd 100644
--- a/storage/innobase/include/ut0bh.ic
+++ b/storage/innobase/include/ut0bh.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0byte.h b/storage/innobase/include/ut0byte.h
index 4893ab9f9af20df27594a4eab3c4ff778900991e..eb75ecd0fee1b41c8d0d1ba02e3fc348b8f8e529 100644
--- a/storage/innobase/include/ut0byte.h
+++ b/storage/innobase/include/ut0byte.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0byte.ic b/storage/innobase/include/ut0byte.ic
index 1a7af5ae33d6451a0f1346ca9aa6a56abc0519f8..504744ad21e12bb8a5ce3a901df75c9cf14f4dfe 100644
--- a/storage/innobase/include/ut0byte.ic
+++ b/storage/innobase/include/ut0byte.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0counter.h b/storage/innobase/include/ut0counter.h
index 6fde8a7a638f0ee40122d9fb034fc901a60db1c7..d2a6c1eb3e3d35768a10a040f74f57c041e872f2 100644
--- a/storage/innobase/include/ut0counter.h
+++ b/storage/innobase/include/ut0counter.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0crc32.h b/storage/innobase/include/ut0crc32.h
index af6f0bc74e7b395a1605e53cafcaa2f9e2ff0dc3..391c239c56d51a832bfa5a4002d119a08b51c9ab 100644
--- a/storage/innobase/include/ut0crc32.h
+++ b/storage/innobase/include/ut0crc32.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0dbg.h b/storage/innobase/include/ut0dbg.h
index b4c941bc16394fb8e69264535c817f8c714424df..efc670184b8cdfc8198d76f628b7a0d68e9eb33c 100644
--- a/storage/innobase/include/ut0dbg.h
+++ b/storage/innobase/include/ut0dbg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0list.h b/storage/innobase/include/ut0list.h
index 796a272db59569bb3451290c6b8356a456c9cb1a..4f35624acbff9f3aaffb65c70a8bee29569f0072 100644
--- a/storage/innobase/include/ut0list.h
+++ b/storage/innobase/include/ut0list.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0list.ic b/storage/innobase/include/ut0list.ic
index 7a7f53adb2f283672223131152e2b67cdada86cc..89f411a2a649dfdc7c49ed03b6242d26885dd8f8 100644
--- a/storage/innobase/include/ut0list.ic
+++ b/storage/innobase/include/ut0list.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0lst.h b/storage/innobase/include/ut0lst.h
index b53e7ade4c130e4a4576f5c75cf3bc906eb5a957..741d55dca67d9c87580792d2df5a6e642a386ee4 100644
--- a/storage/innobase/include/ut0lst.h
+++ b/storage/innobase/include/ut0lst.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0mem.h b/storage/innobase/include/ut0mem.h
index 81470358f2fc98b0adfd8e7eefaf343567a8a48e..12f93764dfa182639c64202b28851d42a7f7d237 100644
--- a/storage/innobase/include/ut0mem.h
+++ b/storage/innobase/include/ut0mem.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0mem.ic b/storage/innobase/include/ut0mem.ic
index 5c9071d52cc14baf4efabd73005a85a9cc7fa7ea..f102bf959b4500918a9d76259d125d6849e40236 100644
--- a/storage/innobase/include/ut0mem.ic
+++ b/storage/innobase/include/ut0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0rbt.h b/storage/innobase/include/ut0rbt.h
index 59e3fc94598cd67067c6e582ef4683c5fd1fea9b..dd4838367093ee5b381088aca8da36c6d27da13b 100644
--- a/storage/innobase/include/ut0rbt.h
+++ b/storage/innobase/include/ut0rbt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /******************************************************************//**
diff --git a/storage/innobase/include/ut0rnd.h b/storage/innobase/include/ut0rnd.h
index 6ed3ee3b2e5dc113fa464f4c2b55878679802137..0f8474225fa10a6b5756f16497fbc49c7efdfd7e 100644
--- a/storage/innobase/include/ut0rnd.h
+++ b/storage/innobase/include/ut0rnd.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0rnd.ic b/storage/innobase/include/ut0rnd.ic
index 987dfac03c1d2db66cd798ffa3bd10348ffd5c7c..ce8c7203c8e506ba9381827ad6a0da3d3a0ad33f 100644
--- a/storage/innobase/include/ut0rnd.ic
+++ b/storage/innobase/include/ut0rnd.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0sort.h b/storage/innobase/include/ut0sort.h
index 75648b5c317b10286a27e87df8a14714a5204367..12f482078ffe8f6067d2115ed971326bcb9a6842 100644
--- a/storage/innobase/include/ut0sort.h
+++ b/storage/innobase/include/ut0sort.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0timer.h b/storage/innobase/include/ut0timer.h
deleted file mode 100644
index 3015771b434d7268f7258155fbb7ef4e18041383..0000000000000000000000000000000000000000
--- a/storage/innobase/include/ut0timer.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file include/ut0timer.h
-Timer routines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-#ifndef ut0timer_h
-#define ut0timer_h
-
-#include "univ.i"
-
-/* Current timer stats */
-extern struct my_timer_unit_info ut_timer;
-
-/**************************************************************//**
-Function pointer to point selected timer function.
-@return	timer current value */
-extern ulonglong (*ut_timer_now)(void);
-
-/**************************************************************//**
-Sets up the data required for use of my_timer_* functions.
-Selects the best timer by high frequency, and tight resolution.
-Points my_timer_now() to the selected timer function.
-Initializes my_timer struct to contain the info for selected timer.*/
-UNIV_INTERN
-void ut_init_timer(void);
-
-/**************************************************************//**
-Convert native timer units in a ulonglong into microseconds in a double
-@return time in microseconds */
-UNIV_INLINE
-double
-ut_timer_to_microseconds(
-/*=====================*/
-	ulonglong	when); /*!< in: time where to calculate */
-/**************************************************************//**
-Convert microseconds in a double to native timer units in a ulonglong
-@return time in microseconds */
-UNIV_INLINE
-ulonglong
-ut_microseconds_to_timer(
-/*=====================*/
-	ulonglong	when); /*!< in: time where to calculate */
-
-#ifndef UNIV_NONINL
-#include "ut0timer.ic"
-#endif
-
-#endif
diff --git a/storage/innobase/include/ut0timer.ic b/storage/innobase/include/ut0timer.ic
deleted file mode 100644
index 34886481efab3b339519ce724180c8cbe9e0d6ba..0000000000000000000000000000000000000000
--- a/storage/innobase/include/ut0timer.ic
+++ /dev/null
@@ -1,56 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file include/ut0timer.ic
-Timer routines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-
-/**************************************************************//**
-Convert native timer units in a ulonglong into microseconds in a double
-@return time in microseconds */
-UNIV_INLINE
-double
-ut_timer_to_microseconds(
-/*=====================*/
-	ulonglong	when) /*!< in: time where to calculate */
-{
-	double ret = (double)(when);
-	ret *= 1000000.0;
-	ret /= (double)(ut_timer.frequency);
-	return ret;
-}
-
-/**************************************************************//**
-Convert microseconds in a double to native timer units in a ulonglong
-@return time in microseconds */
-UNIV_INLINE
-ulonglong
-ut_microseconds_to_timer(
-/*=====================*/
-	ulonglong 	when) /*!< in: time where to calculate */
-{
-	double ret = (double)when;
-	ret *= (double)(ut_timer.frequency);
-	ret /= 1000000.0;
-	return (ulonglong)ret;
-}
diff --git a/storage/innobase/include/ut0ut.h b/storage/innobase/include/ut0ut.h
index ffdb13ddf4361b64accf3179e663d9f975dff961..da94e78d6bdd7829409e392d75dd4442ecd61c46 100644
--- a/storage/innobase/include/ut0ut.h
+++ b/storage/innobase/include/ut0ut.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1994, 2017, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -52,9 +53,6 @@ Created 1/20/1994 Heikki Tuuri
 /** Index name prefix in fast index creation, as a string constant */
 #define TEMP_INDEX_PREFIX_STR	"\377"
 
-/** Time stamp */
-typedef time_t	ib_time_t;
-
 /* In order to call a piece of code, when a function returns or when the
 scope ends, use this utility class.  It will invoke the given function
 object in its destructor. */
@@ -111,22 +109,6 @@ struct ut_when_dtor {
 #  define UT_LOW_PRIORITY_CPU() ((void)0)
 #  define UT_RESUME_PRIORITY_CPU() ((void)0)
 # endif
-
-/*********************************************************************//**
-Delays execution for at most max_wait_us microseconds or returns earlier
-if cond becomes true.
-@param cond		in: condition to wait for; evaluated every 2 ms
-@param max_wait_us	in: maximum delay to wait, in microseconds */
-#define UT_WAIT_FOR(cond, max_wait_us)				\
-do {								\
-	ullint	start_us;					\
-	start_us = ut_time_us(NULL);				\
-	while (!(cond) 						\
-	       && ut_time_us(NULL) - start_us < (max_wait_us)) {\
-								\
-		os_thread_sleep(2000 /* 2 ms */);		\
-	}							\
-} while (0)
 #endif /* !UNIV_HOTBACKUP */
 
 template  T ut_min(T a, T b) { return(a < b ? a : b); }
@@ -250,50 +232,6 @@ store the given number of bits.
 #define UT_BITS_IN_BYTES(b) (((b) + 7) / 8)
 
 #ifndef UNIV_INNOCHECKSUM
-/**********************************************************//**
-Returns system time. We do not specify the format of the time returned:
-the only way to manipulate it is to use the function ut_difftime.
-@return	system time */
-UNIV_INTERN
-ib_time_t
-ut_time(void);
-/*=========*/
-#ifndef UNIV_HOTBACKUP
-/**********************************************************//**
-Returns system time.
-Upon successful completion, the value 0 is returned; otherwise the
-value -1 is returned and the global variable errno is set to indicate the
-error.
-@return	0 on success, -1 otherwise */
-UNIV_INTERN
-int
-ut_usectime(
-/*========*/
-	ulint*	sec,	/*!< out: seconds since the Epoch */
-	ulint*	ms);	/*!< out: microseconds since the Epoch+*sec */
-
-/**********************************************************//**
-Returns the number of microseconds since epoch. Similar to
-time(3), the return value is also stored in *tloc, provided
-that tloc is non-NULL.
-@return	us since epoch */
-UNIV_INTERN
-ullint
-ut_time_us(
-/*=======*/
-	ullint*	tloc);	/*!< out: us since epoch, if non-NULL */
-/**********************************************************//**
-Returns the number of milliseconds since some epoch.  The
-value may wrap around.  It should only be used for heuristic
-purposes.
-@return	ms since epoch */
-UNIV_INTERN
-ulint
-ut_time_ms(void);
-/*============*/
-
-#endif /* !UNIV_HOTBACKUP */
-
 /**********************************************************//**
 Returns the number of milliseconds since some epoch.  The
 value may wrap around.  It should only be used for heuristic
@@ -303,17 +241,6 @@ UNIV_INTERN
 ulint
 ut_time_ms(void);
 /*============*/
-
-/**********************************************************//**
-Returns the difference of two times in seconds.
-@return	time2 - time1 expressed in seconds */
-UNIV_INTERN
-double
-ut_difftime(
-/*========*/
-	ib_time_t	time2,	/*!< in: time */
-	ib_time_t	time1);	/*!< in: time */
-
 #endif /* !UNIV_INNOCHECKSUM */
 
 /**********************************************************//**
@@ -343,15 +270,6 @@ void
 ut_sprintf_timestamp_without_extra_chars(
 /*=====================================*/
 	char*	buf); /*!< in: buffer where to sprintf */
-/**********************************************************//**
-Returns current year, month, day. */
-UNIV_INTERN
-void
-ut_get_year_month_day(
-/*==================*/
-	ulint*	year,	/*!< out: current year */
-	ulint*	month,	/*!< out: month */
-	ulint*	day);	/*!< out: day */
 #else /* UNIV_HOTBACKUP */
 /*************************************************************//**
 Runs an idle loop on CPU. The argument gives the desired delay
diff --git a/storage/innobase/include/ut0ut.ic b/storage/innobase/include/ut0ut.ic
index 4e0f76e195781bd03b32944afbeeeca7b3ce40d8..380c588738df677ed695ea9c10304cc63b6c154c 100644
--- a/storage/innobase/include/ut0ut.ic
+++ b/storage/innobase/include/ut0ut.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0vec.h b/storage/innobase/include/ut0vec.h
index 432fb348a0903709cc84f9faab7bc072fb497ee6..a08380fff001d7d6dd03145da69a6c47dbbf51e0 100644
--- a/storage/innobase/include/ut0vec.h
+++ b/storage/innobase/include/ut0vec.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0vec.ic b/storage/innobase/include/ut0vec.ic
index f41a85e1d1d991dc340e41190d8833003a1ca846..1d4c0539cd65e3fd7bfaabca4b892dcb2fd3850d 100644
--- a/storage/innobase/include/ut0vec.ic
+++ b/storage/innobase/include/ut0vec.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/include/ut0wqueue.h b/storage/innobase/include/ut0wqueue.h
index dcd3feabe724940f53c7edcc01b356eac833f8f7..b81b78530ca985d6656551ebd9af8127d2f665c7 100644
--- a/storage/innobase/include/ut0wqueue.h
+++ b/storage/innobase/include/ut0wqueue.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -89,7 +89,7 @@ ib_wqueue_timedwait(
 /*================*/
 					/* out: work item or NULL on timeout*/
 	ib_wqueue_t*	wq,		/* in: work queue */
-	ib_time_t	wait_in_usecs); /* in: wait time in micro seconds */
+	ulint		wait_in_usecs); /* in: wait time in micro seconds */
 
 /********************************************************************
 Return first item on work queue or NULL if queue is empty
diff --git a/storage/innobase/lock/lock0iter.cc b/storage/innobase/lock/lock0iter.cc
index b424d2fc757de6f893b4f11b7886b39a535eb77e..56bb69fa41ccb604dee336c18bbe8e7c50ba2580 100644
--- a/storage/innobase/lock/lock0iter.cc
+++ b/storage/innobase/lock/lock0iter.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/lock/lock0lock.cc b/storage/innobase/lock/lock0lock.cc
index 1ad5b9881b10d23a920951d329261ebd588bbff9..0fade62e7aa024caa3e18b7e8288b66b8c7834f0 100644
--- a/storage/innobase/lock/lock0lock.cc
+++ b/storage/innobase/lock/lock0lock.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -383,6 +383,20 @@ struct lock_stack_t {
 	ulint		heap_no;		/*!< heap number if rec lock */
 };
 
+/** Pretty-print a table lock.
+@param[in,out]	file	output stream
+@param[in]	lock	table lock
+@param[in]	now	current time */
+static void lock_table_print(FILE* file, const lock_t* lock, time_t now);
+
+/** Pretty-print a record lock.
+@param[in,out]	file	output stream
+@param[in]	lock	record lock
+@param[in]	now	current time
+@param[in,out]	mtr	mini-transaction */
+static void lock_rec_print(FILE* file, const lock_t* lock, time_t now,
+			   mtr_t* mtr = NULL);
+
 /*********************************************************************//**
 Checks if a waiting record lock request still has to wait in a queue.
 @return lock that is causing the wait */
@@ -466,20 +480,18 @@ UNIV_INTERN ibool	lock_deadlock_found = FALSE;
 /** Only created if !srv_read_only_mode */
 static FILE*		lock_latest_err_file;
 
-/********************************************************************//**
-Checks if a joining lock request results in a deadlock. If a deadlock is
+/** Check if a joining lock request results in a deadlock. If a deadlock is
 found this function will resolve the dadlock by choosing a victim transaction
-and rolling it back. It will attempt to resolve all deadlocks. The returned
-transaction id will be the joining transaction id or 0 if some other
-transaction was chosen as a victim and rolled back or no deadlock found.
-
-@return id of transaction chosen as victim or 0 */
-static
-trx_id_t
-lock_deadlock_check_and_resolve(
-/*===========================*/
-	const lock_t*	lock,	/*!< in: lock the transaction is requesting */
-	const trx_t*	trx);	/*!< in: transaction */
+and rolling it back. It will attempt to resolve all deadlocks.
+@param[in]	trx	joining transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time
+@return trx->id of the victim transaction
+@retval 0	if some other transaction was chosen as a victim and
+rolled back, or no deadlock was found. */
+static trx_id_t lock_deadlock_check_and_resolve(const trx_t* trx,
+						const lock_t* lock,
+						time_t now);
 
 /*********************************************************************//**
 Gets the nth bit of a record lock.
@@ -1135,12 +1147,11 @@ lock_rec_has_to_wait(
 		   thread, we need to look at trx ordering and lock types */
 		if (wsrep_thd_is_BF(trx->mysql_thd, FALSE)         &&
 		    wsrep_thd_is_BF(lock2->trx->mysql_thd, TRUE)) {
-
 			if (wsrep_debug) {
 				fprintf(stderr,
 					"BF-BF lock conflict, locking: %lu\n",
 					for_locking);
-				lock_rec_print(stderr, lock2);
+				lock_rec_print(stderr, lock2, time(NULL));
 			}
 
 			if (wsrep_trx_order_before(trx->mysql_thd,
@@ -1159,7 +1170,8 @@ lock_rec_has_to_wait(
 						"conflicts states: my %d locked %d\n",
 						wsrep_thd_conflict_state(trx->mysql_thd, FALSE),
 						wsrep_thd_conflict_state(lock2->trx->mysql_thd, FALSE) );
-					lock_rec_print(stderr, lock2);
+					lock_rec_print(stderr, lock2,
+						       time(NULL));
 					if (for_locking) return FALSE;
 					//abort();
 				}
@@ -1786,10 +1798,12 @@ wsrep_kill_victim(
 				fputs("*** WAITING FOR THIS LOCK TO BE GRANTED:\n",
 				      stderr);
 
+				time_t now = time(NULL);
+
 				if (lock_get_type(lock) == LOCK_REC) {
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, lock, now);
 				} else {
-					lock_table_print(stderr, lock);
+					lock_table_print(stderr, lock, now);
 				}
 			}
 
@@ -2032,16 +2046,20 @@ wsrep_print_wait_locks(
 {
 	if (wsrep_debug &&  c_lock->trx->lock.wait_lock != c_lock) {
 		fprintf(stderr, "WSREP: c_lock != wait lock\n");
+		time_t now = time(NULL);
+
 		if (lock_get_type_low(c_lock) & LOCK_TABLE) {
-			lock_table_print(stderr, c_lock);
+			lock_table_print(stderr, c_lock, now);
 		} else {
-			lock_rec_print(stderr, c_lock);
+			lock_rec_print(stderr, c_lock, now);
 		}
 
 		if (lock_get_type_low(c_lock->trx->lock.wait_lock) & LOCK_TABLE) {
-			lock_table_print(stderr, c_lock->trx->lock.wait_lock);
+			lock_table_print(stderr, c_lock->trx->lock.wait_lock,
+					 now);
 		} else {
-			lock_rec_print(stderr, c_lock->trx->lock.wait_lock);
+			lock_rec_print(stderr, c_lock->trx->lock.wait_lock,
+				       now);
 		}
 	}
 }
@@ -2153,7 +2171,7 @@ lock_rec_create(
 	/* Set the bit corresponding to rec */
 	lock_rec_set_nth_bit(lock, heap_no);
 
-	lock->requested_time = ut_time();
+	lock->requested_time = time(NULL);
 	lock->wait_time = 0;
 
 	index->table->n_rec_locks++;
@@ -2279,10 +2297,7 @@ If neither of them is wait lock, the first one has higher priority.
 If only one of them is a wait lock, it has lower priority.
 Otherwise, the one with an older transaction has higher priority.
 @returns true if lock1 has higher priority, false otherwise. */
-bool
-has_higher_priority(
-	lock_t *lock1,
-	lock_t *lock2)
+static bool has_higher_priority(lock_t *lock1, lock_t *lock2)
 {
 	if (lock1 == NULL) {
 		return false;
@@ -2480,7 +2495,8 @@ lock_rec_enqueue_waiting(
 
 	trx_mutex_exit(trx);
 
-	victim_trx_id = lock_deadlock_check_and_resolve(lock, trx);
+	const time_t now = time(NULL);
+	victim_trx_id = lock_deadlock_check_and_resolve(trx, lock, now);
 
 	trx_mutex_enter(trx);
 
@@ -2504,7 +2520,7 @@ lock_rec_enqueue_waiting(
 		trx->lock.que_state = TRX_QUE_LOCK_WAIT;
 
 		trx->lock.was_chosen_as_deadlock_victim = FALSE;
-		trx->lock.wait_started = ut_time();
+		trx->lock.wait_started = now;
 
 		ut_a(que_thr_stop(thr));
 
@@ -2645,7 +2661,8 @@ lock_rec_add_to_queue(
 						"BF skipping wait: "
 						TRX_ID_FMT "\n",
 						trx->id);
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, lock,
+						       time(NULL));
 				}
 		  } else
 #endif
@@ -2961,13 +2978,14 @@ lock_rec_has_to_wait_in_queue(
 			if (wsrep_thd_is_BF(wait_lock->trx->mysql_thd, FALSE) &&
 			    wsrep_thd_is_BF(lock->trx->mysql_thd, TRUE)) {
 				if (wsrep_debug) {
+					time_t now = time(NULL);
 					fprintf(stderr,
 						"BF-BF lock conflict " TRX_ID_FMT
 						" : " TRX_ID_FMT "\n",
 						wait_lock->trx->id,
 						lock->trx->id);
-					lock_rec_print(stderr, wait_lock);
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, wait_lock, now);
+					lock_rec_print(stderr, lock, now);
 				}
 				/* don't wait for another BF lock */
 				continue;
@@ -3034,16 +3052,18 @@ lock_grant(
 		}
 	}
 
+	const time_t now = time(NULL);
+
 	/* Cumulate total lock wait time for statistics */
 	if (lock_get_type_low(lock) & LOCK_TABLE) {
 		lock->trx->total_table_lock_wait_time +=
-			(ulint)difftime(ut_time(), lock->trx->lock.wait_started);
+			(ulint)difftime(now, lock->trx->lock.wait_started);
 	} else {
 		lock->trx->total_rec_lock_wait_time +=
-			(ulint)difftime(ut_time(), lock->trx->lock.wait_started);
+			(ulint)difftime(now, lock->trx->lock.wait_started);
 	}
 
-	lock->wait_time = (ulint)difftime(ut_time(), lock->requested_time);
+	lock->wait_time = (ulint)difftime(now, lock->requested_time);
 
 	if (!owns_trx_mutex) {
 		trx_mutex_exit(lock->trx);
@@ -4296,28 +4316,26 @@ lock_deadlock_trx_print(
 	mutex_exit(&trx_sys->mutex);
 }
 
-/*********************************************************************//**
-Print lock data to the deadlock file and possibly to stderr. */
-UNIV_INLINE
-void
-lock_deadlock_lock_print(
-/*=====================*/
-	const lock_t*	lock)	/*!< in: record or table type lock */
+/** Print lock data to the deadlock file and possibly to stderr.
+@param[in]	lock	record or table lock
+@param[in]	now	current time */
+static void lock_deadlock_lock_print(const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
 
 	if (lock_get_type_low(lock) == LOCK_REC) {
-		lock_rec_print(lock_latest_err_file, lock);
+		mtr_t mtr;
+		lock_rec_print(lock_latest_err_file, lock, now, &mtr);
 
 		if (srv_print_all_deadlocks) {
-			lock_rec_print(stderr, lock);
+			lock_rec_print(stderr, lock, now, &mtr);
 		}
 	} else {
-		lock_table_print(lock_latest_err_file, lock);
+		lock_table_print(lock_latest_err_file, lock, now);
 
 		if (srv_print_all_deadlocks) {
-			lock_table_print(stderr, lock);
+			lock_table_print(stderr, lock, now);
 		}
 	}
 }
@@ -4430,6 +4448,8 @@ lock_deadlock_notify(
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
 
+	const time_t now = time(NULL);
+
 	lock_deadlock_start_print();
 
 	lock_deadlock_fputs("\n*** (1) TRANSACTION:\n");
@@ -4438,7 +4458,7 @@ lock_deadlock_notify(
 
 	lock_deadlock_fputs("*** (1) WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-	lock_deadlock_lock_print(ctx->wait_lock);
+	lock_deadlock_lock_print(ctx->wait_lock, now);
 
 	lock_deadlock_fputs("*** (2) TRANSACTION:\n");
 
@@ -4446,7 +4466,7 @@ lock_deadlock_notify(
 
 	lock_deadlock_fputs("*** (2) HOLDS THE LOCK(S):\n");
 
-	lock_deadlock_lock_print(lock);
+	lock_deadlock_lock_print(lock, now);
 
 	/* It is possible that the joining transaction was granted its
 	lock when we rolled back some other waiting transaction. */
@@ -4455,7 +4475,7 @@ lock_deadlock_notify(
 		lock_deadlock_fputs(
 			"*** (2) WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-		lock_deadlock_lock_print(ctx->start->lock.wait_lock);
+		lock_deadlock_lock_print(ctx->start->lock.wait_lock, now);
 	}
 
 #ifdef UNIV_DEBUG
@@ -4703,14 +4723,12 @@ lock_deadlock_search(
 	return(0);
 }
 
-/********************************************************************//**
-Print info about transaction that was rolled back. */
-static
-void
-lock_deadlock_joining_trx_print(
-/*============================*/
-	const trx_t*	trx,		/*!< in: transaction rolled back */
-	const lock_t*	lock)		/*!< in: lock trx wants */
+/** Print info about transaction that was rolled back.
+@param[in]	trx	victim transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time */
+static void lock_deadlock_joining_trx_print(const trx_t* trx,
+					    const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
@@ -4730,7 +4748,7 @@ lock_deadlock_joining_trx_print(
 
 	lock_deadlock_fputs("*** WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-	lock_deadlock_lock_print(lock);
+	lock_deadlock_lock_print(lock, now);
 }
 
 /********************************************************************//**
@@ -4800,20 +4818,17 @@ lock_report_waiters_to_mysql(
 }
 
 
-/********************************************************************//**
-Checks if a joining lock request results in a deadlock. If a deadlock is
+/** Check if a joining lock request results in a deadlock. If a deadlock is
 found this function will resolve the dadlock by choosing a victim transaction
-and rolling it back. It will attempt to resolve all deadlocks. The returned
-transaction id will be the joining transaction id or 0 if some other
-transaction was chosen as a victim and rolled back or no deadlock found.
-
-@return id of transaction chosen as victim or 0 */
-static
-trx_id_t
-lock_deadlock_check_and_resolve(
-/*============================*/
-	const lock_t*	lock,	/*!< in: lock the transaction is requesting */
-	const trx_t*	trx)	/*!< in: transaction */
+and rolling it back. It will attempt to resolve all deadlocks.
+@param[in]	trx	joining transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time
+@return trx->id of the victim transaction
+@retval 0	if some other transaction was chosen as a victim and
+rolled back, or no deadlock was found. */
+static trx_id_t lock_deadlock_check_and_resolve(const trx_t* trx,
+						const lock_t* lock, time_t now)
 {
 	trx_id_t		victim_trx_id;
 	struct thd_wait_reports	waitee_buf;
@@ -4865,17 +4880,12 @@ lock_deadlock_check_and_resolve(
 			ut_a(victim_trx_id == trx->id);
 
 #ifdef WITH_WSREP
-			if (!wsrep_thd_is_BF(ctx.start->mysql_thd, TRUE))
-			{
+			if (!wsrep_thd_is_BF(ctx.start->mysql_thd, TRUE)); else
 #endif /* WITH_WSREP */
-				if (!srv_read_only_mode) {
-					lock_deadlock_joining_trx_print(trx, lock);
-				}
-#ifdef WITH_WSREP
-			} else {
-			  /* BF processor */;
+			if (!srv_read_only_mode) {
+				lock_deadlock_joining_trx_print(trx, lock,
+								now);
 			}
-#endif /* WITH_WSREP */
 
 			MONITOR_INC(MONITOR_DEADLOCK);
 
@@ -4953,7 +4963,7 @@ lock_table_create(
 
 	lock->type_mode = type_mode | LOCK_TABLE;
 	lock->trx = trx;
-	lock->requested_time = ut_time();
+	lock->requested_time = time(NULL);
 	lock->wait_time = 0;
 
 	lock->un_member.tab_lock.table = table;
@@ -5221,7 +5231,9 @@ lock_table_enqueue_waiting(
 
 	trx_mutex_exit(trx);
 
-	victim_trx_id = lock_deadlock_check_and_resolve(lock, trx);
+	const time_t now = time(NULL);
+
+	victim_trx_id = lock_deadlock_check_and_resolve(trx, lock, now);
 
 	trx_mutex_enter(trx);
 
@@ -5243,7 +5255,7 @@ lock_table_enqueue_waiting(
 
 	trx->lock.que_state = TRX_QUE_LOCK_WAIT;
 
-	trx->lock.wait_started = ut_time();
+	trx->lock.wait_started = now;
 	trx->lock.was_chosen_as_deadlock_victim = FALSE;
 	trx->n_table_lock_waits++;
 
@@ -5987,14 +5999,11 @@ lock_remove_all_on_table(
 
 /*===================== VALIDATION AND DEBUGGING  ====================*/
 
-/*********************************************************************//**
-Prints info of a table lock. */
-UNIV_INTERN
-void
-lock_table_print(
-/*=============*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock)	/*!< in: table type lock */
+/** Pretty-print a table lock.
+@param[in,out]	file	output stream
+@param[in]	lock	table lock
+@param[in]	now	current time */
+static void lock_table_print(FILE* file, const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_a(lock_get_type_low(lock) == LOCK_TABLE);
@@ -6024,30 +6033,22 @@ lock_table_print(
 	}
 
 	fprintf(file, " lock hold time %lu wait time before grant %lu ",
-		(ulint)difftime(ut_time(), lock->requested_time),
+		(ulint)difftime(now, lock->requested_time),
 		lock->wait_time);
 
 	putc('\n', file);
 }
 
-/*********************************************************************//**
-Prints info of a record lock. */
-UNIV_INTERN
-void
-lock_rec_print(
-/*===========*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock)	/*!< in: record type lock */
+/** Pretty-print a record lock.
+@param[in,out]	file	output stream
+@param[in]	lock	record lock
+@param[in]	now	current time
+@param[in,out]	mtr	mini-transaction */
+static void lock_rec_print(FILE* file, const lock_t* lock, time_t now,
+			   mtr_t* mtr)
 {
-	const buf_block_t*	block;
 	ulint			space;
 	ulint			page_no;
-	ulint			i;
-	mtr_t			mtr;
-	mem_heap_t*		heap		= NULL;
-	ulint			offsets_[REC_OFFS_NORMAL_SIZE];
-	ulint*			offsets		= offsets_;
-	rec_offs_init(offsets_);
 
 	ut_ad(lock_mutex_own());
 	ut_a(lock_get_type_low(lock) == LOCK_REC);
@@ -6092,17 +6093,25 @@ lock_rec_print(
 		fputs(" waiting", file);
 	}
 
-	mtr_start(&mtr);
-
 	fprintf(file, " lock hold time %lu wait time before grant %lu ",
-		(ulint)difftime(ut_time(), lock->requested_time),
+		(ulint)difftime(now, lock->requested_time),
 		lock->wait_time);
 
 	putc('\n', file);
 
-	block = buf_page_try_get(space, page_no, &mtr);
+	if (!mtr) {
+		return;
+	}
 
-	for (i = 0; i < lock_rec_get_n_bits(lock); ++i) {
+	mem_heap_t*		heap		= NULL;
+	ulint			offsets_[REC_OFFS_NORMAL_SIZE];
+	ulint*			offsets		= offsets_;
+	rec_offs_init(offsets_);
+
+	mtr_start(mtr);
+	const buf_block_t* block = buf_page_try_get(space, page_no, mtr);
+
+	for (ulint i = 0; i < lock_rec_get_n_bits(lock); ++i) {
 
 		if (!lock_rec_get_nth_bit(lock, i)) {
 			continue;
@@ -6127,7 +6136,7 @@ lock_rec_print(
 		putc('\n', file);
 	}
 
-	mtr_commit(&mtr);
+	mtr_commit(mtr);
 	if (UNIV_LIKELY_NULL(heap)) {
 		mem_heap_free(heap);
 	}
@@ -6283,6 +6292,8 @@ lock_print_info_all_transactions(
 
 	ut_ad(lock_mutex_own());
 
+	const time_t now = time(NULL);
+
 	mutex_enter(&trx_sys->mutex);
 
 	/* First print info on non-active transactions */
@@ -6369,13 +6380,14 @@ lock_print_info_all_transactions(
 			fprintf(file,
 				"------- TRX HAS BEEN WAITING %lu SEC"
 				" FOR THIS LOCK TO BE GRANTED:\n",
-				(ulong) difftime(ut_time(),
-						 trx->lock.wait_started));
+				(ulong) difftime(now, trx->lock.wait_started));
 
 			if (lock_get_type_low(trx->lock.wait_lock) == LOCK_REC) {
-				lock_rec_print(file, trx->lock.wait_lock);
+				lock_rec_print(file, trx->lock.wait_lock, now,
+					       &mtr);
 			} else {
-				lock_table_print(file, trx->lock.wait_lock);
+				lock_table_print(file, trx->lock.wait_lock,
+						 now);
 			}
 
 			fputs("------------------\n", file);
@@ -6460,11 +6472,11 @@ lock_print_info_all_transactions(
 		}
 
 print_rec:
-		lock_rec_print(file, lock);
+		lock_rec_print(file, lock, now, &mtr);
 	} else {
 		ut_ad(lock_get_type_low(lock) & LOCK_TABLE);
 
-		lock_table_print(file, lock);
+		lock_table_print(file, lock, now);
 	}
 
 	load_page_first = TRUE;
diff --git a/storage/innobase/lock/lock0wait.cc b/storage/innobase/lock/lock0wait.cc
index a0f557e18e5a87db75851db1fc853d4beaabef22..ca697ab8be5f77edba14d6448ed390520d894a18 100644
--- a/storage/innobase/lock/lock0wait.cc
+++ b/storage/innobase/lock/lock0wait.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1996, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2014, 2017, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -60,7 +60,7 @@ lock_wait_table_print(void)
 			(ulong) slot->in_use,
 			(ulong) slot->suspended,
 			slot->wait_timeout,
-			(ulong) difftime(ut_time(), slot->suspend_time));
+			(ulong) difftime(time(NULL), slot->suspend_time));
 	}
 }
 
@@ -157,7 +157,7 @@ lock_wait_table_reserve_slot(
 
 			os_event_reset(slot->event);
 			slot->suspended = TRUE;
-			slot->suspend_time = ut_time();
+			slot->suspend_time = time(NULL);
 			slot->wait_timeout = wait_timeout;
 
 			if (slot == lock_sys->last_slot) {
@@ -226,14 +226,9 @@ lock_wait_suspend_thread(
 				user OS thread */
 {
 	srv_slot_t*	slot;
-	double		wait_time;
 	trx_t*		trx;
 	ulint		had_dict_lock;
 	ibool		was_declared_inside_innodb;
-	ib_int64_t	start_time			= 0;
-	ib_int64_t	finish_time;
-	ulint		sec;
-	ulint		ms;
 	ulong		lock_wait_timeout;
 
 	trx = thr_get_trx(thr);
@@ -279,15 +274,12 @@ lock_wait_suspend_thread(
 	lock_wait_mutex_exit();
 	trx_mutex_exit(trx);
 
+	ulonglong start_time = 0;
+
 	if (thr->lock_state == QUE_THR_LOCK_ROW) {
 		srv_stats.n_lock_wait_count.inc();
 		srv_stats.n_lock_wait_current_count.inc();
-
-		if (ut_usectime(&sec, &ms) == -1) {
-			start_time = -1;
-		} else {
-			start_time = (ib_int64_t) sec * 1000000 + ms;
-		}
+		start_time = my_interval_timer();
 	}
 
 	ulint	lock_type = ULINT_UNDEFINED;
@@ -367,39 +359,32 @@ lock_wait_suspend_thread(
 		row_mysql_freeze_data_dictionary(trx);
 	}
 
-	wait_time = ut_difftime(ut_time(), slot->suspend_time);
+	double wait_time = difftime(time(NULL), slot->suspend_time);
 
 	/* Release the slot for others to use */
 
 	lock_wait_table_release_slot(slot);
 
 	if (thr->lock_state == QUE_THR_LOCK_ROW) {
-		ulint	diff_time;
-
-		if (ut_usectime(&sec, &ms) == -1) {
-			finish_time = -1;
-		} else {
-			finish_time = (ib_int64_t) sec * 1000000 + ms;
-		}
-
-		diff_time = (finish_time > start_time) ?
-			    (ulint) (finish_time - start_time) : 0;
-
 		srv_stats.n_lock_wait_current_count.dec();
-		srv_stats.n_lock_wait_time.add(diff_time);
 
-		/* Only update the variable if we successfully
-		retrieved the start and finish times. See Bug#36819. */
-		if (diff_time > lock_sys->n_lock_max_wait_time
-		    && start_time != -1
-		    && finish_time != -1) {
+		const ulonglong finish_time = my_interval_timer();
+		ulint diff_time;
 
-			lock_sys->n_lock_max_wait_time = diff_time;
+		if (finish_time < start_time) {
+			diff_time = 0;
+		} else {
+			diff_time = ulint((finish_time - start_time) / 1000);
+			srv_stats.n_lock_wait_time.add(diff_time);
+			/* Only update the variable if we successfully
+			retrieved the start and finish times. See Bug#36819. */
+			if (diff_time > lock_sys->n_lock_max_wait_time) {
+				lock_sys->n_lock_max_wait_time = diff_time;
+			}
 		}
 
 		/* Record the lock wait time for this thread */
 		thd_set_lock_wait_time(trx->mysql_thd, diff_time);
-
 	}
 
 	if (lock_wait_timeout < 100000000
@@ -465,19 +450,12 @@ lock_wait_check_and_cancel(
 	const srv_slot_t*	slot)	/*!< in: slot reserved by a user
 					thread when the wait started */
 {
-	trx_t*		trx;
-	double		wait_time;
-	ib_time_t	suspend_time = slot->suspend_time;
-
 	ut_ad(lock_wait_mutex_own());
-
 	ut_ad(slot->in_use);
-
 	ut_ad(slot->suspended);
 
-	wait_time = ut_difftime(ut_time(), suspend_time);
-
-	trx = thr_get_trx(slot->thr);
+	double wait_time = difftime(time(NULL), slot->suspend_time);
+	trx_t* trx = thr_get_trx(slot->thr);
 
 	if (trx_is_interrupted(trx)
 	    || (slot->wait_timeout < 100000000
@@ -511,7 +489,6 @@ lock_wait_check_and_cancel(
 
 		trx_mutex_exit(trx);
 	}
-
 }
 
 /*********************************************************************//**
diff --git a/storage/innobase/log/log0crypt.cc b/storage/innobase/log/log0crypt.cc
index ec3c72cab43b10d0740a2b2595f9b472afbf4989..a1d6347616146c49694034d2c2bd01e6017a907c 100644
--- a/storage/innobase/log/log0crypt.cc
+++ b/storage/innobase/log/log0crypt.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
diff --git a/storage/innobase/log/log0log.cc b/storage/innobase/log/log0log.cc
index cd00394cded9a12206b2ed5b04ec409197fea6d0..86d483ae6f7fe2bd8eb85ce85ed9e5228b8f4fe3 100644
--- a/storage/innobase/log/log0log.cc
+++ b/storage/innobase/log/log0log.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2009, Google Inc.
-Copyright (c) 2014, 2018, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted by
 Google, Inc. Those modifications are gratefully acknowledged and are described
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1197,7 +1197,6 @@ log_io_complete(
 
 	group->n_pending_writes--;
 	log_sys->n_pending_writes--;
-	MONITOR_DEC(MONITOR_PENDING_LOG_WRITE);
 
 	unlock = log_group_check_flush_completion(group);
 	unlock = unlock | log_sys_check_flush_completion();
@@ -1246,8 +1245,6 @@ log_group_file_header_flush(
 	if (log_do_write) {
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		srv_stats.os_log_pending_writes.inc();
 
 		fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->space_id, 0,
@@ -1373,8 +1370,6 @@ log_group_write_buf(
 	if (log_do_write) {
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		srv_stats.os_log_pending_writes.inc();
 
 		ut_a(next_offset / UNIV_PAGE_SIZE <= ULINT_MAX);
@@ -1514,7 +1509,6 @@ log_write_up_to(
 	}
 #endif /* UNIV_DEBUG */
 	log_sys->n_pending_writes++;
-	MONITOR_INC(MONITOR_PENDING_LOG_WRITE);
 
 	group = UT_LIST_GET_FIRST(log_sys->log_groups);
 	group->n_pending_writes++;	/*!< We assume here that we have only
@@ -1604,7 +1598,6 @@ log_write_up_to(
 
 	group->n_pending_writes--;
 	log_sys->n_pending_writes--;
-	MONITOR_DEC(MONITOR_PENDING_LOG_WRITE);
 
 	unlock = log_group_check_flush_completion(group);
 	unlock = unlock | log_sys_check_flush_completion();
@@ -1788,7 +1781,6 @@ log_io_complete_checkpoint(void)
 	ut_ad(log_sys->n_pending_checkpoint_writes > 0);
 
 	log_sys->n_pending_checkpoint_writes--;
-	MONITOR_DEC(MONITOR_PENDING_CHECKPOINT_WRITE);
 
 	if (log_sys->n_pending_checkpoint_writes == 0) {
 		log_complete_checkpoint();
@@ -1936,12 +1928,9 @@ log_group_checkpoint(
 		}
 
 		log_sys->n_pending_checkpoint_writes++;
-		MONITOR_INC(MONITOR_PENDING_CHECKPOINT_WRITE);
 
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		/* We send as the last parameter the group machine address
 		added with 1, as we want to distinguish between a normal log
 		file write and a checkpoint field write */
@@ -2028,8 +2017,6 @@ log_group_read_checkpoint_info(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_READ | OS_FILE_LOG, true, group->space_id, 0,
 	       field / UNIV_PAGE_SIZE, field % UNIV_PAGE_SIZE,
 		OS_FILE_LOG_BLOCK_SIZE, log_sys->checkpoint_buf, NULL, 0);
@@ -2325,8 +2312,6 @@ log_group_read_log_seg(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	ut_a(source_offset / UNIV_PAGE_SIZE <= ULINT_MAX);
 
 	fil_io(OS_FILE_READ | OS_FILE_LOG, sync, group->space_id, 0,
@@ -2355,7 +2340,7 @@ log_group_read_log_seg(
 	start_lsn += len;
 	buf += len;
 
-	if (recv_sys->report(ut_time())) {
+	if (recv_sys->report(time(NULL))) {
 		ib_logf(IB_LOG_LEVEL_INFO, "Read redo log up to LSN=" LSN_PF,
 			start_lsn);
 		service_manager_extend_timeout(INNODB_EXTEND_TIMEOUT_INTERVAL,
@@ -2417,8 +2402,6 @@ log_group_archive_file_header_write(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->archive_space_id,
 	       dest_offset / UNIV_PAGE_SIZE,
 	       dest_offset % UNIV_PAGE_SIZE,
@@ -2452,8 +2435,6 @@ log_group_archive_completed_header_write(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->archive_space_id,
 	       dest_offset / UNIV_PAGE_SIZE,
 	       dest_offset % UNIV_PAGE_SIZE,
@@ -2581,8 +2562,6 @@ log_group_archive(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	//TODO (jonaso): This must be dead code??
 	log_encrypt_before_write(log_sys->next_checkpoint_no,
 				 buf, start_lsn, len);
diff --git a/storage/innobase/log/log0recv.cc b/storage/innobase/log/log0recv.cc
index deaf5e88d7cb4d66d2ed30835360072ebfc2818b..3b3c7c23224201a494c95704dcaa3ac58edf799e 100644
--- a/storage/innobase/log/log0recv.cc
+++ b/storage/innobase/log/log0recv.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1997, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2013, 2017, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -423,7 +423,7 @@ recv_sys_init(
 		recv_sys->last_block_buf_start, OS_FILE_LOG_BLOCK_SIZE));
 
 	recv_sys->found_corrupt_log = FALSE;
-	recv_sys->progress_time = ut_time();
+	recv_sys->progress_time = time(NULL);
 
 	recv_max_page_lsn = 0;
 
@@ -1702,7 +1702,7 @@ recv_recover_page_func(
 
 	mtr_commit(&mtr);
 
-	ib_time_t time = ut_time();
+	time_t now = time(NULL);
 
 	mutex_enter(&recv_sys->mutex);
 
@@ -1714,7 +1714,7 @@ recv_recover_page_func(
 
 	ut_a(recv_sys->n_addrs > 0);
 	if (ulint n = --recv_sys->n_addrs) {
-		if (recv_sys->report(time)) {
+		if (recv_sys->report(now)) {
 			ib_logf(IB_LOG_LEVEL_INFO,
 				"To recover: " ULINTPF " pages from log", n);
 			service_manager_extend_timeout(
@@ -2631,30 +2631,30 @@ recv_scan_log_recs(
 		fprintf(stderr, "Scanned lsn no %lu\n",
 		log_block_convert_lsn_to_no(scanned_lsn));
 		*/
-		if (no != log_block_convert_lsn_to_no(scanned_lsn)
-		    || !log_block_checksum_is_ok_or_old_format(log_block, true)) {
+		if (no != log_block_convert_lsn_to_no(scanned_lsn)) {
+			/* Garbage or an incompletely written log block.
+			We will not report any error; because this can happen
+			when InnoDB was killed while it was writing
+			redo log. We simply treat this as an abrupt end of the
+			redo log. */
+			finished = true;
+			break;
+		} else if (!log_block_checksum_is_ok_or_old_format(
+					log_block, true)) {
 
-			if (no == log_block_convert_lsn_to_no(scanned_lsn)
-			    && !log_block_checksum_is_ok_or_old_format(
-				    log_block, true)) {
-				fprintf(stderr,
-					"InnoDB: Log block no %lu at"
-					" lsn " LSN_PF " has\n"
-					"InnoDB: ok header, but checksum field"
-					" contains %lu, should be %lu\n",
-					(ulong) no,
-					scanned_lsn,
-					(ulong) log_block_get_checksum(
-						log_block),
-					(ulong) log_block_calc_checksum(
-						log_block));
-			}
+			fprintf(stderr,
+				"InnoDB: Log block no %lu at"
+				" lsn " LSN_PF " has\n"
+				"InnoDB: ok header, but checksum field"
+				" contains %lu, should be %lu\n",
+				(ulong) no,
+				scanned_lsn,
+				(ulong) log_block_get_checksum(log_block),
+				(ulong) log_block_calc_checksum(log_block));
 
 			maybe_encrypted = log_crypt_block_maybe_encrypted(log_block,
 					&log_crypt_err);
 
-			/* Garbage or an incompletely written log block */
-
 			/* Print checkpoint encryption keys if present */
 			log_crypt_print_checkpoint_keys(log_block);
 			finished = TRUE;
diff --git a/storage/innobase/mach/mach0data.cc b/storage/innobase/mach/mach0data.cc
index feeedb01609480df367944474cc503565c09b811..064d997cd7c8675be7da94d55bdf683599385659 100644
--- a/storage/innobase/mach/mach0data.cc
+++ b/storage/innobase/mach/mach0data.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/mem/mem0dbg.cc b/storage/innobase/mem/mem0dbg.cc
index a77785a369ade125c0e3742f67719cf65dec810e..2d8db48db2e050b37cfa0ef215d644dee9437877 100644
--- a/storage/innobase/mem/mem0dbg.cc
+++ b/storage/innobase/mem/mem0dbg.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/mem/mem0mem.cc b/storage/innobase/mem/mem0mem.cc
index f91126697fc71683a12a1b7145a577355037aab7..82c1292b4bebc55ce2f36ea6da78bad37233cc9f 100644
--- a/storage/innobase/mem/mem0mem.cc
+++ b/storage/innobase/mem/mem0mem.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/mem/mem0pool.cc b/storage/innobase/mem/mem0pool.cc
index fe9a84d21fa16530cd47a7df7019569c08c4d9d7..5002a5b3997f9b0de66ff0ddc2d074c5f209e947 100644
--- a/storage/innobase/mem/mem0pool.cc
+++ b/storage/innobase/mem/mem0pool.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/mtr/mtr0log.cc b/storage/innobase/mtr/mtr0log.cc
index 82df1df63d4d4f672b0bda7cae3cfb4512fd16f2..189d52d68b08fa3d9a4fc680f26501c2351b7734 100644
--- a/storage/innobase/mtr/mtr0log.cc
+++ b/storage/innobase/mtr/mtr0log.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/mtr/mtr0mtr.cc b/storage/innobase/mtr/mtr0mtr.cc
index e40aa43193a26ef171b88387938ada696c0bd5e0..2db6e62cbed84248eda6bb5cf79c637adce13f4f 100644
--- a/storage/innobase/mtr/mtr0mtr.cc
+++ b/storage/innobase/mtr/mtr0mtr.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/os/os0file.cc b/storage/innobase/os/os0file.cc
index a417de1261f4e10ff3b9af03d84b9a2c988aea3a..3a403f880c190ee3f8868b38c715cd234351515f 100644
--- a/storage/innobase/os/os0file.cc
+++ b/storage/innobase/os/os0file.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2009, Percona Inc.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted
 by Percona Inc.. Those modifications are
@@ -22,7 +22,7 @@ Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 ***********************************************************************/
 
@@ -4208,7 +4208,7 @@ os_aio_init(
 
 	os_aio_validate();
 
-	os_last_printout = ut_time();
+	os_last_printout = time(NULL);
 
 	if (srv_use_native_aio) {
 		return(TRUE);
@@ -4521,7 +4521,7 @@ os_aio_array_reserve_slot(
 	}
 
 	slot->reserved = TRUE;
-	slot->reservation_time = ut_time();
+	slot->reservation_time = time(NULL);
 	slot->message1 = message1;
 	slot->message2 = message2;
 	slot->file     = file;
@@ -5600,7 +5600,7 @@ os_aio_simulated_handle(
 		if (slot->reserved) {
 
 			age = (ulint) difftime(
-				ut_time(), slot->reservation_time);
+				time(NULL), slot->reservation_time);
 
 			if ((age >= 2 && age > biggest_age)
 			    || (age >= 2 && age == biggest_age
@@ -6014,7 +6014,7 @@ os_aio_print(
 	}
 
 	putc('\n', file);
-	current_time = ut_time();
+	current_time = time(NULL);
 	time_elapsed = 0.001 + difftime(current_time, os_last_printout);
 
 	fprintf(file,
diff --git a/storage/innobase/os/os0proc.cc b/storage/innobase/os/os0proc.cc
index f711fbb025bace43a56672338cdf4449a8543643..46adace855060cafa3cc7641e37276fe083c9b55 100644
--- a/storage/innobase/os/os0proc.cc
+++ b/storage/innobase/os/os0proc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/os/os0sync.cc b/storage/innobase/os/os0sync.cc
index 03c538488326748ad76bbe0743adbb4306632ece..fadc9e877ba6e3f1efddc90a39de93dd62bdd036 100644
--- a/storage/innobase/os/os0sync.cc
+++ b/storage/innobase/os/os0sync.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -72,9 +72,6 @@ UNIV_INTERN ulint	os_event_count		= 0;
 UNIV_INTERN ulint	os_mutex_count		= 0;
 UNIV_INTERN ulint	os_fast_mutex_count	= 0;
 
-/* The number of microsecnds in a second. */
-static const ulint MICROSECS_IN_A_SECOND = 1000000;
-
 #ifdef UNIV_PFS_MUTEX
 UNIV_INTERN mysql_pfs_key_t	event_os_mutex_key;
 UNIV_INTERN mysql_pfs_key_t	os_mutex_key;
@@ -654,26 +651,9 @@ os_event_wait_time_low(
 	struct timespec	abstime;
 
 	if (time_in_usec != OS_SYNC_INFINITE_TIME) {
-		struct timeval	tv;
-		int		ret;
-		ulint		sec;
-		ulint		usec;
-
-		ret = ut_usectime(&sec, &usec);
-		ut_a(ret == 0);
-
-		tv.tv_sec = sec;
-		tv.tv_usec = usec;
-
-		tv.tv_usec += time_in_usec;
-
-		if ((ulint) tv.tv_usec >= MICROSECS_IN_A_SECOND) {
-			tv.tv_sec += tv.tv_usec / MICROSECS_IN_A_SECOND;
-			tv.tv_usec %= MICROSECS_IN_A_SECOND;
-		}
-
-		abstime.tv_sec  = tv.tv_sec;
-		abstime.tv_nsec = tv.tv_usec * 1000;
+		ulonglong usec = ulonglong(time_in_usec) + my_hrtime().val;
+		abstime.tv_sec = usec / 1000000;
+		abstime.tv_nsec = (usec % 1000000) * 1000;
 	} else {
 		abstime.tv_nsec = 999999999;
 		abstime.tv_sec = (time_t) ULINT_MAX;
diff --git a/storage/innobase/os/os0thread.cc b/storage/innobase/os/os0thread.cc
index 205bef0207936a729d45ec629577e0f6b7cdcf3b..792d9cc4e10184bf1799b2ed5a347a34ca95c859 100644
--- a/storage/innobase/os/os0thread.cc
+++ b/storage/innobase/os/os0thread.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/page/page0cur.cc b/storage/innobase/page/page0cur.cc
index 692cb393afd334ce0f7d45c40f41b8b73e6b550d..e9ac4b4bb04c9fb96d06664b69a8af27ec83aee7 100644
--- a/storage/innobase/page/page0cur.cc
+++ b/storage/innobase/page/page0cur.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -48,7 +48,7 @@ number between 0 and 2^64-1 inclusive. The formula and the constants
 being used are:
 X[n+1] = (a * X[n] + c) mod m
 where:
-X[0] = ut_time_us(NULL)
+X[0] = my_interval_timer()
 a = 1103515245 (3^5 * 5 * 7 * 129749)
 c = 12345 (3 * 5 * 823)
 m = 18446744073709551616 (2^64)
@@ -61,12 +61,10 @@ page_cur_lcg_prng(void)
 {
 #define LCG_a	1103515245
 #define LCG_c	12345
-	static ib_uint64_t	lcg_current = 0;
-	static ibool		initialized = FALSE;
+	static uint64_t	lcg_current;
 
-	if (!initialized) {
-		lcg_current = (ib_uint64_t) ut_time_us(NULL);
-		initialized = TRUE;
+	if (!lcg_current) {
+		lcg_current = my_interval_timer();
 	}
 
 	/* no need to "% 2^64" explicitly because lcg_current is
diff --git a/storage/innobase/page/page0page.cc b/storage/innobase/page/page0page.cc
index 9d267f3f0f457e21e2e7dbc446548778659e76d8..ac16d71322ac5a16a5df156a9686ea70b3473107 100644
--- a/storage/innobase/page/page0page.cc
+++ b/storage/innobase/page/page0page.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/page/page0zip.cc b/storage/innobase/page/page0zip.cc
index 5090aa4057589581f1683b6666fcd0da07df316c..233ccaa6a90cd44fa179f2a39cf339c972763edd 100644
--- a/storage/innobase/page/page0zip.cc
+++ b/storage/innobase/page/page0zip.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 2005, 2016, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2014, 2018, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1234,7 +1234,7 @@ page_zip_compress(
 	ulint		n_blobs	= 0;
 	byte*		storage;/* storage of uncompressed columns */
 #ifndef UNIV_HOTBACKUP
-	ullint		usec = ut_time_us(NULL);
+	const ulonglong	ns = my_interval_timer();
 #endif /* !UNIV_HOTBACKUP */
 #ifdef PAGE_ZIP_COMPRESS_DBG
 	FILE*		logfile = NULL;
@@ -1483,7 +1483,7 @@ page_zip_compress(
 			dict_index_zip_failure(index);
 		}
 
-		ullint	time_diff = ut_time_us(NULL) - usec;
+		const ullint time_diff = (my_interval_timer() - ns) / 1000;
 		page_zip_stat[page_zip->ssize - 1].compressed_usec
 			+= time_diff;
 		if (cmp_per_index_enabled) {
@@ -1551,7 +1551,7 @@ page_zip_compress(
 	}
 #endif /* PAGE_ZIP_COMPRESS_DBG */
 #ifndef UNIV_HOTBACKUP
-	ullint	time_diff = ut_time_us(NULL) - usec;
+	const ullint time_diff = (my_interval_timer() - ns) / 1000;
 	page_zip_stat[page_zip->ssize - 1].compressed_ok++;
 	page_zip_stat[page_zip->ssize - 1].compressed_usec += time_diff;
 	if (cmp_per_index_enabled) {
@@ -3000,7 +3000,7 @@ page_zip_decompress(
 	mem_heap_t*	heap;
 	ulint*		offsets;
 #ifndef UNIV_HOTBACKUP
-	ullint		usec = ut_time_us(NULL);
+	const ulonglong	ns = my_interval_timer();
 #endif /* !UNIV_HOTBACKUP */
 
 	ut_ad(page_zip_simple_validate(page_zip));
@@ -3186,7 +3186,7 @@ page_zip_decompress(
 	page_zip_fields_free(index);
 	mem_heap_free(heap);
 #ifndef UNIV_HOTBACKUP
-	ullint	time_diff = ut_time_us(NULL) - usec;
+	const uint64_t time_diff = (my_interval_timer() - ns) / 1000;
 	page_zip_stat[page_zip->ssize - 1].decompressed++;
 	page_zip_stat[page_zip->ssize - 1].decompressed_usec += time_diff;
 
diff --git a/storage/innobase/pars/lexyy.cc b/storage/innobase/pars/lexyy.cc
index 33de48e7b2f0f81f3dacdb04570cb67320fade4a..ed6e2b53c2f18d488ae8570988734a1d9c138201 100644
--- a/storage/innobase/pars/lexyy.cc
+++ b/storage/innobase/pars/lexyy.cc
@@ -912,7 +912,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /******************************************************
diff --git a/storage/innobase/pars/make_bison.sh b/storage/innobase/pars/make_bison.sh
index 2618be102bc093f7bc94c50d55c93e66ff541479..a1722f5f6b7394253cb74559f7579a75090a2b64 100755
--- a/storage/innobase/pars/make_bison.sh
+++ b/storage/innobase/pars/make_bison.sh
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # generate parser files from bison input files.
 
diff --git a/storage/innobase/pars/make_flex.sh b/storage/innobase/pars/make_flex.sh
index 54aebb259d991e2152d487fa31c42ee6c43fc4ed..b976a56a9dd603d16d0d8e97cd1af2e5b6195c9e 100755
--- a/storage/innobase/pars/make_flex.sh
+++ b/storage/innobase/pars/make_flex.sh
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # generate lexer files from flex input files.
 
diff --git a/storage/innobase/pars/pars0grm.cc b/storage/innobase/pars/pars0grm.cc
index b360f36e597c9d3e643f3fb9ab918cbe5cfdf1d6..c3649d9255565a71ee8e55b391e53f70533b8977 100644
--- a/storage/innobase/pars/pars0grm.cc
+++ b/storage/innobase/pars/pars0grm.cc
@@ -18,7 +18,7 @@
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Boston, MA 02110-1335  USA.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
diff --git a/storage/innobase/pars/pars0grm.y b/storage/innobase/pars/pars0grm.y
index 60913287cc48556a001c6b37fd212651f32cbe33..2e4776caaf47e100f7ef28754e43f7b47afc7c14 100644
--- a/storage/innobase/pars/pars0grm.y
+++ b/storage/innobase/pars/pars0grm.y
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/pars/pars0lex.l b/storage/innobase/pars/pars0lex.l
index 60756413c0a48315f007687c971958fc3e6d2a51..71699d2f099805f3414cc85b2a9ce25aca7f950a 100644
--- a/storage/innobase/pars/pars0lex.l
+++ b/storage/innobase/pars/pars0lex.l
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/pars/pars0opt.cc b/storage/innobase/pars/pars0opt.cc
index 5a7e1861d74ba638ee5d1c77166d77a34b29d4ef..135402f8144830f1a9e21420d2b30bc2528853dc 100644
--- a/storage/innobase/pars/pars0opt.cc
+++ b/storage/innobase/pars/pars0opt.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/pars/pars0pars.cc b/storage/innobase/pars/pars0pars.cc
index 24bbeb1d36dd0d0bbf5a007e7605fdb88aa85039..3c7f5a812463ebaddbd737decc1c829772068398 100644
--- a/storage/innobase/pars/pars0pars.cc
+++ b/storage/innobase/pars/pars0pars.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St,
-Fifth Floor, Boston, MA 02110-1301 USA
+Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/pars/pars0sym.cc b/storage/innobase/pars/pars0sym.cc
index b01a69cb33a04021df4ddb57ca72d57e3cb63d07..4ce1946d7be6dcaa083b6d643427c46448a840de 100644
--- a/storage/innobase/pars/pars0sym.cc
+++ b/storage/innobase/pars/pars0sym.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/que/que0que.cc b/storage/innobase/que/que0que.cc
index 957a90e71b372b973348c1cfb2de73f978522212..602b92854db133827c191ce18e59fc1be6a7d4b9 100644
--- a/storage/innobase/que/que0que.cc
+++ b/storage/innobase/que/que0que.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/read/read0read.cc b/storage/innobase/read/read0read.cc
index faf4102437bb210fd4e6df2ebc84856b14a7d60a..be304dfcc2e06447e109dab197ec9188e1e60b1a 100644
--- a/storage/innobase/read/read0read.cc
+++ b/storage/innobase/read/read0read.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/rem/rem0cmp.cc b/storage/innobase/rem/rem0cmp.cc
index 616ef322fb52bb4b11b761a4a90eff25bb90526b..5f9c497cb29a03545ff7cf5ff5528d571822bcff 100644
--- a/storage/innobase/rem/rem0cmp.cc
+++ b/storage/innobase/rem/rem0cmp.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/rem/rem0rec.cc b/storage/innobase/rem/rem0rec.cc
index 0b01bddb5d7b3ed7832721885c1375a541494eb8..daab2d2171893cdfad638e574c9a22c9db75cca2 100644
--- a/storage/innobase/rem/rem0rec.cc
+++ b/storage/innobase/rem/rem0rec.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/row/row0ext.cc b/storage/innobase/row/row0ext.cc
index 32b78391d6a66297aa80d7efbcfb9ffa10677476..bfc8165c9c5034996487570f77c79d42c63f3624 100644
--- a/storage/innobase/row/row0ext.cc
+++ b/storage/innobase/row/row0ext.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/row/row0ftsort.cc b/storage/innobase/row/row0ftsort.cc
index 6af93fb83fbb7ec25ebbaef6a9ba5a19a7297c63..5a8e085ad8ff59ff6b8e8306380da7dad3c41d79 100644
--- a/storage/innobase/row/row0ftsort.cc
+++ b/storage/innobase/row/row0ftsort.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1500,7 +1500,6 @@ row_fts_merge_insert(
 	ins_ctx.fts_table.type = FTS_INDEX_TABLE;
 	ins_ctx.fts_table.index_id = index->id;
 	ins_ctx.fts_table.table_id = table->id;
-	ins_ctx.fts_table.parent = index->table->name;
 	ins_ctx.fts_table.table = index->table;
 	space = table->space;
 
diff --git a/storage/innobase/row/row0import.cc b/storage/innobase/row/row0import.cc
index 2351b1d0a941413f3a6f2e204ed7efd6a6d29645..e15549491278b98127f875e0088d527f45d6fcae 100644
--- a/storage/innobase/row/row0import.cc
+++ b/storage/innobase/row/row0import.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/row/row0ins.cc b/storage/innobase/row/row0ins.cc
index 14b52f21e6838ec5dfa727cf043e21f36a920750..4a4c5112f883ec93ca3556c2b4c0951e010d1b6f 100644
--- a/storage/innobase/row/row0ins.cc
+++ b/storage/innobase/row/row0ins.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1293,7 +1293,7 @@ row_ins_foreign_check_on_constraint(
 	err = wsrep_append_foreign_key(
 				       thr_get_trx(thr),
 				       foreign,
-				       clust_rec,
+				       cascade->pcur->old_rec,
 				       clust_index,
 				       FALSE, WSREP_KEY_EXCLUSIVE);
 	if (err != DB_SUCCESS) {
@@ -1664,6 +1664,11 @@ row_ins_check_foreign_constraint(
 						check_index,
 						check_ref,
 						key_type);
+
+					if (err != DB_SUCCESS) {
+						fprintf(stderr,
+							"WSREP: foreign key append failed: %d\n", err);
+					}
 #endif /* WITH_WSREP */
 					goto end_scan;
 				} else if (foreign->type != 0) {
diff --git a/storage/innobase/row/row0log.cc b/storage/innobase/row/row0log.cc
index c170e7e8cd339d605e71e4b802acd01bf677d431..4d2ee83024abf4fb2e0c6e6ada0de9a59c0b81f3 100644
--- a/storage/innobase/row/row0log.cc
+++ b/storage/innobase/row/row0log.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/row/row0merge.cc b/storage/innobase/row/row0merge.cc
index 4d836cebd6a1a2a561ef700ec287da3a6a789447..ac7eddfedbba178fe23d90e1c791163ea026a903 100644
--- a/storage/innobase/row/row0merge.cc
+++ b/storage/innobase/row/row0merge.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -27,6 +27,7 @@ Completed by Sunny Bains and Marko Makela
 #include 
 #include 
 #include 
+#include 
 
 #include "row0merge.h"
 #include "row0ext.h"
@@ -42,15 +43,8 @@ Completed by Sunny Bains and Marko Makela
 #include "row0import.h"
 #include "handler0alter.h"
 #include "ha_prototypes.h"
-#include "math.h" /* log() */
 #include "fil0crypt.h"
 
-float my_log2f(float n)
-{
-	/* log(n) / log(2) is log2. */
-	return (float)(log((double)n) / log((double)2));
-}
-
 /* Ignore posix_fadvise() on those platforms where it does not exist */
 #if defined __WIN__
 # define posix_fadvise(fd, offset, len, advice) /* nothing */
@@ -1922,6 +1916,7 @@ row_merge_read_clustered_index(
 			UNIV_MEM_INVALID(&block[0], srv_sort_buf_size);
 
 			merge_buf[i] = row_merge_buf_empty(buf);
+			buf = merge_buf[i];
 
 			if (UNIV_LIKELY(row != NULL)) {
 				/* Try writing the record again, now
@@ -2070,8 +2065,7 @@ row_merge_read_clustered_index(
 				     false, true, false);
 
 		if (err == DB_SUCCESS) {
-			fts_update_next_doc_id(
-				0, new_table, old_table->name, max_doc_id);
+			fts_update_next_doc_id(NULL, new_table, max_doc_id);
 		}
 	}
 
@@ -2504,18 +2498,13 @@ row_merge_sort(
 	/* Record the number of merge runs we need to perform */
 	num_runs = file->offset;
 
-	/* Find the number N which 2^N is greater or equal than num_runs */
-	/* N is merge sort running count */
-	total_merge_sort_count = ceil(my_log2f(num_runs));
-	if(total_merge_sort_count <= 0) {
-		total_merge_sort_count=1;
-	}
-
 	/* If num_runs are less than 1, nothing to merge */
 	if (num_runs <= 1) {
 		DBUG_RETURN(error);
 	}
 
+	total_merge_sort_count = ceil(log2f(num_runs));
+
 	/* "run_offset" records each run's first offset number */
 	run_offset = (ulint*) mem_alloc(file->offset * sizeof(ulint));
 
diff --git a/storage/innobase/row/row0mysql.cc b/storage/innobase/row/row0mysql.cc
index 47e0368e7873a11bf7f53279c772b40dce5f94ef..52aa43384f7cbd4b187758e37bdac4ec83ba2679 100644
--- a/storage/innobase/row/row0mysql.cc
+++ b/storage/innobase/row/row0mysql.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1490,8 +1490,9 @@ row_insert_for_mysql(
 		doc_id = fts_get_doc_id_from_row(table, node->row);
 
 		if (doc_id <= 0) {
-			fprintf(stderr,
-				"InnoDB: FTS Doc ID must be large than 0 \n");
+			ib_logf(IB_LOG_LEVEL_ERROR,
+				"FTS_DOC_ID must be larger than 0"
+				" for table %s", table->name);
 			err = DB_FTS_INVALID_DOCID;
 			trx->error_state = DB_FTS_INVALID_DOCID;
 			goto error_exit;
@@ -1502,12 +1503,10 @@ row_insert_for_mysql(
 				= table->fts->cache->next_doc_id;
 
 			if (doc_id < next_doc_id) {
-				fprintf(stderr,
-					"InnoDB: FTS Doc ID must be large than"
-					" " UINT64PF " for table",
-					next_doc_id - 1);
-				ut_print_name(stderr, trx, TRUE, table->name);
-				putc('\n', stderr);
+				ib_logf(IB_LOG_LEVEL_ERROR,
+					"FTS_DOC_ID must be larger than "
+					UINT64PF " for table %s",
+					next_doc_id - 1, table->name);
 
 				err = DB_FTS_INVALID_DOCID;
 				trx->error_state = DB_FTS_INVALID_DOCID;
@@ -3831,7 +3830,7 @@ row_truncate_table_for_mysql(
 					os_thread_sleep(10000000););
 
 			table->fts->fts_status |= TABLE_DICT_LOCKED;
-			fts_update_next_doc_id(trx, table, NULL, 0);
+			fts_update_next_doc_id(trx, table, 0);
 			fts_cache_clear(table->fts->cache);
 			fts_cache_init(table->fts->cache);
 			table->fts->fts_status &= ~TABLE_DICT_LOCKED;
@@ -3884,7 +3883,7 @@ row_drop_table_for_mysql(
 	const char*	name,	/*!< in: table name */
 	trx_t*		trx,	/*!< in: transaction handle */
 	bool		drop_db,/*!< in: true=dropping whole database */
-	ibool		create_failed,/*!(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_PENDING_LOG_WRITE},
 
 	{"log_pending_checkpoint_writes", "recovery", "Pending checkpoints",
-	 MONITOR_NONE,
+	 static_cast(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_PENDING_CHECKPOINT_WRITE},
 
 	{"log_num_log_io", "recovery", "Number of log I/Os",
-	 MONITOR_NONE,
+	 static_cast(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_LOG_IO},
 
 	{"log_waits", "recovery",
@@ -1970,6 +1973,25 @@ srv_mon_process_existing_counter(
 		value = (mon_type_t) log_sys->lsn;
 		break;
 
+	case MONITOR_PENDING_LOG_WRITE:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(log_sys->n_pending_writes);
+		mutex_exit(&log_sys->mutex);
+		break;
+
+	case MONITOR_PENDING_CHECKPOINT_WRITE:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(
+		    log_sys->n_pending_checkpoint_writes);
+		mutex_exit(&log_sys->mutex);
+		break;
+
+	case MONITOR_LOG_IO:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(log_sys->n_log_ios);
+		mutex_exit(&log_sys->mutex);
+		break;
+
 	case MONITOR_OVLD_BUF_OLDEST_LSN:
 		value = (mon_type_t) buf_pool_get_oldest_modification();
 		break;
diff --git a/storage/innobase/srv/srv0srv.cc b/storage/innobase/srv/srv0srv.cc
index f17a6ddd94b24fa85f42c5bf5be973719ffedc9a..af9474dd9b39dd035a6c3754d0242ca45d87d986 100644
--- a/storage/innobase/srv/srv0srv.cc
+++ b/storage/innobase/srv/srv0srv.cc
@@ -28,7 +28,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1716,10 +1716,11 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 	pfs_register_thread(srv_monitor_thread_key);
 #endif /* UNIV_PFS_THREAD */
 
-	srv_last_monitor_time = ut_time();
-	last_table_monitor_time = ut_time();
-	last_tablespace_monitor_time = ut_time();
-	last_monitor_time = ut_time();
+	current_time = time(NULL);
+	srv_last_monitor_time = current_time;
+	last_table_monitor_time = current_time;
+	last_tablespace_monitor_time = current_time;
+	last_monitor_time = current_time;
 	mutex_skipped = 0;
 	last_srv_print_monitor = srv_print_innodb_monitor;
 loop:
@@ -1730,12 +1731,12 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 
 	os_event_wait_time_low(srv_monitor_event, 5000000, sig_count);
 
-	current_time = ut_time();
+	current_time = time(NULL);
 
 	time_elapsed = difftime(current_time, last_monitor_time);
 
 	if (time_elapsed > 15) {
-		last_monitor_time = ut_time();
+		last_monitor_time = current_time;
 
 		if (srv_print_innodb_monitor) {
 			/* Reset mutex_skipped counter everytime
@@ -1782,7 +1783,7 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 		if (srv_print_innodb_tablespace_monitor
 		    && difftime(current_time,
 				last_tablespace_monitor_time) > 60) {
-			last_tablespace_monitor_time = ut_time();
+			last_tablespace_monitor_time = current_time;
 
 			fputs("========================"
 			      "========================\n",
@@ -1808,7 +1809,7 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 		if (srv_print_innodb_table_monitor
 		    && difftime(current_time, last_table_monitor_time) > 60) {
 
-			last_table_monitor_time = ut_time();
+			last_table_monitor_time = current_time;
 
 			fprintf(stderr, "Warning: %s\n",
 				DEPRECATED_MSG_INNODB_TABLE_MONITOR);
@@ -2183,20 +2184,16 @@ static
 void
 srv_shutdown_print_master_pending(
 /*==============================*/
-	ib_time_t*	last_print_time,	/*!< last time the function
+	time_t*		last_print_time,	/*!< last time the function
 						print the message */
 	ulint		n_tables_to_drop,	/*!< number of tables to
 						be dropped */
 	ulint		n_bytes_merged)		/*!< number of change buffer
 						just merged */
 {
-	ib_time_t	current_time;
-	double		time_elapsed;
+	time_t current_time = time(NULL);
 
-	current_time = ut_time();
-	time_elapsed = ut_difftime(current_time, *last_print_time);
-
-	if (time_elapsed > 60) {
+	if (difftime(current_time, *last_print_time) > 60) {
 		*last_print_time = current_time;
 
 		if (n_tables_to_drop) {
@@ -2231,8 +2228,8 @@ void
 srv_master_do_active_tasks(void)
 /*============================*/
 {
-	ib_time_t	cur_time = ut_time();
-	ullint		counter_time = ut_time_us(NULL);
+	time_t		cur_time = time(NULL);
+	ulonglong	counter_time = microsecond_interval_timer();
 	ulint		n_evicted = 0;
 
 	/* First do the tasks that we are suppose to do at each
@@ -2261,7 +2258,7 @@ srv_master_do_active_tasks(void)
 
 	/* Do an ibuf merge */
 	srv_main_thread_op_info = "doing insert buffer merge";
-	counter_time = ut_time_us(NULL);
+	counter_time = microsecond_interval_timer();
 	ibuf_merge_in_background(false);
 	MONITOR_INC_TIME_IN_MICRO_SECS(
 		MONITOR_SRV_IBUF_MERGE_MICROSECOND, counter_time);
@@ -2323,9 +2320,7 @@ void
 srv_master_do_idle_tasks(void)
 /*==========================*/
 {
-	ullint	counter_time;
 	ulint	n_evicted = 0;
-
 	++srv_main_idle_loops;
 
 	MONITOR_INC(MONITOR_MASTER_IDLE_LOOPS);
@@ -2334,7 +2329,7 @@ srv_master_do_idle_tasks(void)
 	/* ALTER TABLE in MySQL requires on Unix that the table handler
 	can drop tables lazily after there no longer are SELECT
 	queries to them. */
-	counter_time = ut_time_us(NULL);
+	ulonglong counter_time = microsecond_interval_timer();
 	srv_main_thread_op_info = "doing background drop tables";
 	row_drop_tables_for_mysql_in_background();
 	MONITOR_INC_TIME_IN_MICRO_SECS(
@@ -2351,7 +2346,7 @@ srv_master_do_idle_tasks(void)
 	log_free_check();
 
 	/* Do an ibuf merge */
-	counter_time = ut_time_us(NULL);
+	counter_time = microsecond_interval_timer();
 	srv_main_thread_op_info = "doing insert buffer merge";
 	ibuf_merge_in_background(true);
 	MONITOR_INC_TIME_IN_MICRO_SECS(
@@ -2392,7 +2387,7 @@ srv_shutdown(bool ibuf_merge)
 {
 	ulint		n_bytes_merged	= 0;
 	ulint		n_tables_to_drop;
-	ib_time_t	now = ut_time();
+	time_t		now = time(NULL);
 
 	do {
 		ut_ad(!srv_read_only_mode);
@@ -2541,10 +2536,10 @@ srv_purge_should_exit(ulint n_purged)
 	/* Slow shutdown was requested. */
 	if (n_purged) {
 #if defined HAVE_SYSTEMD && !defined EMBEDDED_LIBRARY
-		static ib_time_t progress_time;
-		ib_time_t time = ut_time();
-		if (time - progress_time >= 15) {
-			progress_time = time;
+		static time_t progress_time;
+		time_t now = time(NULL);
+		if (now - progress_time >= 15) {
+			progress_time = now;
 			service_manager_extend_timeout(
 				INNODB_EXTEND_TIMEOUT_INTERVAL,
 				"InnoDB: to purge " ULINTPF " transactions",
diff --git a/storage/innobase/srv/srv0start.cc b/storage/innobase/srv/srv0start.cc
index b300724e2a90d9931940cc7102e32a64bf4027e4..a73e67e9f5ba6740f0449c570c10e35ef93a0022 100644
--- a/storage/innobase/srv/srv0start.cc
+++ b/storage/innobase/srv/srv0start.cc
@@ -28,7 +28,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -43,7 +43,6 @@ Created 2/16/1996 Heikki Tuuri
 #include "pars0pars.h"
 #include "row0ftsort.h"
 #include "ut0mem.h"
-#include "ut0timer.h"
 #include "mem0mem.h"
 #include "data0data.h"
 #include "data0type.h"
@@ -1669,9 +1668,6 @@ innobase_start_or_create_for_mysql()
 
 	os_fast_mutex_free(&srv_os_test_mutex);
 
-	/* This should be initialized early */
-	ut_init_timer();
-
 	if (srv_force_recovery == SRV_FORCE_NO_LOG_REDO) {
 		srv_read_only_mode = 1;
 	}
diff --git a/storage/innobase/sync/sync0arr.cc b/storage/innobase/sync/sync0arr.cc
index 167ad1d9e466c7edfeb69929254bd04fc62cf94b..9af6cfe5f0cacf31a8ecce25789ee5e1f5fe224b 100644
--- a/storage/innobase/sync/sync0arr.cc
+++ b/storage/innobase/sync/sync0arr.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2015, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2008, Google Inc.
-Copyright (c) 2013, 2015, MariaDB Corporation. All Rights Reserved.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted by
 Google, Inc. Those modifications are gratefully acknowledged and are described
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -122,8 +122,10 @@ struct sync_cell_t {
 					has not been signalled in the
 					period between the reset and
 					wait call. */
-	time_t		reservation_time;/*!< time when the thread reserved
-					the wait cell */
+	/** time(NULL) when the wait cell was reserved.
+	FIXME: sync_array_print_long_waits_low() may display bogus
+	warnings when the system time is adjusted to the past! */
+	time_t		reservation_time;
 };
 
 /* NOTE: It is allowed for a thread to wait
@@ -403,7 +405,7 @@ sync_array_reserve_cell(
                         event = sync_cell_get_event(cell);
 			cell->signal_count = os_event_reset(event);
 
-			cell->reservation_time = ut_time();
+			cell->reservation_time = time(NULL);
 
 			cell->thread = os_thread_get_curr_id();
 
diff --git a/storage/innobase/sync/sync0rw.cc b/storage/innobase/sync/sync0rw.cc
index 8919716ff9cbf9e5a9a5a7e863009aaf5989ae83..46428e266c6ee69f8f61761b08e58e9cfbfd0a5f 100644
--- a/storage/innobase/sync/sync0rw.cc
+++ b/storage/innobase/sync/sync0rw.cc
@@ -19,7 +19,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/sync/sync0sync.cc b/storage/innobase/sync/sync0sync.cc
index 9abad30a9bdc06f9542e19bd87963f1b6c1f5b1d..2c9084945509df06cc8d9c73c13db984b2930e97 100644
--- a/storage/innobase/sync/sync0sync.cc
+++ b/storage/innobase/sync/sync0sync.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/trx/trx0i_s.cc b/storage/innobase/trx/trx0i_s.cc
index b05161a9932a47a98dc990836f5c07d8a819c88a..57057f2f81e32433f5c56231e4920493b067eba3 100644
--- a/storage/innobase/trx/trx0i_s.cc
+++ b/storage/innobase/trx/trx0i_s.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2012, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -152,9 +153,8 @@ struct i_s_table_cache_t {
 struct trx_i_s_cache_t {
 	rw_lock_t	rw_lock;	/*!< read-write lock protecting
 					the rest of this structure */
-	ullint		last_read;	/*!< last time the cache was read;
-					measured in microseconds since
-					epoch */
+	ulonglong	last_read;	/*!< last time the cache was read;
+					measured in nanoseconds */
 	i_s_table_cache_t innodb_trx;	/*!< innodb_trx table */
 	i_s_table_cache_t innodb_locks;	/*!< innodb_locks table */
 	i_s_table_cache_t innodb_lock_waits;/*!< innodb_lock_waits table */
@@ -475,7 +475,7 @@ fill_trx_row(
 	ut_ad(lock_mutex_own());
 
 	row->trx_id = trx->id;
-	row->trx_started = (ib_time_t) trx->start_time;
+	row->trx_started = trx->start_time;
 	row->trx_state = trx_get_que_state_str(trx);
 	row->requested_lock_row = requested_lock_row;
 	ut_ad(requested_lock_row == NULL
@@ -484,7 +484,7 @@ fill_trx_row(
 	if (trx->lock.wait_lock != NULL) {
 
 		ut_a(requested_lock_row != NULL);
-		row->trx_wait_started = (ib_time_t) trx->lock.wait_started;
+		row->trx_wait_started = trx->lock.wait_started;
 	} else {
 		ut_a(requested_lock_row == NULL);
 		row->trx_wait_started = 0;
@@ -1217,33 +1217,20 @@ add_trx_relevant_locks_to_cache(
 }
 
 /** The minimum time that a cache must not be updated after it has been
-read for the last time; measured in microseconds. We use this technique
+read for the last time; measured in nanoseconds. We use this technique
 to ensure that SELECTs which join several INFORMATION SCHEMA tables read
 the same version of the cache. */
-#define CACHE_MIN_IDLE_TIME_US	100000 /* 0.1 sec */
+#define CACHE_MIN_IDLE_TIME_NS	100000000 /* 0.1 sec */
 
 /*******************************************************************//**
 Checks if the cache can safely be updated.
-@return	TRUE if can be updated */
-static
-ibool
-can_cache_be_updated(
-/*=================*/
-	trx_i_s_cache_t*	cache)	/*!< in: cache */
+@return whether the cache can be updated */
+static bool can_cache_be_updated(trx_i_s_cache_t* cache)
 {
-	ullint	now;
-
 #ifdef UNIV_SYNC_DEBUG
 	ut_a(rw_lock_own(&cache->rw_lock, RW_LOCK_EX));
 #endif
-
-	now = ut_time_us(NULL);
-	if (now - cache->last_read > CACHE_MIN_IDLE_TIME_US) {
-
-		return(TRUE);
-	}
-
-	return(FALSE);
+	return my_interval_timer() - cache->last_read > CACHE_MIN_IDLE_TIME_NS;
 }
 
 /*******************************************************************//**
@@ -1375,8 +1362,6 @@ trx_i_s_possibly_fetch_data_into_cache(
 /*===================================*/
 	trx_i_s_cache_t*	cache)	/*!< in/out: cache */
 {
-	ullint	now;
-
 #ifdef UNIV_SYNC_DEBUG
 	ut_a(rw_lock_own(&cache->rw_lock, RW_LOCK_EX));
 #endif
@@ -1399,8 +1384,7 @@ trx_i_s_possibly_fetch_data_into_cache(
 	lock_mutex_exit();
 
 	/* update cache last read time */
-	now = ut_time_us(NULL);
-	cache->last_read = now;
+	cache->last_read = my_interval_timer();
 
 	return(0);
 }
diff --git a/storage/innobase/trx/trx0purge.cc b/storage/innobase/trx/trx0purge.cc
index 5c7146fd730bafb344ad1cc1e8e0eee4a3e6fa86..bd61bc859610f76311fbceac8b5c3c62411fc8fe 100644
--- a/storage/innobase/trx/trx0purge.cc
+++ b/storage/innobase/trx/trx0purge.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -146,7 +146,8 @@ trx_purge_sys_create(
 	here only because the query threads code requires it. It is otherwise
 	quite unnecessary. We should get rid of it eventually. */
 	purge_sys->trx->id = 0;
-	purge_sys->trx->start_time = ut_time();
+	purge_sys->trx->start_time = time(NULL);
+	purge_sys->trx->start_time_micro = microsecond_interval_timer();
 	purge_sys->trx->state = TRX_STATE_ACTIVE;
 	purge_sys->trx->op_info = "purge trx";
 
diff --git a/storage/innobase/trx/trx0rec.cc b/storage/innobase/trx/trx0rec.cc
index f70f8a613881e4085ea5393b3436391f139681ac..c1cc794ebfe4c4845c59d9e17d80580fdd74abd1 100644
--- a/storage/innobase/trx/trx0rec.cc
+++ b/storage/innobase/trx/trx0rec.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/trx/trx0roll.cc b/storage/innobase/trx/trx0roll.cc
index af17cfe6be586a64a3d5351e6082bba33274d922..de673208d3278de887936c5fa911e43313cf65a5 100644
--- a/storage/innobase/trx/trx0roll.cc
+++ b/storage/innobase/trx/trx0roll.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -738,11 +738,11 @@ trx_roll_must_shutdown()
 		return true;
 	}
 
-	ib_time_t time = ut_time();
+	time_t now = time(NULL);
 	mutex_enter(&trx_sys->mutex);
 	mutex_enter(&recv_sys->mutex);
 
-	if (recv_sys->report(time)) {
+	if (recv_sys->report(now)) {
 		ulint n_trx = 0;
 		ulonglong n_rows = 0;
 		for (const trx_t* t = UT_LIST_GET_FIRST(trx_sys->rw_trx_list);
diff --git a/storage/innobase/trx/trx0rseg.cc b/storage/innobase/trx/trx0rseg.cc
index 16fa334872b75661cdb4c0e4de997a4718658995..944e2353de8f0bb1f4515b8e7ba40c3df52cfcb1 100644
--- a/storage/innobase/trx/trx0rseg.cc
+++ b/storage/innobase/trx/trx0rseg.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/trx/trx0sys.cc b/storage/innobase/trx/trx0sys.cc
index da2e4917cb0fa61b7d497d64f95af42c653e20aa..13fd37f4e507bd581f1c127e567b563f1a3ee542 100644
--- a/storage/innobase/trx/trx0sys.cc
+++ b/storage/innobase/trx/trx0sys.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/trx/trx0trx.cc b/storage/innobase/trx/trx0trx.cc
index 4175777cc61c17f0dc51826adfaca085c9a194c0..06de737a5b33eaeeb4ae845fb65ecffc64d8e8f1 100644
--- a/storage/innobase/trx/trx0trx.cc
+++ b/storage/innobase/trx/trx0trx.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -570,7 +570,8 @@ trx_resurrect_insert(
 	/* trx_start_low() is not called with resurrect, so need to initialize
 	start time here.*/
 	if (trx->state != TRX_STATE_COMMITTED_IN_MEMORY) {
-		trx->start_time = ut_time();
+		trx->start_time = time(NULL);
+		trx->start_time_micro = microsecond_interval_timer();
 	}
 
 	if (undo->dict_operation) {
@@ -656,7 +657,8 @@ trx_resurrect_update(
 	start time here.*/
 	if (trx->state == TRX_STATE_ACTIVE
 	    || trx->state == TRX_STATE_PREPARED) {
-		trx->start_time = ut_time();
+		trx->start_time = time(NULL);
+		trx->start_time_micro = microsecond_interval_timer();
 	}
 
 	if (undo->dict_operation) {
@@ -905,10 +907,11 @@ trx_start_low(
 
 	mutex_exit(&trx_sys->mutex);
 
-	trx->start_time = ut_time();
+	trx->start_time = time(NULL);
 
-	trx->start_time_micro =
-		trx->mysql_thd ? thd_query_start_micro(trx->mysql_thd) : 0;
+	trx->start_time_micro = trx->mysql_thd
+		? thd_query_start_micro(trx->mysql_thd)
+		: microsecond_interval_timer();
 
 	MONITOR_INC(MONITOR_TRX_ACTIVE);
 }
diff --git a/storage/innobase/trx/trx0undo.cc b/storage/innobase/trx/trx0undo.cc
index b137c461ec3507db876ee2d64a8f97a89ee9cc5f..03acdefd2f49a4f87a0c020eaed9ba8d1ab5a2df 100644
--- a/storage/innobase/trx/trx0undo.cc
+++ b/storage/innobase/trx/trx0undo.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/usr/usr0sess.cc b/storage/innobase/usr/usr0sess.cc
index e1bd71ff1a0025aa9ff207c634426a0ec75af1f3..911a3c91ca2bd534da975f8057bf4f18ff185440 100644
--- a/storage/innobase/usr/usr0sess.cc
+++ b/storage/innobase/usr/usr0sess.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0bh.cc b/storage/innobase/ut/ut0bh.cc
index 1a3038a0d71146510369662b4fcd0673f9173adb..a74d56f5094c03fb80d2dfa2e4173c76e2331d7d 100644
--- a/storage/innobase/ut/ut0bh.cc
+++ b/storage/innobase/ut/ut0bh.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0byte.cc b/storage/innobase/ut/ut0byte.cc
index bc592edc6bfab05d7b09c48d01914e783680268c..2a56bcc0bb46a0a4b668e482959800ccab3ccda1 100644
--- a/storage/innobase/ut/ut0byte.cc
+++ b/storage/innobase/ut/ut0byte.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0crc32.cc b/storage/innobase/ut/ut0crc32.cc
index 8f3c699c24f34271f384b24ff9bb2624c6019337..4d2d311ff48c74a2d8e554c5d835cfdaa2bbdc12 100644
--- a/storage/innobase/ut/ut0crc32.cc
+++ b/storage/innobase/ut/ut0crc32.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -59,7 +59,7 @@ mysys/my_perf.c, contributed by Facebook under the following license.
 
    You should have received a copy of the GNU General Public License along with
    this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* The below CRC32 implementation is based on the implementation included with
  * zlib with modifications to process 8 bytes at a time and using SSE 4.2
@@ -316,26 +316,7 @@ ut_crc32_init()
 	ut_cpuid(vend, &model, &family, &stepping,
 		 &features_ecx, &features_edx);
 
-	/* Valgrind does not understand the CRC32 instructions:
-
-	vex amd64->IR: unhandled instruction bytes: 0xF2 0x48 0xF 0x38 0xF0 0xA
-	valgrind: Unrecognised instruction at address 0xad3db5.
-	Your program just tried to execute an instruction that Valgrind
-	did not recognise.  There are two possible reasons for this.
-	1. Your program has a bug and erroneously jumped to a non-code
-	   location.  If you are running Memcheck and you just saw a
-	   warning about a bad jump, it's probably your program's fault.
-	2. The instruction is legitimate but Valgrind doesn't handle it,
-	   i.e. it's Valgrind's fault.  If you think this is the case or
-	   you are not sure, please let us know and we'll try to fix it.
-	Either way, Valgrind will now raise a SIGILL signal which will
-	probably kill your program.
-
-	*/
-#ifndef UNIV_DEBUG_VALGRIND
 	ut_crc32_sse2_enabled = (features_ecx >> 20) & 1;
-#endif /* UNIV_DEBUG_VALGRIND */
-
 #endif /* defined(__GNUC__) && defined(__x86_64__) */
 
 #if defined(__linux__) && defined(__powerpc__) && defined(AT_HWCAP2) \
diff --git a/storage/innobase/ut/ut0dbg.cc b/storage/innobase/ut/ut0dbg.cc
index a0bd82b385ab4b64d4a2033ae00c0f2bac18232f..fa766de28c03baa2ecbe24d38feaacea8a5b57d2 100644
--- a/storage/innobase/ut/ut0dbg.cc
+++ b/storage/innobase/ut/ut0dbg.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0list.cc b/storage/innobase/ut/ut0list.cc
index f906061d18571cea6a120849ac247acc8ffae4f5..f33b6ed31c26d4bdd1ff94ce91e32711403f8230 100644
--- a/storage/innobase/ut/ut0list.cc
+++ b/storage/innobase/ut/ut0list.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0mem.cc b/storage/innobase/ut/ut0mem.cc
index 2bb5d9ce332b97845d5f4d02b65eb7084c38e221..e75418fe71a79dfea998243544afd1615da7975b 100644
--- a/storage/innobase/ut/ut0mem.cc
+++ b/storage/innobase/ut/ut0mem.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0rbt.cc b/storage/innobase/ut/ut0rbt.cc
index e93844af6007fc68f7e1bd7a368916a3cf02720c..693f6a809c782779190373934240079f871bf02b 100644
--- a/storage/innobase/ut/ut0rbt.cc
+++ b/storage/innobase/ut/ut0rbt.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /********************************************************************//**
diff --git a/storage/innobase/ut/ut0rnd.cc b/storage/innobase/ut/ut0rnd.cc
index 3b4d7381181c20507e5339bd01eb5f6a50d1a6cd..f881636e21218a1b0f309f860f1a16f6dc4a0079 100644
--- a/storage/innobase/ut/ut0rnd.cc
+++ b/storage/innobase/ut/ut0rnd.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0timer.cc b/storage/innobase/ut/ut0timer.cc
deleted file mode 100644
index 85292cce28cd01121b50a204041309f24ae56e18..0000000000000000000000000000000000000000
--- a/storage/innobase/ut/ut0timer.cc
+++ /dev/null
@@ -1,92 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, SkySQL Ab. All Rights Reserved.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file ut/ut0timer.cc
-Timer rountines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-
-#include "data0type.h"
-#include 
-#include 
-
-/**************************************************************//**
-Initial timer definition
-@return	0 */
-static
-ulonglong
-ut_timer_none(void)
-/*===============*/
-{
-	return 0;
-}
-
-/**************************************************************//**
-Function pointer to point selected timer function.
-@return	timer current value */
-ulonglong (*ut_timer_now)(void) = &ut_timer_none;
-
-struct my_timer_unit_info ut_timer;
-
-/**************************************************************//**
-Sets up the data required for use of my_timer_* functions.
-Selects the best timer by high frequency, and tight resolution.
-Points my_timer_now() to the selected timer function.
-Initializes my_timer struct to contain the info for selected timer.*/
-UNIV_INTERN
-void
-ut_init_timer(void)
-/*===============*/
-{
-	MY_TIMER_INFO all_timer_info;
-	my_timer_init(&all_timer_info);
-
-	if (all_timer_info.cycles.frequency > 1000000 &&
-	    all_timer_info.cycles.resolution == 1) {
-		ut_timer = all_timer_info.cycles;
-		ut_timer_now = &my_timer_cycles;
-	} else if (all_timer_info.nanoseconds.frequency > 1000000 &&
-		 all_timer_info.nanoseconds.resolution == 1) {
-		ut_timer = all_timer_info.nanoseconds;
-		ut_timer_now = &my_timer_nanoseconds;
-	} else if (all_timer_info.microseconds.frequency >= 1000000 &&
-		all_timer_info.microseconds.resolution == 1) {
-		ut_timer = all_timer_info.microseconds;
-		ut_timer_now = &my_timer_microseconds;
-
-	} else if (all_timer_info.milliseconds.frequency >= 1000 &&
-		all_timer_info.milliseconds.resolution == 1) {
-		ut_timer = all_timer_info.milliseconds;
-		ut_timer_now = &my_timer_milliseconds;
-	} else if (all_timer_info.ticks.frequency >= 1000 &&
-		 /* Will probably be false */
-		all_timer_info.ticks.resolution == 1) {
-		ut_timer = all_timer_info.ticks;
-		ut_timer_now = &my_timer_ticks;
-	} else {
-		/* None are acceptable, so leave it as "None", and fill in struct */
-		ut_timer.frequency = 1; /* Avoid div-by-zero */
-		ut_timer.overhead = 0; /* Since it doesn't do anything */
-		ut_timer.resolution = 10; /* Another sign it's bad */
-		ut_timer.routine = 0; /* None */
-	}
-}
diff --git a/storage/innobase/ut/ut0ut.cc b/storage/innobase/ut/ut0ut.cc
index 2a430c9c42271b1e9149fb0c6871fe4b9a3608f3..6e4061bc7ddd548c9b2557d721fdc3d91d7bd1dd 100644
--- a/storage/innobase/ut/ut0ut.cc
+++ b/storage/innobase/ut/ut0ut.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1994, 2017, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -43,142 +44,6 @@ Created 5/11/1994 Heikki Tuuri
 # include "ha_prototypes.h"
 # include "mysql_com.h" /* NAME_LEN */
 # include 
-#endif /* UNIV_HOTBACKUP */
-
-#ifdef __WIN__
-typedef VOID(WINAPI *time_fn)(LPFILETIME);
-static time_fn ut_get_system_time_as_file_time = GetSystemTimeAsFileTime;
-
-/*****************************************************************//**
-NOTE: The Windows epoch starts from 1601/01/01 whereas the Unix
-epoch starts from 1970/1/1. For selection of constant see:
-http://support.microsoft.com/kb/167296/ */
-#define WIN_TO_UNIX_DELTA_USEC  ((ib_int64_t) 11644473600000000ULL)
-
-
-/*****************************************************************//**
-This is the Windows version of gettimeofday(2).
-@return	0 if all OK else -1 */
-static
-int
-ut_gettimeofday(
-/*============*/
-	struct timeval*	tv,	/*!< out: Values are relative to Unix epoch */
-	void*		tz)	/*!< in: not used */
-{
-	FILETIME	ft;
-	ib_int64_t	tm;
-
-	if (!tv) {
-		errno = EINVAL;
-		return(-1);
-	}
-
-	ut_get_system_time_as_file_time(&ft);
-
-	tm = (ib_int64_t) ft.dwHighDateTime << 32;
-	tm |= ft.dwLowDateTime;
-
-	ut_a(tm >= 0);	/* If tm wraps over to negative, the quotient / 10
-			does not work */
-
-	tm /= 10;	/* Convert from 100 nsec periods to usec */
-
-	/* If we don't convert to the Unix epoch the value for
-	struct timeval::tv_sec will overflow.*/
-	tm -= WIN_TO_UNIX_DELTA_USEC;
-
-	tv->tv_sec  = (long) (tm / 1000000L);
-	tv->tv_usec = (long) (tm % 1000000L);
-
-	return(0);
-}
-#else
-/** An alias for gettimeofday(2).  On Microsoft Windows, we have to
-reimplement this function. */
-#define	ut_gettimeofday		gettimeofday
-#endif
-
-/**********************************************************//**
-Returns system time. We do not specify the format of the time returned:
-the only way to manipulate it is to use the function ut_difftime.
-@return	system time */
-UNIV_INTERN
-ib_time_t
-ut_time(void)
-/*=========*/
-{
-	return(time(NULL));
-}
-
-#ifndef UNIV_HOTBACKUP
-/**********************************************************//**
-Returns system time.
-Upon successful completion, the value 0 is returned; otherwise the
-value -1 is returned and the global variable errno is set to indicate the
-error.
-@return	0 on success, -1 otherwise */
-UNIV_INTERN
-int
-ut_usectime(
-/*========*/
-	ulint*	sec,	/*!< out: seconds since the Epoch */
-	ulint*	ms)	/*!< out: microseconds since the Epoch+*sec */
-{
-	struct timeval	tv;
-	int		ret;
-	int		errno_gettimeofday;
-	int		i;
-
-	for (i = 0; i < 10; i++) {
-
-		ret = ut_gettimeofday(&tv, NULL);
-
-		if (ret == -1) {
-			errno_gettimeofday = errno;
-			ut_print_timestamp(stderr);
-			fprintf(stderr, "  InnoDB: gettimeofday(): %s\n",
-				strerror(errno_gettimeofday));
-			os_thread_sleep(100000);  /* 0.1 sec */
-			errno = errno_gettimeofday;
-		} else {
-			break;
-		}
-	}
-
-	if (ret != -1) {
-		*sec = (ulint) tv.tv_sec;
-		*ms  = (ulint) tv.tv_usec;
-	}
-
-	return(ret);
-}
-
-/**********************************************************//**
-Returns the number of microseconds since epoch. Similar to
-time(3), the return value is also stored in *tloc, provided
-that tloc is non-NULL.
-@return	us since epoch */
-UNIV_INTERN
-ullint
-ut_time_us(
-/*=======*/
-	ullint*	tloc)	/*!< out: us since epoch, if non-NULL */
-{
-	struct timeval	tv;
-	ullint		us;
-
-	ut_gettimeofday(&tv, NULL);
-
-	us = (ullint) tv.tv_sec * 1000000 + tv.tv_usec;
-
-	if (tloc != NULL) {
-		*tloc = us;
-	}
-
-	return(us);
-}
-
 /**********************************************************//**
 Returns the number of milliseconds since some epoch.  The
 value may wrap around.  It should only be used for heuristic
@@ -189,27 +54,9 @@ ulint
 ut_time_ms(void)
 /*============*/
 {
-	struct timeval	tv;
-
-	ut_gettimeofday(&tv, NULL);
-
-	return((ulint) tv.tv_sec * 1000 + tv.tv_usec / 1000);
+	return static_cast(my_interval_timer() / 1000000);
 }
 #endif /* !UNIV_HOTBACKUP */
-
-/**********************************************************//**
-Returns the difference of two times in seconds.
-@return	time2 - time1 expressed in seconds */
-UNIV_INTERN
-double
-ut_difftime(
-/*========*/
-	ib_time_t	time2,	/*!< in: time */
-	ib_time_t	time1)	/*!< in: time */
-{
-	return(difftime(time2, time1));
-}
-
 #endif /* !UNIV_INNOCHECKSUM */
 
 /**********************************************************//**
@@ -352,43 +199,6 @@ ut_sprintf_timestamp_without_extra_chars(
 		cal_tm_ptr->tm_sec);
 #endif
 }
-
-/**********************************************************//**
-Returns current year, month, day. */
-UNIV_INTERN
-void
-ut_get_year_month_day(
-/*==================*/
-	ulint*	year,	/*!< out: current year */
-	ulint*	month,	/*!< out: month */
-	ulint*	day)	/*!< out: day */
-{
-#ifdef __WIN__
-	SYSTEMTIME cal_tm;
-
-	GetLocalTime(&cal_tm);
-
-	*year = (ulint) cal_tm.wYear;
-	*month = (ulint) cal_tm.wMonth;
-	*day = (ulint) cal_tm.wDay;
-#else
-	struct tm* cal_tm_ptr;
-	time_t	   tm;
-
-#ifdef HAVE_LOCALTIME_R
-	struct tm  cal_tm;
-	time(&tm);
-	localtime_r(&tm, &cal_tm);
-	cal_tm_ptr = &cal_tm;
-#else
-	time(&tm);
-	cal_tm_ptr = localtime(&tm);
-#endif
-	*year = (ulint) cal_tm_ptr->tm_year + 1900;
-	*month = (ulint) cal_tm_ptr->tm_mon + 1;
-	*day = (ulint) cal_tm_ptr->tm_mday;
-#endif
-}
 #endif /* UNIV_HOTBACKUP */
 
 #ifndef UNIV_HOTBACKUP
diff --git a/storage/innobase/ut/ut0vec.cc b/storage/innobase/ut/ut0vec.cc
index 5842d9f1c0e17999c42769bddcc18bcb5516d0f8..591895049de4ae79d770c095a8153bd1ed9e4725 100644
--- a/storage/innobase/ut/ut0vec.cc
+++ b/storage/innobase/ut/ut0vec.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/innobase/ut/ut0wqueue.cc b/storage/innobase/ut/ut0wqueue.cc
index fce39bd817ef4798ace8003cee7f2800182404be..f8ba9fd30358068a0a77f66ea163eb543883a595 100644
--- a/storage/innobase/ut/ut0wqueue.cc
+++ b/storage/innobase/ut/ut0wqueue.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -127,7 +127,7 @@ ib_wqueue_timedwait(
 /*================*/
 					/* out: work item or NULL on timeout*/
 	ib_wqueue_t*	wq,		/* in: work queue */
-	ib_time_t	wait_in_usecs)	/* in: wait time in micro seconds */
+	ulint		wait_in_usecs)	/* in: wait time in micro seconds */
 {
 	ib_list_node_t*	node = NULL;
 
diff --git a/storage/maria/CMakeLists.txt b/storage/maria/CMakeLists.txt
index b8e3350ca76ff4f6062e0f162f700acb74600e12..2c46492c93e07d3a8be11ae428c59b2eb31e99ca 100644
--- a/storage/maria/CMakeLists.txt
+++ b/storage/maria/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 INCLUDE(CMakeDependentOption)
 
diff --git a/storage/maria/ft_maria.c b/storage/maria/ft_maria.c
index 4a5c660af6d607430c9704bff6524b4974858684..9d4b86899f1b255ccc40bb2a224d7c4227119495 100644
--- a/storage/maria/ft_maria.c
+++ b/storage/maria/ft_maria.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ha_maria.cc b/storage/maria/ha_maria.cc
index d438aa903787b5f42a6a396997e2dae29a10f34a..5f73a1dc1afd90d8dd044936867ea54802271b55 100644
--- a/storage/maria/ha_maria.cc
+++ b/storage/maria/ha_maria.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
@@ -3044,7 +3044,7 @@ static enum data_file_type maria_row_type(HA_CREATE_INFO *info)
 }
 
 
-int ha_maria::create(const char *name, register TABLE *table_arg,
+int ha_maria::create(const char *name, TABLE *table_arg,
                      HA_CREATE_INFO *ha_create_info)
 {
   int error;
diff --git a/storage/maria/ha_maria.h b/storage/maria/ha_maria.h
index f3548a381371ee6e1b6d78d9d7b9ecbfba217d65..865e3a2a72ad7c95aa6b19c3efc2c4f99f45f400 100644
--- a/storage/maria/ha_maria.h
+++ b/storage/maria/ha_maria.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface                               /* gcc class implementation */
diff --git a/storage/maria/lockman.c b/storage/maria/lockman.c
index efdf7e1c4b87a333976c843e3e425577322d0189..a23558e46ddc704d075b29e246a9f3b7336d9e22 100644
--- a/storage/maria/lockman.c
+++ b/storage/maria/lockman.c
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Generic Lock Manager
diff --git a/storage/maria/lockman.h b/storage/maria/lockman.h
index 2a5fc038b70f9f73b4c0f4273fe8ad0a4520fbf0..35d0d8f5bacece64cee8119f44fc6c324e6dea26 100644
--- a/storage/maria/lockman.h
+++ b/storage/maria/lockman.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _lockman_h
 #define _lockman_h
diff --git a/storage/maria/ma_bitmap.c b/storage/maria/ma_bitmap.c
index e8e2bc56b25cd6cc695b3298d98682d7fed53609..f03aef9b2289b33753e73184cd9255a4f3c684d4 100644
--- a/storage/maria/ma_bitmap.c
+++ b/storage/maria/ma_bitmap.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Bitmap handling (for records in block)
diff --git a/storage/maria/ma_blockrec.c b/storage/maria/ma_blockrec.c
index e2f72b4005babee7160d1d8f5931e687932632c5..9effdd7cd2e2f49ed4840bc60bed3b6588c6defe 100644
--- a/storage/maria/ma_blockrec.c
+++ b/storage/maria/ma_blockrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Storage of records in block
@@ -7549,7 +7549,7 @@ void _ma_print_block_info(MARIA_SHARE *share, uchar *buff)
 {
   LSN lsn= lsn_korr(buff);
 
-  printf("LSN: %lu,0x%lx  type: %u  dir_entries: %u  dir_free: %u  empty_space: %u\n",
+  printf("LSN: " LSN_FMT "  type: %u  dir_entries: %u  dir_free: %u  empty_space: %u\n",
          LSN_IN_PARTS(lsn),
          (uint)buff[PAGE_TYPE_OFFSET],
          (uint)buff[DIR_COUNT_OFFSET],
diff --git a/storage/maria/ma_blockrec.h b/storage/maria/ma_blockrec.h
index da865d9f5edb4f6089e450d0799ea7915a71ebf5..a8eaeef7bccf2c9e6e0f772b49d7f80f23217ff7 100644
--- a/storage/maria/ma_blockrec.h
+++ b/storage/maria/ma_blockrec.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Storage of records in block
@@ -190,8 +190,7 @@ MARIA_RECORD_POS _ma_write_init_block_record(MARIA_HA *info,
                                              const uchar *record);
 my_bool _ma_write_block_record(MARIA_HA *info, const uchar *record);
 my_bool _ma_write_abort_block_record(MARIA_HA *info);
-my_bool _ma_compare_block_record(register MARIA_HA *info,
-                                 register const uchar *record);
+my_bool _ma_compare_block_record(MARIA_HA *info, const uchar *record);
 void    _ma_compact_block_page(MARIA_SHARE *share, uchar *buff, uint rownr,
                                my_bool extend_block, TrID min_read_from,
                                uint min_row_length);
diff --git a/storage/maria/ma_cache.c b/storage/maria/ma_cache.c
index 0a45b43710a9dc2092db59b89a5d4a1e251366cc..764aad0788e03f1f158475764493e9aefaffe97e 100644
--- a/storage/maria/ma_cache.c
+++ b/storage/maria/ma_cache.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Functions for read record cacheing with maria
diff --git a/storage/maria/ma_changed.c b/storage/maria/ma_changed.c
index de591a590f375decf36c18e7b54ebe6b107b1b57..ef708a12a9f46afa16e4aa783c7a674a90864d7a 100644
--- a/storage/maria/ma_changed.c
+++ b/storage/maria/ma_changed.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Check if somebody has changed table since last check. */
 
diff --git a/storage/maria/ma_check.c b/storage/maria/ma_check.c
index 41086b930326c495f13d6150eb319959c20758b1..789a4d0d5b6bc29dbb2b157e3fd3574dc01fbc48 100644
--- a/storage/maria/ma_check.c
+++ b/storage/maria/ma_check.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Describe, check and repair of MARIA tables */
 
diff --git a/storage/maria/ma_check_standalone.h b/storage/maria/ma_check_standalone.h
index 48d8e5295a5f7cebf0a5a4834614b47f50db58c5..24c1779fbde17bb91668173cb08f19ec5169a6c2 100644
--- a/storage/maria/ma_check_standalone.h
+++ b/storage/maria/ma_check_standalone.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 
diff --git a/storage/maria/ma_checkpoint.c b/storage/maria/ma_checkpoint.c
index c00278781eae0ec1cdbf2cc1d47ff2428de70f10..79b33e0b1fc71c1d1eb2cfcd7f9abdfe08a3a89f 100644
--- a/storage/maria/ma_checkpoint.c
+++ b/storage/maria/ma_checkpoint.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3071 Maria checkpoint
@@ -170,7 +170,7 @@ static int really_execute_checkpoint(void)
     "Horizon" is a lower bound of the LSN of the next log record.
   */
   checkpoint_start_log_horizon= translog_get_horizon();
-  DBUG_PRINT("info",("checkpoint_start_log_horizon (%lu,0x%lx)",
+  DBUG_PRINT("info",("checkpoint_start_log_horizon " LSN_FMT "",
                      LSN_IN_PARTS(checkpoint_start_log_horizon)));
   lsn_store(checkpoint_start_log_horizon_char, checkpoint_start_log_horizon);
 
@@ -375,7 +375,7 @@ static void flush_all_tables(int what_to_flush)
                                   MA_STATE_INFO_WRITE_DONT_MOVE_OFFSET|
                                   MA_STATE_INFO_WRITE_LOCK);
         DBUG_PRINT("maria_flush_states",
-                   ("is_of_horizon: LSN (%lu,0x%lx)",
+                   ("is_of_horizon: LSN " LSN_FMT "",
                     LSN_IN_PARTS(info->s->state.is_of_horizon)));
         break;
       case 2:
diff --git a/storage/maria/ma_checkpoint.h b/storage/maria/ma_checkpoint.h
index df877ad2bbc4a035a1b2a8072bd6f2e28e3b8253..b306268ba5ab55e4f1d9985d213d558c0d8015b4 100644
--- a/storage/maria/ma_checkpoint.h
+++ b/storage/maria/ma_checkpoint.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3071 Maria checkpoint
diff --git a/storage/maria/ma_checksum.c b/storage/maria/ma_checksum.c
index 106e1f0145c25a3e8e418eed9ce51a41b8c449e6..0182dc7fd1096d770eaa4a7e8e3eb92730c506c9 100644
--- a/storage/maria/ma_checksum.c
+++ b/storage/maria/ma_checksum.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Calculate a checksum for a row */
 
diff --git a/storage/maria/ma_close.c b/storage/maria/ma_close.c
index b63340e23a6e1119150c04437c55caddc6114c26..5e4b286f8ab3d5d6e0dbd95b0b536b4088fc0554 100644
--- a/storage/maria/ma_close.c
+++ b/storage/maria/ma_close.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* close a isam-database */
 /*
diff --git a/storage/maria/ma_commit.c b/storage/maria/ma_commit.c
index 3850af8246cad77f779fbf2e1161529318df168f..4bd64bfdee064f90fde2717980df47b074f6b243 100644
--- a/storage/maria/ma_commit.c
+++ b/storage/maria/ma_commit.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "trnman.h"
diff --git a/storage/maria/ma_commit.h b/storage/maria/ma_commit.h
index 5cb86d8b3c72a5df6388f9d78fae45a9190abb39..77114bbbe7b2c7fbed231b4172a54f98c8baa945 100644
--- a/storage/maria/ma_commit.h
+++ b/storage/maria/ma_commit.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 C_MODE_START
 int ma_commit(TRN *trn);
diff --git a/storage/maria/ma_control_file.c b/storage/maria/ma_control_file.c
index f037589db29b42e6f4ce20b73cf4ddc9f462dc8a..c2a8e439d510be8f176b501ff92b7786af235669 100644
--- a/storage/maria/ma_control_file.c
+++ b/storage/maria/ma_control_file.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3234 Maria control file
diff --git a/storage/maria/ma_control_file.h b/storage/maria/ma_control_file.h
index 155c778c1058abb0632de8f87e27254318ab4016..268de184d07a8cd336ae7f1b47b5db96f6420e7a 100644
--- a/storage/maria/ma_control_file.h
+++ b/storage/maria/ma_control_file.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3234 Maria control file
diff --git a/storage/maria/ma_create.c b/storage/maria/ma_create.c
index f3af97014f0138a7da2321b8553a7167e0843ef4..263d8a307b1f4ea261c1be9d5ea9c019aa63e419 100644
--- a/storage/maria/ma_create.c
+++ b/storage/maria/ma_create.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Create a MARIA table */
 
diff --git a/storage/maria/ma_crypt.c b/storage/maria/ma_crypt.c
index cc605d79933220bfaac3c704f254a7ddb7f8e813..606593f36a702ef0246e17beb5b6963a01fd3996 100644
--- a/storage/maria/ma_crypt.c
+++ b/storage/maria/ma_crypt.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include "maria_def.h"
diff --git a/storage/maria/ma_crypt.h b/storage/maria/ma_crypt.h
index 309a8300eb86ceeac12e95a8b1e3417c956f22f0..2bbc1cda0c125d7b8276f95a11cc8afa86f4fbed 100644
--- a/storage/maria/ma_crypt.h
+++ b/storage/maria/ma_crypt.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef STORAGE_MARIA_MA_CRYPT_INCLUDED
 #define STORAGE_MARIA_MA_CRYPT_INCLUDED
diff --git a/storage/maria/ma_dbug.c b/storage/maria/ma_dbug.c
index 677a5270c2e90ac5e580e6dabd2202b89c0ac656..63bbc9edd1319f9bbdf7b2173f8eb4117b09a86e 100644
--- a/storage/maria/ma_dbug.c
+++ b/storage/maria/ma_dbug.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Support rutiner with are using with dbug */
 
diff --git a/storage/maria/ma_delete.c b/storage/maria/ma_delete.c
index 5d66015b9ac6bc58d8dbb9bac4ecc0a76e6109d8..bb004361dffee0f3876870041644bbe7bb87c9bf 100644
--- a/storage/maria/ma_delete.c
+++ b/storage/maria/ma_delete.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "ma_fulltext.h"
 #include "ma_rt_index.h"
diff --git a/storage/maria/ma_delete_all.c b/storage/maria/ma_delete_all.c
index a14603b24a574dffa7daa543dac551710d371e8e..e1d04997281289481b13fb85bf29551ef7a78377 100644
--- a/storage/maria/ma_delete_all.c
+++ b/storage/maria/ma_delete_all.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Remove all rows from a MARIA table */
 /* This clears the status information and truncates files */
diff --git a/storage/maria/ma_delete_table.c b/storage/maria/ma_delete_table.c
index 067ab280fdc9ef78326bcb177f2286bcc0eb9886..fee001df1e1d8350005f106c855a0b908e4cce29 100644
--- a/storage/maria/ma_delete_table.c
+++ b/storage/maria/ma_delete_table.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "ma_fulltext.h"
 #include "trnman_public.h"
diff --git a/storage/maria/ma_dynrec.c b/storage/maria/ma_dynrec.c
index 0234eb5fb7f326b440621a3caf652f9daeccf4f3..db9024ba352683bc81b1bcedb7f980156679aa00 100644
--- a/storage/maria/ma_dynrec.c
+++ b/storage/maria/ma_dynrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Functions to handle space-packed-records and blobs
diff --git a/storage/maria/ma_extra.c b/storage/maria/ma_extra.c
index f3800bc36bef660718f6897f81049d6b4ac7a405..90ad853aaf82a10a395a28faf31368896b287ad9 100644
--- a/storage/maria/ma_extra.c
+++ b/storage/maria/ma_extra.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #ifdef HAVE_SYS_MMAN_H
diff --git a/storage/maria/ma_ft_boolean_search.c b/storage/maria/ma_ft_boolean_search.c
index cce926839a46f4666301a1a824fb867dfe090817..8db97368c31311e240694875439e435ae0e28f5c 100644
--- a/storage/maria/ma_ft_boolean_search.c
+++ b/storage/maria/ma_ft_boolean_search.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_eval.c b/storage/maria/ma_ft_eval.c
index 1811a98abf9ff46b92126308bae4c688cdd297f4..22b19b993c831deb126a92af11e1169a80f0be3c 100644
--- a/storage/maria/ma_ft_eval.c
+++ b/storage/maria/ma_ft_eval.c
@@ -8,7 +8,7 @@
    GNU General Public License for more details.
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code
    added support for long options (my_getopt) 22.5.2002 by Jani Tolonen */
diff --git a/storage/maria/ma_ft_eval.h b/storage/maria/ma_ft_eval.h
index cd232d2bf93b67ee5df40df3e6c5824c229e7719..460171345458e53240248b16bc3847614368cc77 100644
--- a/storage/maria/ma_ft_eval.h
+++ b/storage/maria/ma_ft_eval.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_nlq_search.c b/storage/maria/ma_ft_nlq_search.c
index 438394d941b72fd99005e1923f962aa0660781da..8e13d127888d09a02e899b4232d37e9e08881268 100644
--- a/storage/maria/ma_ft_nlq_search.c
+++ b/storage/maria/ma_ft_nlq_search.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_parser.c b/storage/maria/ma_ft_parser.c
index 5e4d0deaa74b2bb78bafcd113b33a73d93c1e0a4..8e997cbb5f5051bb8a4d81b6abe7cbd59fb814c8 100644
--- a/storage/maria/ma_ft_parser.c
+++ b/storage/maria/ma_ft_parser.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_stem.c b/storage/maria/ma_ft_stem.c
index fdce4956963eed0510fbc0f6b4b52ff665329276..9f3d285813eb20cd9032e6302bd6b1f0de29cc82 100644
--- a/storage/maria/ma_ft_stem.c
+++ b/storage/maria/ma_ft_stem.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_test1.c b/storage/maria/ma_ft_test1.c
index 6839fcb9da81cce01405e1fc571354b4b6befc94..f1b1b53ea0c6913698abcaffdd2ceb71041652ba 100644
--- a/storage/maria/ma_ft_test1.c
+++ b/storage/maria/ma_ft_test1.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code
    added support for long options (my_getopt) 22.5.2002 by Jani Tolonen */
diff --git a/storage/maria/ma_ft_test1.h b/storage/maria/ma_ft_test1.h
index c724a368f982d1e43ec3adf859756583f969ac2b..0f4997a714244579ab457879369a7aac6411cd72 100644
--- a/storage/maria/ma_ft_test1.h
+++ b/storage/maria/ma_ft_test1.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ft_update.c b/storage/maria/ma_ft_update.c
index bd5e06dbc0205282111e44eebe05ee910736a8e5..212d7d94a1968f29ed601cfd227111ba6a57d52b 100644
--- a/storage/maria/ma_ft_update.c
+++ b/storage/maria/ma_ft_update.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_ftdefs.h b/storage/maria/ma_ftdefs.h
index 2a03e2d325c480520d701cb0e7bc5dca09f03ae3..90ca6feb086ebf402cce5a4bfcc84d8793428091 100644
--- a/storage/maria/ma_ftdefs.h
+++ b/storage/maria/ma_ftdefs.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_fulltext.h b/storage/maria/ma_fulltext.h
index 89f7268974cde9e6762f5261dc30f642eed9cbf2..944df3b817799184c88ac893658b53b2c56a9025 100644
--- a/storage/maria/ma_fulltext.h
+++ b/storage/maria/ma_fulltext.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_info.c b/storage/maria/ma_info.c
index da44da123d2567e108959fff96626356d0f4f665..01ae4f56efd6933d170cd221a31af65dc1973ab0 100644
--- a/storage/maria/ma_info.c
+++ b/storage/maria/ma_info.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Return useful base information for an open table */
 
diff --git a/storage/maria/ma_init.c b/storage/maria/ma_init.c
index 3b8f3ce907244b7f2f6398473740531779f27354..a104818ee2a1d1f13e713346b89b18cebaad58ec 100644
--- a/storage/maria/ma_init.c
+++ b/storage/maria/ma_init.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Initialize an maria-database */
 
diff --git a/storage/maria/ma_key.c b/storage/maria/ma_key.c
index 693959a61bd808f3700feec994077000f26f2c8f..aa9efff357e86a9566d698ac9ad8515357e7777a 100644
--- a/storage/maria/ma_key.c
+++ b/storage/maria/ma_key.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Functions to handle keys */
 
diff --git a/storage/maria/ma_key_recover.c b/storage/maria/ma_key_recover.c
index 610810756f2982fc3a4180146071eecb3b480c2b..8bfc41684dd441170714e13ec2646fd9c8f380eb 100644
--- a/storage/maria/ma_key_recover.c
+++ b/storage/maria/ma_key_recover.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Redo of index */
 
diff --git a/storage/maria/ma_key_recover.h b/storage/maria/ma_key_recover.h
index 4eaf1fd4ec8f198fb7f9d6fd2d8df1b803a41fdb..b5b50279d043c4f0f2553090658cdcf33058e90f 100644
--- a/storage/maria/ma_key_recover.h
+++ b/storage/maria/ma_key_recover.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   When we have finished the write/update/delete of a row, we have cleanups to
diff --git a/storage/maria/ma_keycache.c b/storage/maria/ma_keycache.c
index c3083445aee93600648e0c7ea288abd74bbf1d97..38004ca5d78621f7c1020d3ae8047c4436fc1119 100644
--- a/storage/maria/ma_keycache.c
+++ b/storage/maria/ma_keycache.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Key cache assignments
diff --git a/storage/maria/ma_locking.c b/storage/maria/ma_locking.c
index 4723c04e3cf9b72bcd932f8941da5dee21c0c7bc..a8cf936c8738a73178324c390fb716e10eb52ca2 100644
--- a/storage/maria/ma_locking.c
+++ b/storage/maria/ma_locking.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Locking of Maria-tables.
diff --git a/storage/maria/ma_loghandler.c b/storage/maria/ma_loghandler.c
index 8a5ce016858608bee51aac794589cc0bae475f67..beda5f46ff48228836db63fe0845e74018906287 100644
--- a/storage/maria/ma_loghandler.c
+++ b/storage/maria/ma_loghandler.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "trnman.h"
@@ -1175,7 +1175,7 @@ static my_bool translog_max_lsn_to_header(File file, LSN lsn)
   my_bool rc;
   DBUG_ENTER("translog_max_lsn_to_header");
   DBUG_PRINT("enter", ("File descriptor: %ld  "
-                       "lsn: (%lu,0x%lx)",
+                       "lsn: " LSN_FMT,
                        (long) file,
                        LSN_IN_PARTS(lsn)));
 
@@ -1248,7 +1248,7 @@ my_bool translog_read_file_header(LOGHANDLER_FILE_INFO *desc, File file)
   translog_interpret_file_header(desc, page_buff);
   DBUG_PRINT("info", ("timestamp: %llu  aria ver: %lu mysql ver: %lu  "
                       "server id %lu page size %lu file number %lu  "
-                      "max lsn: (%lu,0x%lx)",
+                      "max lsn: " LSN_FMT,
                       (ulonglong) desc->timestamp,
                       (ulong) desc->maria_version,
                       (ulong) desc->mysql_version,
@@ -1277,7 +1277,7 @@ static my_bool translog_set_lsn_for_files(uint32 from_file, uint32 to_file,
 {
   uint32 file;
   DBUG_ENTER("translog_set_lsn_for_files");
-  DBUG_PRINT("enter", ("From: %lu  to: %lu  lsn: (%lu,0x%lx)  locked: %d",
+  DBUG_PRINT("enter", ("From: %lu  to: %lu  lsn: " LSN_FMT "  locked: %d",
                        (ulong) from_file, (ulong) to_file,
                        LSN_IN_PARTS(lsn),
                        is_locked));
@@ -1506,7 +1506,7 @@ LSN translog_get_file_max_lsn_stored(uint32 file)
       info.max_lsn= LSN_ERROR;
     }
 
-    DBUG_PRINT("info", ("Max lsn: (%lu,0x%lx)", LSN_IN_PARTS(info.max_lsn)));
+    DBUG_PRINT("info", ("Max lsn: " LSN_FMT, LSN_IN_PARTS(info.max_lsn)));
     DBUG_RETURN(info.max_lsn);
   }
 }
@@ -1792,7 +1792,7 @@ static void translog_new_page_header(TRANSLOG_ADDRESS *horizon,
   if (log_descriptor.flags & TRANSLOG_PAGE_CRC)
   {
 #ifndef DBUG_OFF
-    DBUG_PRINT("info", ("write  0x11223344 CRC to (%lu,0x%lx)",
+    DBUG_PRINT("info", ("write  0x11223344 CRC to " LSN_FMT,
                         LSN_IN_PARTS(*horizon)));
     /* This will be overwritten by real CRC; This is just for debugging */
     int4store(ptr, 0x11223344);
@@ -1819,7 +1819,7 @@ static void translog_new_page_header(TRANSLOG_ADDRESS *horizon,
   }
   cursor->ptr= ptr;
   DBUG_PRINT("info", ("NewP buffer #%u: 0x%lx  chaser: %d  Size: %lu (%lu)  "
-                      "Horizon: (%lu,0x%lx)",
+                      "Horizon: " LSN_FMT,
                       (uint) cursor->buffer->buffer_no, (ulong) cursor->buffer,
                       cursor->chaser, (ulong) cursor->buffer->size,
                       (ulong) (cursor->ptr - cursor->buffer->buffer),
@@ -1924,14 +1924,14 @@ static void translog_finish_page(TRANSLOG_ADDRESS *horizon,
   uchar *page= cursor->ptr - cursor->current_page_fill;
   DBUG_ENTER("translog_finish_page");
   DBUG_PRINT("enter", ("Buffer: #%u 0x%lx  "
-                       "Buffer addr: (%lu,0x%lx)  "
-                       "Page addr: (%lu,0x%lx)  "
+                       "Buffer addr: " LSN_FMT "  "
+                       "Page addr: " LSN_FMT "  "
                        "size:%lu (%lu)  Pg:%u  left:%u",
                        (uint) cursor->buffer_no, (ulong) cursor->buffer,
                        LSN_IN_PARTS(cursor->buffer->offset),
-                       (ulong) LSN_FILE_NO(*horizon),
-                       (ulong) (LSN_OFFSET(*horizon) -
-                                cursor->current_page_fill),
+                       (uint) LSN_FILE_NO(*horizon),
+                       (uint) (LSN_OFFSET(*horizon) -
+                               cursor->current_page_fill),
                        (ulong) cursor->buffer->size,
                        (ulong) (cursor->ptr -cursor->buffer->buffer),
                        (uint) cursor->current_page_fill, (uint) left));
@@ -2197,7 +2197,7 @@ static my_bool translog_buffer_next(TRANSLOG_ADDRESS *horizon,
   my_bool chasing= cursor->chaser;
   DBUG_ENTER("translog_buffer_next");
 
-  DBUG_PRINT("info", ("horizon: (%lu,0x%lx)  chasing: %d",
+  DBUG_PRINT("info", ("horizon: " LSN_FMT "  chasing: %d",
                       LSN_IN_PARTS(log_descriptor.horizon), chasing));
 
   DBUG_ASSERT(cmp_translog_addr(log_descriptor.horizon, *horizon) >= 0);
@@ -2249,7 +2249,7 @@ static my_bool translog_buffer_next(TRANSLOG_ADDRESS *horizon,
       BUFFER_MAX_LSN(log_descriptor.buffers + old_buffer_no);
   }
   log_descriptor.buffers[old_buffer_no].next_buffer_offset= new_buffer->offset;
-  DBUG_PRINT("info", ("prev_last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+  DBUG_PRINT("info", ("prev_last_lsn set to " LSN_FMT "  buffer: 0x%lx",
                       LSN_IN_PARTS(new_buffer->prev_last_lsn),
                       (ulong) new_buffer));
   translog_new_page_header(horizon, cursor);
@@ -2274,9 +2274,9 @@ static void translog_set_sent_to_disk(struct st_translog_buffer *buffer)
 
   DBUG_ENTER("translog_set_sent_to_disk");
   mysql_mutex_lock(&log_descriptor.sent_to_disk_lock);
-  DBUG_PRINT("enter", ("lsn: (%lu,0x%lx) in_buffers: (%lu,0x%lx)  "
-                       "in_buffers_only: (%lu,0x%lx)  start: (%lu,0x%lx)  "
-                       "sent_to_disk: (%lu,0x%lx)",
+  DBUG_PRINT("enter", ("lsn: " LSN_FMT " in_buffers: " LSN_FMT "  "
+                       "in_buffers_only: " LSN_FMT "  start: " LSN_FMT "  "
+                       "sent_to_disk: " LSN_FMT,
                        LSN_IN_PARTS(lsn),
                        LSN_IN_PARTS(in_buffers),
                        LSN_IN_PARTS(log_descriptor.log_start),
@@ -2314,8 +2314,8 @@ static void translog_set_only_in_buffers(TRANSLOG_ADDRESS in_buffers)
 {
   DBUG_ENTER("translog_set_only_in_buffers");
   mysql_mutex_lock(&log_descriptor.sent_to_disk_lock);
-  DBUG_PRINT("enter", ("in_buffers: (%lu,0x%lx)  "
-                       "in_buffers_only: (%lu,0x%lx)",
+  DBUG_PRINT("enter", ("in_buffers: " LSN_FMT "  "
+                       "in_buffers_only: " LSN_FMT,
                        LSN_IN_PARTS(in_buffers),
                        LSN_IN_PARTS(log_descriptor.in_buffers_only)));
   /* LSN_IMPOSSIBLE == 0 => it will work for very first time */
@@ -2369,7 +2369,7 @@ static LSN translog_get_sent_to_disk()
   DBUG_ENTER("translog_get_sent_to_disk");
   mysql_mutex_lock(&log_descriptor.sent_to_disk_lock);
   lsn= log_descriptor.sent_to_disk;
-  DBUG_PRINT("info", ("sent to disk up to (%lu,0x%lx)", LSN_IN_PARTS(lsn)));
+  DBUG_PRINT("info", ("sent to disk up to " LSN_FMT, LSN_IN_PARTS(lsn)));
   mysql_mutex_unlock(&log_descriptor.sent_to_disk_lock);
   DBUG_RETURN(lsn);
 }
@@ -2578,8 +2578,8 @@ my_bool translog_prev_buffer_flush_wait(struct st_translog_buffer *buffer)
   TRANSLOG_FILE *file= buffer->file;
   uint8 ver= buffer->ver;
   DBUG_ENTER("translog_prev_buffer_flush_wait");
-  DBUG_PRINT("enter", ("buffer: 0x%lx  #%u  offset: (%lu,0x%lx)  "
-                       "prev sent: (%lu,0x%lx) prev offset: (%lu,0x%lx)",
+  DBUG_PRINT("enter", ("buffer: 0x%lx  #%u  offset: " LSN_FMT "  "
+                       "prev sent: " LSN_FMT " prev offset: " LSN_FMT,
                        (ulong) buffer, (uint) buffer->buffer_no,
                        LSN_IN_PARTS(buffer->offset),
                        LSN_IN_PARTS(buffer->prev_sent_to_disk),
@@ -2619,8 +2619,8 @@ static my_bool translog_buffer_flush(struct st_translog_buffer *buffer)
   uint skipped_data;
   DBUG_ENTER("translog_buffer_flush");
   DBUG_PRINT("enter",
-             ("Buffer: #%u 0x%lx file: %d  offset: (%lu,0x%lx)  size: %lu",
-              (uint) buffer->buffer_no, (ulong) buffer,
+             ("Buffer: #%u %p file: %d  offset: " LSN_FMT "  size: %lu",
+              (uint) buffer->buffer_no, buffer,
               buffer->file->handler.file,
               LSN_IN_PARTS(buffer->offset),
               (ulong) buffer->size));
@@ -2659,11 +2659,11 @@ static my_bool translog_buffer_flush(struct st_translog_buffer *buffer)
 #ifndef DBUG_OFF
     TRANSLOG_ADDRESS addr= (buffer->offset + i);
 #endif
-    DBUG_PRINT("info", ("send log form %lu till %lu  address: (%lu,0x%lx)  "
-                        "page #: %lu  buffer size: %lu  buffer: 0x%lx",
+    DBUG_PRINT("info", ("send log form %lu till %lu  address: " LSN_FMT "  "
+                        "page #: %lu  buffer size: %lu  buffer: %p",
                         (ulong) i, (ulong) (i + TRANSLOG_PAGE_SIZE),
                         LSN_IN_PARTS(addr), (ulong) pg, (ulong) buffer->size,
-                        (ulong) buffer));
+                        buffer));
     DBUG_ASSERT(log_descriptor.pagecache->block_size == TRANSLOG_PAGE_SIZE);
     DBUG_ASSERT(i + TRANSLOG_PAGE_SIZE <= buffer->size);
     if (translog_status != TRANSLOG_OK && translog_status != TRANSLOG_SHUTDOWN)
@@ -2680,9 +2680,9 @@ static my_bool translog_buffer_flush(struct st_translog_buffer *buffer)
                         TRANSLOG_PAGE_SIZE - skipped_data))
     {
       DBUG_PRINT("error",
-                 ("Can't write page (%lu,0x%lx) to pagecache, error: %d",
-                  (ulong) buffer->file->number,
-                  (ulong) (LSN_OFFSET(buffer->offset)+ i),
+                 ("Can't write page " LSN_FMT " to pagecache, error: %d",
+                  buffer->file->number,
+                  (uint) (LSN_OFFSET(buffer->offset)+ i),
                   my_errno));
       translog_stop_writing();
       DBUG_RETURN(1);
@@ -2695,10 +2695,10 @@ static my_bool translog_buffer_flush(struct st_translog_buffer *buffer)
                 LSN_OFFSET(buffer->offset) + buffer->skipped_data,
                 log_write_flags))
   {
-    DBUG_PRINT("error", ("Can't write buffer (%lu,0x%lx) size %lu "
+    DBUG_PRINT("error", ("Can't write buffer " LSN_FMT " size %lu "
                          "to the disk (%d)",
-                         (ulong) file->handler.file,
-                         (ulong) LSN_OFFSET(buffer->offset),
+                         (uint) file->handler.file,
+                         (uint) LSN_OFFSET(buffer->offset),
                          (ulong) buffer->size, errno));
     translog_stop_writing();
     DBUG_RETURN(1);
@@ -2918,10 +2918,10 @@ static my_bool translog_page_validator(int res, PAGECACHE_IO_HOOK_ARGS *args)
   if ((pgcache_page_no_t) uint3korr(page) != page_no ||
       (uint32) uint3korr(page + 3) != data->number)
   {
-    DBUG_PRINT("error", ("Page (%lu,0x%lx): "
+    DBUG_PRINT("error", ("Page " LSN_FMT ": "
                          "page address written in the page is incorrect: "
                          "File %lu instead of %lu or page %lu instead of %lu",
-                         (ulong) data->number, (ulong) offset,
+                         (uint)data->number, (uint)offset,
                          (ulong) uint3korr(page + 3), (ulong) data->number,
                          (ulong) uint3korr(page),
                          (ulong) page_no));
@@ -2932,9 +2932,9 @@ static my_bool translog_page_validator(int res, PAGECACHE_IO_HOOK_ARGS *args)
   if (flags & ~(TRANSLOG_PAGE_CRC | TRANSLOG_SECTOR_PROTECTION |
                 TRANSLOG_RECORD_CRC))
   {
-    DBUG_PRINT("error", ("Page (%lu,0x%lx): "
+    DBUG_PRINT("error", ("Page " LSN_FMT ": "
                          "Garbage in the page flags field detected : %x",
-                         (ulong) data->number, (ulong) offset,
+                         (uint) data->number, (uint) offset,
                          (uint) flags));
     DBUG_RETURN(1);
   }
@@ -2946,9 +2946,9 @@ static my_bool translog_page_validator(int res, PAGECACHE_IO_HOOK_ARGS *args)
                              this_page_page_overhead);
     if (crc != uint4korr(page_pos))
     {
-      DBUG_PRINT("error", ("Page (%lu,0x%lx): "
+      DBUG_PRINT("error", ("Page " LSN_FMT ": "
                            "CRC mismatch: calculated: %lx on the page %lx",
-                           (ulong) data->number, (ulong) offset,
+                           (uint) data->number, (uint) offset,
                            (ulong) crc, (ulong) uint4korr(page_pos)));
       DBUG_RETURN(1);
     }
@@ -3029,10 +3029,10 @@ static uchar *translog_get_page(TRANSLOG_VALIDATOR_DATA *data, uchar *buffer,
   uint32 file_no= LSN_FILE_NO(addr);
   TRANSLOG_FILE *file;
   DBUG_ENTER("translog_get_page");
-  DBUG_PRINT("enter", ("File: %lu  Offset: %lu(0x%lx)",
-                       (ulong) file_no,
-                       (ulong) LSN_OFFSET(addr),
-                       (ulong) LSN_OFFSET(addr)));
+  DBUG_PRINT("enter", ("File: %u  Offset: %u(0x%x)",
+                       file_no,
+                       (uint) LSN_OFFSET(addr),
+                       (uint) LSN_OFFSET(addr)));
 
   /* it is really page address */
   DBUG_ASSERT(LSN_OFFSET(addr) % TRANSLOG_PAGE_SIZE == 0);
@@ -3042,7 +3042,7 @@ static uchar *translog_get_page(TRANSLOG_VALIDATOR_DATA *data, uchar *buffer,
 restart:
 
   in_buffers= translog_only_in_buffers();
-  DBUG_PRINT("info", ("in_buffers: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("in_buffers: " LSN_FMT,
                       LSN_IN_PARTS(in_buffers)));
   if (in_buffers != LSN_IMPOSSIBLE &&
       cmp_translog_addr(addr, in_buffers) >= 0)
@@ -3424,8 +3424,8 @@ static my_bool translog_truncate_log(TRANSLOG_ADDRESS addr)
   uchar page_buff[TRANSLOG_PAGE_SIZE];
   DBUG_ENTER("translog_truncate_log");
   /* TODO: write warning to the client */
-  DBUG_PRINT("warning", ("removing all records from (%lu,0x%lx) "
-                         "till (%lu,0x%lx)",
+  DBUG_PRINT("warning", ("removing all records from " LSN_FMT " "
+                         "till " LSN_FMT,
                          LSN_IN_PARTS(addr),
                          LSN_IN_PARTS(log_descriptor.horizon)));
   DBUG_ASSERT(cmp_translog_addr(addr, log_descriptor.horizon) < 0);
@@ -3856,7 +3856,14 @@ my_bool translog_init_with_table(const char *directory,
     my_bool pageok;
 
     DBUG_PRINT("info", ("The log is really present"));
-    DBUG_ASSERT(sure_page <= last_page);
+    if (sure_page > last_page)
+    {
+      my_printf_error(HA_ERR_GENERIC, "Aria engine: log data error\n"
+                      "last_log_page:   " LSN_FMT " is less than\n"
+                      "checkpoint page: " LSN_FMT, MYF(0),
+                      LSN_IN_PARTS(last_page), LSN_IN_PARTS(sure_page));
+      goto err;
+    }
 
     /* TODO: check page size */
 
@@ -4004,7 +4011,7 @@ my_bool translog_init_with_table(const char *directory,
   if (!logs_found)
   {
     TRANSLOG_FILE *file= (TRANSLOG_FILE*)my_malloc(sizeof(TRANSLOG_FILE),
-                                                   MYF(0));
+                                                   MYF(MY_WME));
     DBUG_PRINT("info", ("The log is not found => we will create new log"));
     if (file == NULL)
        goto err;
@@ -4139,7 +4146,7 @@ my_bool translog_init_with_table(const char *directory,
             There is no harm in leaving it "as-is".
           */
           log_descriptor.previous_flush_horizon= log_descriptor.horizon;
-          DBUG_PRINT("info", ("previous_flush_horizon: (%lu,0x%lx)",
+          DBUG_PRINT("info", ("previous_flush_horizon: " LSN_FMT,
                               LSN_IN_PARTS(log_descriptor.
                                            previous_flush_horizon)));
           DBUG_RETURN(0);
@@ -4167,7 +4174,7 @@ my_bool translog_init_with_table(const char *directory,
       translog_size_t rec_len;
       int len;
       uchar buffer[1];
-      DBUG_PRINT("info", ("going to check the last found record (%lu,0x%lx)",
+      DBUG_PRINT("info", ("going to check the last found record " LSN_FMT,
                           LSN_IN_PARTS(last_lsn)));
 
       len=
@@ -4176,7 +4183,7 @@ my_bool translog_init_with_table(const char *directory,
                     len == RECHEADER_READ_EOF))
       {
         DBUG_PRINT("error", ("unexpected end of log or record during "
-                             "reading record header: (%lu,0x%lx)  len: %d",
+                             "reading record header: " LSN_FMT "  len: %d",
                              LSN_IN_PARTS(last_lsn), len));
         if (readonly)
           log_descriptor.log_start= log_descriptor.horizon= last_lsn;
@@ -4200,7 +4207,7 @@ my_bool translog_init_with_table(const char *directory,
           if (rec_len != 1)
           {
             DBUG_PRINT("error", ("unexpected end of log or record during "
-                                 "reading record body: (%lu,0x%lx)  len: %d",
+                                 "reading record body: " LSN_FMT "  len: %d",
                                  LSN_IN_PARTS(rec.lsn),
                                  len));
             if (readonly)
@@ -4218,7 +4225,7 @@ my_bool translog_init_with_table(const char *directory,
     }
   }
   log_descriptor.previous_flush_horizon= log_descriptor.horizon;
-  DBUG_PRINT("info", ("previous_flush_horizon: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("previous_flush_horizon: " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.previous_flush_horizon)));
   DBUG_RETURN(0);
 err:
@@ -4237,7 +4244,7 @@ static void translog_buffer_destroy(struct st_translog_buffer *buffer)
 {
   DBUG_ENTER("translog_buffer_destroy");
   DBUG_PRINT("enter",
-             ("Buffer #%u: 0x%lx  file: %d  offset: (%lu,0x%lx)  size: %lu",
+             ("Buffer #%u: 0x%lx  file: %d  offset: " LSN_FMT "  size: %lu",
               (uint) buffer->buffer_no, (ulong) buffer,
               (buffer->file ? buffer->file->handler.file : -1),
               LSN_IN_PARTS(buffer->offset),
@@ -4502,7 +4509,7 @@ static my_bool translog_write_parts_on_page(TRANSLOG_ADDRESS *horizon,
     }
   } while (left);
 
-  DBUG_PRINT("info", ("Horizon: (%lu,0x%lx)  Length %lu(0x%lx)",
+  DBUG_PRINT("info", ("Horizon: " LSN_FMT "  Length %lu(0x%lx)",
                       LSN_IN_PARTS(*horizon),
                       (ulong) length, (ulong) length));
   parts->current= cur;
@@ -4516,7 +4523,7 @@ static my_bool translog_write_parts_on_page(TRANSLOG_ADDRESS *horizon,
   */
   DBUG_PRINT("info", ("Write parts buffer #%u: 0x%lx  "
                       "chaser: %d  Size: %lu (%lu)  "
-                      "Horizon: (%lu,0x%lx)  buff offset: 0x%lx",
+                      "Horizon: " LSN_FMT "  buff offset: 0x%lx",
                       (uint) cursor->buffer->buffer_no, (ulong) cursor->buffer,
                       cursor->chaser, (ulong) cursor->buffer->size,
                       (ulong) (cursor->ptr - cursor->buffer->buffer),
@@ -4747,7 +4754,7 @@ static my_bool translog_advance_pointer(int pages, uint16 last_page_data,
                            pages * TRANSLOG_PAGE_SIZE + last_page_offset);
   translog_size_t buffer_end_offset, file_end_offset, min_offset;
   DBUG_ENTER("translog_advance_pointer");
-  DBUG_PRINT("enter", ("Pointer:  (%lu, 0x%lx) + %u + %u pages + %u + %u",
+  DBUG_PRINT("enter", ("Pointer:  " LSN_FMT " + %u + %u pages + %u + %u",
                        LSN_IN_PARTS(log_descriptor.horizon),
                        (uint) (TRANSLOG_PAGE_SIZE -
                                log_descriptor.bc.current_page_fill),
@@ -4799,20 +4806,20 @@ static my_bool translog_advance_pointer(int pages, uint16 last_page_data,
       file_end_offset= (TRANSLOG_PAGE_SIZE -
                         log_descriptor.bc.current_page_fill);
     }
-    DBUG_PRINT("info", ("offset: %lu  buffer_end_offs: %lu, "
-                        "file_end_offs:  %lu",
-                        (ulong) offset, (ulong) buffer_end_offset,
-                        (ulong) file_end_offset));
-    DBUG_PRINT("info", ("Buff #%u %u (0x%lx) offset 0x%lx + size 0x%lx = "
-                        "0x%lx (0x%lx)",
-                        (uint) log_descriptor.bc.buffer->buffer_no,
-                        (uint) log_descriptor.bc.buffer_no,
-                        (ulong) log_descriptor.bc.buffer,
-                        (ulong) LSN_OFFSET(log_descriptor.bc.buffer->offset),
-                        (ulong) log_descriptor.bc.buffer->size,
-                        (ulong) (LSN_OFFSET(log_descriptor.bc.buffer->offset) +
-                                 log_descriptor.bc.buffer->size),
-                        (ulong) LSN_OFFSET(log_descriptor.horizon)));
+    DBUG_PRINT("info", ("offset: %u  buffer_end_offs: %u, "
+                        "file_end_offs:  %u",
+                        offset, buffer_end_offset,
+                        file_end_offset));
+    DBUG_PRINT("info", ("Buff #%u %u (%p) offset 0x%x + size 0x%x = "
+                        "0x%x (0x%x)",
+                        log_descriptor.bc.buffer->buffer_no,
+                        log_descriptor.bc.buffer_no,
+                        log_descriptor.bc.buffer,
+                        (uint) LSN_OFFSET(log_descriptor.bc.buffer->offset),
+                        log_descriptor.bc.buffer->size,
+                        (uint) (LSN_OFFSET(log_descriptor.bc.buffer->offset) +
+                                log_descriptor.bc.buffer->size),
+                        (uint) LSN_OFFSET(log_descriptor.horizon)));
     DBUG_ASSERT(LSN_OFFSET(log_descriptor.bc.buffer->offset) +
                 log_descriptor.bc.buffer->size ==
                 LSN_OFFSET(log_descriptor.horizon));
@@ -4845,9 +4852,9 @@ static my_bool translog_advance_pointer(int pages, uint16 last_page_data,
     /* TODO: check is it ptr or size enough */
     log_descriptor.bc.buffer->size+= min_offset;
     log_descriptor.bc.ptr+= min_offset;
-    DBUG_PRINT("info", ("NewP buffer #%u: 0x%lx  chaser: %d  Size: %lu (%lu)",
+    DBUG_PRINT("info", ("NewP buffer #%u: %p  chaser: %d  Size: %lu (%lu)",
                         (uint) log_descriptor.bc.buffer->buffer_no,
-                        (ulong) log_descriptor.bc.buffer,
+                        log_descriptor.bc.buffer,
                         log_descriptor.bc.chaser,
                         (ulong) log_descriptor.bc.buffer->size,
                         (ulong) (log_descriptor.bc.ptr -log_descriptor.bc.
@@ -4898,10 +4905,10 @@ static my_bool translog_advance_pointer(int pages, uint16 last_page_data,
   used_buffs_add(buffs, log_descriptor.bc.buffer);
   log_descriptor.horizon+= offset; /* offset increasing */
   log_descriptor.bc.current_page_fill= last_page_offset;
-  DBUG_PRINT("info", ("NewP buffer #%u: 0x%lx  chaser: %d  Size: %lu (%lu)  "
+  DBUG_PRINT("info", ("NewP buffer #%u: %p  chaser: %d  Size: %lu (%lu)  "
                       "offset: %u  last page: %u",
                       (uint) log_descriptor.bc.buffer->buffer_no,
-                      (ulong) log_descriptor.bc.buffer,
+                      log_descriptor.bc.buffer,
                       log_descriptor.bc.chaser,
                       (ulong) log_descriptor.bc.buffer->size,
                       (ulong) (log_descriptor.bc.ptr -
@@ -4909,7 +4916,7 @@ static my_bool translog_advance_pointer(int pages, uint16 last_page_data,
                                buffer), (uint) offset,
                       (uint) last_page_offset));
   DBUG_PRINT("info",
-             ("pointer moved to: (%lu, 0x%lx)",
+             ("pointer moved to: " LSN_FMT,
               LSN_IN_PARTS(log_descriptor.horizon)));
   translog_check_cursor(&log_descriptor.bc);
   log_descriptor.bc.protected= 0;
@@ -4999,7 +5006,7 @@ static uint translog_get_current_page_rest()
 
 static uint translog_get_current_buffer_rest()
 {
-  return ((log_descriptor.bc.buffer->buffer + TRANSLOG_WRITE_BUFFER -
+  return (uint)((log_descriptor.bc.buffer->buffer + TRANSLOG_WRITE_BUFFER -
            log_descriptor.bc.ptr) /
           TRANSLOG_PAGE_SIZE);
 }
@@ -5046,7 +5053,7 @@ static inline void set_lsn(LSN *lsn, LSN value)
   *lsn= value;
   /* we generate LSN so something is not flushed in log */
   log_descriptor.is_everything_flushed= 0;
-  DBUG_PRINT("info", ("new LSN appeared: (%lu,0x%lx)", LSN_IN_PARTS(value)));
+  DBUG_PRINT("info", ("new LSN appeared: " LSN_FMT, LSN_IN_PARTS(value)));
   DBUG_VOID_RETURN;
 }
 
@@ -5143,9 +5150,9 @@ translog_write_variable_record_1group(LSN *lsn,
                                (record_rest ? record_rest + 3 : 0),
                                &cursor.buffs);
   log_descriptor.bc.buffer->last_lsn= *lsn;
-  DBUG_PRINT("info", ("last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+  DBUG_PRINT("info", ("last_lsn set to " LSN_FMT "  buffer: %p",
                       LSN_IN_PARTS(log_descriptor.bc.buffer->last_lsn),
-                      (ulong) log_descriptor.bc.buffer));
+                      log_descriptor.bc.buffer));
 
   translog_unlock();
 
@@ -5172,7 +5179,7 @@ translog_write_variable_record_1group(LSN *lsn,
   /* fill the pages */
   translog_write_parts_on_page(&horizon, &cursor, first_page, parts);
 
-  DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.horizon),
                       LSN_IN_PARTS(horizon)));
 
@@ -5181,7 +5188,7 @@ translog_write_variable_record_1group(LSN *lsn,
     if (translog_write_variable_record_chunk2_page(parts, &horizon, &cursor))
       goto error;
 
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)",
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT,
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon)));
   }
@@ -5193,7 +5200,7 @@ translog_write_variable_record_1group(LSN *lsn,
                                                    page_capacity_chunk_2 - 2,
                                                    &horizon, &cursor))
       goto error;
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)",
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT,
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon)));
     DBUG_ASSERT(cursor.current_page_fill == TRANSLOG_PAGE_SIZE);
@@ -5203,11 +5210,11 @@ translog_write_variable_record_1group(LSN *lsn,
                                                  record_rest,
                                                  &horizon, &cursor))
     goto error;
-  DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)",
-                     (ulong) LSN_FILE_NO(log_descriptor.horizon),
-                     (ulong) LSN_OFFSET(log_descriptor.horizon),
-                     (ulong) LSN_FILE_NO(horizon),
-                     (ulong) LSN_OFFSET(horizon)));
+  DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT,
+                      (uint) LSN_FILE_NO(log_descriptor.horizon),
+                      (uint) LSN_OFFSET(log_descriptor.horizon),
+                      (uint) LSN_FILE_NO(horizon),
+                      (uint) LSN_OFFSET(horizon)));
 
   translog_buffer_lock(cursor.buffer);
   translog_buffer_decrease_writers(cursor.buffer);
@@ -5279,9 +5286,9 @@ translog_write_variable_record_1chunk(LSN *lsn,
                                    &log_descriptor.bc,
                                    parts->total_record_length, parts);
   log_descriptor.bc.buffer->last_lsn= *lsn;
-  DBUG_PRINT("info", ("last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+  DBUG_PRINT("info", ("last_lsn set to " LSN_FMT "  buffer: %p",
                       LSN_IN_PARTS(log_descriptor.bc.buffer->last_lsn),
-                      (ulong) log_descriptor.bc.buffer));
+                      log_descriptor.bc.buffer));
   translog_unlock();
 
   /*
@@ -5326,9 +5333,9 @@ static uchar *translog_put_LSN_diff(LSN base_lsn, LSN lsn, uchar *dst)
 {
   uint64 diff;
   DBUG_ENTER("translog_put_LSN_diff");
-  DBUG_PRINT("enter", ("Base: (%lu,0x%lx)  val: (%lu,0x%lx)  dst: 0x%lx",
+  DBUG_PRINT("enter", ("Base: " LSN_FMT "  val: " LSN_FMT "  dst: %p",
                        LSN_IN_PARTS(base_lsn), LSN_IN_PARTS(lsn),
-                       (ulong) dst));
+                       dst));
   DBUG_ASSERT(base_lsn > lsn);
   diff= base_lsn - lsn;
   DBUG_PRINT("info", ("Diff: 0x%llx", (ulonglong) diff));
@@ -5372,7 +5379,7 @@ static uchar *translog_put_LSN_diff(LSN base_lsn, LSN lsn, uchar *dst)
     dst[1]= 1;
     lsn_store(dst + 2, lsn);
   }
-  DBUG_PRINT("info", ("new dst: 0x%lx", (ulong) dst));
+  DBUG_PRINT("info", ("new dst: %p", dst));
   DBUG_RETURN(dst);
 }
 
@@ -5411,7 +5418,7 @@ static uchar *translog_get_LSN_from_diff(LSN base_lsn, uchar *src, uchar *dst)
   uint32 file_no, rec_offset;
   uint8 code;
   DBUG_ENTER("translog_get_LSN_from_diff");
-  DBUG_PRINT("enter", ("Base: (%lu,0x%lx)  src: 0x%lx  dst 0x%lx",
+  DBUG_PRINT("enter", ("Base: " LSN_FMT "  src: 0x%lx  dst 0x%lx",
                        LSN_IN_PARTS(base_lsn), (ulong) src, (ulong) dst));
   first_byte= *((uint8*) src);
   code= first_byte >> 6; /* Length is in 2 most significant bits */
@@ -5729,7 +5736,7 @@ translog_write_variable_record_mgroup(LSN *lsn,
 
     translog_write_data_on_page(&horizon, &cursor, 1, chunk2_header);
     translog_write_parts_on_page(&horizon, &cursor, first_page - 1, parts);
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)  "
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT "  "
                         "Left  %lu",
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon),
@@ -5741,8 +5748,8 @@ translog_write_variable_record_mgroup(LSN *lsn,
       if (translog_write_variable_record_chunk2_page(parts, &horizon, &cursor))
         goto err;
 
-      DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  "
-                          "local: (%lu,0x%lx)  "
+      DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  "
+                          "local: " LSN_FMT "  "
                           "Left: %lu",
                           LSN_IN_PARTS(log_descriptor.horizon),
                           LSN_IN_PARTS(horizon),
@@ -5910,7 +5917,7 @@ translog_write_variable_record_mgroup(LSN *lsn,
     DBUG_PRINT("info", ("chunk 2 to finish first page"));
     translog_write_data_on_page(&horizon, &cursor, 1, chunk2_header);
     translog_write_parts_on_page(&horizon, &cursor, first_page - 1, parts);
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx) "
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT " "
                         "Left: %lu",
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon),
@@ -5927,7 +5934,7 @@ translog_write_variable_record_mgroup(LSN *lsn,
     int2store(chunk3_header + 1, chunk3_size);
     translog_write_data_on_page(&horizon, &cursor, 3, chunk3_header);
     translog_write_parts_on_page(&horizon, &cursor, chunk3_size, parts);
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx) "
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT " "
                         "Left: %lu",
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon),
@@ -5945,7 +5952,7 @@ translog_write_variable_record_mgroup(LSN *lsn,
     if (translog_write_variable_record_chunk2_page(parts, &horizon, &cursor))
       goto err;
 
-    DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx) "
+    DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT " "
                         "Left: %lu",
                         LSN_IN_PARTS(log_descriptor.horizon),
                         LSN_IN_PARTS(horizon),
@@ -5959,7 +5966,7 @@ translog_write_variable_record_mgroup(LSN *lsn,
                                                  chunk3_size,
                                                  &horizon, &cursor))
     goto err;
-  DBUG_PRINT("info", ("absolute horizon: (%lu,0x%lx)  local: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("absolute horizon: " LSN_FMT "  local: " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.horizon),
                       LSN_IN_PARTS(horizon)));
 
@@ -5994,9 +6001,9 @@ translog_write_variable_record_mgroup(LSN *lsn,
       translog_lock();
       set_lsn(lsn, horizon);
       buffer_of_last_lsn->last_lsn= *lsn;
-      DBUG_PRINT("info", ("last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+      DBUG_PRINT("info", ("last_lsn set to " LSN_FMT "  buffer: %p",
                           LSN_IN_PARTS(buffer_of_last_lsn->last_lsn),
-                          (ulong) buffer_of_last_lsn));
+                          buffer_of_last_lsn));
       if (log_record_type_descriptor[type].inwrite_hook &&
           (*log_record_type_descriptor[type].inwrite_hook) (type, trn,
                                                             tbl_info,
@@ -6131,7 +6138,7 @@ static my_bool translog_write_variable_record(LSN *lsn,
   DBUG_ENTER("translog_write_variable_record");
 
   translog_lock();
-  DBUG_PRINT("info", ("horizon: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("horizon: " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.horizon)));
   page_rest= TRANSLOG_PAGE_SIZE - log_descriptor.bc.current_page_fill;
   DBUG_PRINT("info", ("header length: %u  page_rest: %u",
@@ -6247,7 +6254,7 @@ static my_bool translog_write_fixed_record(LSN *lsn,
                log_record_type_descriptor[type].fixed_length));
 
   translog_lock();
-  DBUG_PRINT("info", ("horizon: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("horizon: " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.horizon)));
 
   DBUG_ASSERT(log_descriptor.bc.current_page_fill <= TRANSLOG_PAGE_SIZE);
@@ -6311,9 +6318,9 @@ static my_bool translog_write_fixed_record(LSN *lsn,
                                    parts->total_record_length, parts);
 
   log_descriptor.bc.buffer->last_lsn= *lsn;
-  DBUG_PRINT("info", ("last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+  DBUG_PRINT("info", ("last_lsn set to " LSN_FMT "  buffer: %p",
                       LSN_IN_PARTS(log_descriptor.bc.buffer->last_lsn),
-                      (ulong) log_descriptor.bc.buffer));
+                      log_descriptor.bc.buffer));
 
 err:
   translog_unlock();
@@ -6502,7 +6509,7 @@ my_bool translog_write_record(LSN *lsn,
     }
   }
 
-  DBUG_PRINT("info", ("LSN: (%lu,0x%lx)", LSN_IN_PARTS(*lsn)));
+  DBUG_PRINT("info", ("LSN: " LSN_FMT, LSN_IN_PARTS(*lsn)));
   DBUG_RETURN(rc);
 }
 
@@ -6717,7 +6724,7 @@ my_bool translog_scanner_init(LSN lsn,
                               my_bool use_direct)
 {
   DBUG_ENTER("translog_scanner_init");
-  DBUG_PRINT("enter", ("Scanner: 0x%lx  LSN: (%lu,0x%lx)",
+  DBUG_PRINT("enter", ("Scanner: 0x%lx  LSN: " LSN_FMT,
                        (ulong) scanner, LSN_IN_PARTS(lsn)));
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
@@ -6729,7 +6736,7 @@ my_bool translog_scanner_init(LSN lsn,
   scanner->direct_link= NULL;
 
   scanner->horizon= translog_get_horizon();
-  DBUG_PRINT("info", ("horizon: (%lu,0x%lx)", LSN_IN_PARTS(scanner->horizon)));
+  DBUG_PRINT("info", ("horizon: " LSN_FMT, LSN_IN_PARTS(scanner->horizon)));
 
   /* lsn < horizon */
   DBUG_ASSERT(lsn <= scanner->horizon);
@@ -6777,11 +6784,11 @@ static my_bool translog_scanner_eol(TRANSLOG_SCANNER_DATA *scanner)
 {
   DBUG_ENTER("translog_scanner_eol");
   DBUG_PRINT("enter",
-             ("Horizon: (%lu, 0x%lx)  Current: (%lu, 0x%lx+0x%x=0x%lx)",
+             ("Horizon: " LSN_FMT "  Current: (%u, 0x%x+0x%x=0x%x)",
               LSN_IN_PARTS(scanner->horizon),
               LSN_IN_PARTS(scanner->page_addr),
               (uint) scanner->page_offset,
-              (ulong) (LSN_OFFSET(scanner->page_addr) + scanner->page_offset)));
+              (uint) (LSN_OFFSET(scanner->page_addr) + scanner->page_offset)));
   if (scanner->horizon > (scanner->page_addr +
                           scanner->page_offset))
   {
@@ -6886,7 +6893,7 @@ translog_get_next_chunk(TRANSLOG_SCANNER_DATA *scanner)
     translog_free_link(scanner->direct_link);
     if (translog_scanner_eof(scanner))
     {
-      DBUG_PRINT("info", ("horizon: (%lu,0x%lx)  pageaddr: (%lu,0x%lx)",
+      DBUG_PRINT("info", ("horizon: " LSN_FMT "  pageaddr: " LSN_FMT,
                           LSN_IN_PARTS(scanner->horizon),
                           LSN_IN_PARTS(scanner->page_addr)));
       /* if it is log end it have to be caught before */
@@ -6987,7 +6994,7 @@ translog_variable_length_header(uchar *page, translog_size_t page_offset,
     src+= (2 + 2);
     page_rest= (uint16) (TRANSLOG_PAGE_SIZE - (src - page));
     curr= 0;
-    header_to_skip= src - (page + page_offset);
+    header_to_skip= (uint) (src - (page + page_offset));
     buff->chunk0_pages= 0;
 
     for (;;)
@@ -7005,7 +7012,7 @@ translog_variable_length_header(uchar *page, translog_size_t page_offset,
         DBUG_ASSERT(curr < buff->groups_no);
         buff->groups[curr].addr= lsn_korr(src + i * (7 + 1));
         buff->groups[curr].num= src[i * (7 + 1) + 7];
-        DBUG_PRINT("info", ("group #%u (%lu,0x%lx)  chunks: %u",
+        DBUG_PRINT("info", ("group #%u " LSN_FMT "  chunks: %u",
                             curr,
                             LSN_IN_PARTS(buff->groups[curr].addr),
                             (uint) buff->groups[curr].num));
@@ -7027,7 +7034,7 @@ translog_variable_length_header(uchar *page, translog_size_t page_offset,
           buff->chunk0_data_addr+= (header_to_skip + read_length * (7 + 1));
         }
         buff->chunk0_data_len= chunk_len - 2 - read_length * (7 + 1);
-        DBUG_PRINT("info", ("Data address: (%lu,0x%lx)  len: %u",
+        DBUG_PRINT("info", ("Data address: " LSN_FMT "  len: %u",
                             LSN_IN_PARTS(buff->chunk0_data_addr),
                             buff->chunk0_data_len));
         break;
@@ -7150,7 +7157,7 @@ int translog_read_record_header_from_buffer(uchar *page,
               translog_status == TRANSLOG_READONLY);
   buff->type= (page[page_offset] & TRANSLOG_REC_TYPE);
   buff->short_trid= uint2korr(page + page_offset + 1);
-  DBUG_PRINT("info", ("Type %u, Short TrID %u, LSN (%lu,0x%lx)",
+  DBUG_PRINT("info", ("Type %u, Short TrID %u, LSN " LSN_FMT,
                       (uint) buff->type, (uint)buff->short_trid,
                       LSN_IN_PARTS(buff->lsn)));
   /* Read required bytes from the header and call hook */
@@ -7199,7 +7206,7 @@ int translog_read_record_header(LSN lsn, TRANSLOG_HEADER_BUFFER *buff)
   TRANSLOG_ADDRESS addr;
   TRANSLOG_VALIDATOR_DATA data;
   DBUG_ENTER("translog_read_record_header");
-  DBUG_PRINT("enter", ("LSN: (%lu,0x%lx)", LSN_IN_PARTS(lsn)));
+  DBUG_PRINT("enter", ("LSN: " LSN_FMT, LSN_IN_PARTS(lsn)));
   DBUG_ASSERT(LSN_OFFSET(lsn) % TRANSLOG_PAGE_SIZE != 0);
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
@@ -7244,8 +7251,8 @@ int translog_read_record_header_scan(TRANSLOG_SCANNER_DATA *scanner,
 {
   translog_size_t res;
   DBUG_ENTER("translog_read_record_header_scan");
-  DBUG_PRINT("enter", ("Scanner: Cur: (%lu,0x%lx)  Hrz: (%lu,0x%lx)  "
-                       "Lst: (%lu,0x%lx)  Offset: %u(%x)  fixed %d",
+  DBUG_PRINT("enter", ("Scanner: Cur: " LSN_FMT "  Hrz: " LSN_FMT "  "
+                       "Lst: " LSN_FMT "  Offset: %u(%x)  fixed %d",
                        LSN_IN_PARTS(scanner->page_addr),
                        LSN_IN_PARTS(scanner->horizon),
                        LSN_IN_PARTS(scanner->last_file_page),
@@ -7291,8 +7298,8 @@ int translog_read_next_record_header(TRANSLOG_SCANNER_DATA *scanner,
   DBUG_ENTER("translog_read_next_record_header");
   buff->groups_no= 0;        /* to be sure that we will free it right */
   DBUG_PRINT("enter", ("scanner: 0x%lx", (ulong) scanner));
-  DBUG_PRINT("info", ("Scanner: Cur: (%lu,0x%lx)  Hrz: (%lu,0x%lx)  "
-                      "Lst: (%lu,0x%lx)  Offset: %u(%x)  fixed: %d",
+  DBUG_PRINT("info", ("Scanner: Cur: " LSN_FMT "  Hrz: " LSN_FMT "  "
+                      "Lst: " LSN_FMT "  Offset: %u(%x)  fixed: %d",
                       LSN_IN_PARTS(scanner->page_addr),
                       LSN_IN_PARTS(scanner->horizon),
                       LSN_IN_PARTS(scanner->last_file_page),
@@ -7312,7 +7319,7 @@ int translog_read_next_record_header(TRANSLOG_SCANNER_DATA *scanner,
        buff->lsn= LSN_IMPOSSIBLE;
        DBUG_RETURN(RECHEADER_READ_EOF);
     }
-    DBUG_PRINT("info", ("Page: (%lu,0x%lx)  offset: %lu  byte: %x",
+    DBUG_PRINT("info", ("Page: " LSN_FMT "  offset: %lu  byte: %x",
                         LSN_IN_PARTS(scanner->page_addr),
                         (ulong) scanner->page_offset,
                         (uint) scanner->page[scanner->page_offset]));
@@ -7521,8 +7528,8 @@ translog_size_t translog_read_record(LSN lsn,
       DBUG_RETURN(0);
   }
   DBUG_PRINT("info", ("Offset: %lu  length: %lu  "
-                      "Scanner: Cur: (%lu,0x%lx)  Hrz: (%lu,0x%lx)  "
-                      "Lst: (%lu,0x%lx)  Offset: %u(%x)  fixed: %d",
+                      "Scanner: Cur: " LSN_FMT "  Hrz: " LSN_FMT "  "
+                      "Lst: " LSN_FMT "  Offset: %u(%x)  fixed: %d",
                       (ulong) offset, (ulong) length,
                       LSN_IN_PARTS(data->scanner.page_addr),
                       LSN_IN_PARTS(data->scanner.horizon),
@@ -7611,16 +7618,16 @@ static void translog_force_current_buffer_to_finish()
   uint16 UNINIT_VAR(current_page_fill), write_counter, previous_offset;
   DBUG_ENTER("translog_force_current_buffer_to_finish");
 
-  DBUG_PRINT("enter", ("Buffer #%u 0x%lx  "
-                       "Buffer addr: (%lu,0x%lx)  "
-                       "Page addr: (%lu,0x%lx)  "
+  DBUG_PRINT("enter", ("Buffer #%u %p  "
+                       "Buffer addr: " LSN_FMT "  "
+                       "Page addr: " LSN_FMT "  "
                        "size: %lu (%lu)  Pg: %u  left: %u  in progress %u",
                        (uint) old_buffer_no,
-                       (ulong) old_buffer,
+                       old_buffer,
                        LSN_IN_PARTS(old_buffer->offset),
-                       (ulong) LSN_FILE_NO(log_descriptor.horizon),
-                       (ulong) (LSN_OFFSET(log_descriptor.horizon) -
-                                log_descriptor.bc.current_page_fill),
+                       LSN_FILE_NO(log_descriptor.horizon),
+                       (uint) (LSN_OFFSET(log_descriptor.horizon) -
+                               log_descriptor.bc.current_page_fill),
                        (ulong) old_buffer->size,
                        (ulong) (log_descriptor.bc.ptr -log_descriptor.bc.
                                 buffer->buffer),
@@ -7654,10 +7661,10 @@ static void translog_force_current_buffer_to_finish()
 
     memset(log_descriptor.bc.ptr, TRANSLOG_FILLER, left);
     old_buffer->size+= left;
-    DBUG_PRINT("info", ("Finish Page buffer #%u: 0x%lx  "
+    DBUG_PRINT("info", ("Finish Page buffer #%u: %p  "
                         "Size: %lu",
                         (uint) old_buffer->buffer_no,
-                        (ulong) old_buffer,
+                        old_buffer,
                         (ulong) old_buffer->size));
     DBUG_ASSERT(old_buffer->buffer_no ==
                 log_descriptor.bc.buffer_no);
@@ -7691,9 +7698,9 @@ static void translog_force_current_buffer_to_finish()
   log_descriptor.bc.write_counter= write_counter;
   log_descriptor.bc.previous_offset= previous_offset;
   new_buffer->prev_last_lsn= BUFFER_MAX_LSN(old_buffer);
-  DBUG_PRINT("info", ("prev_last_lsn set to (%lu,0x%lx)  buffer: 0x%lx",
+  DBUG_PRINT("info", ("prev_last_lsn set to " LSN_FMT "  buffer: %p",
                       LSN_IN_PARTS(new_buffer->prev_last_lsn),
-                      (ulong) new_buffer));
+                      new_buffer));
 
   /*
     Advances this log pointer, increases writers and let other threads to
@@ -7729,8 +7736,8 @@ static void translog_force_current_buffer_to_finish()
     */
     DBUG_ASSERT(!old_buffer->is_closing_buffer);
     old_buffer->is_closing_buffer= 1; /* Other flushes will wait */
-    DBUG_PRINT("enter", ("Buffer #%u 0x%lx  is_closing_buffer set",
-                         (uint) old_buffer->buffer_no, (ulong) old_buffer));
+    DBUG_PRINT("enter", ("Buffer #%u %p is_closing_buffer set",
+                         (uint) old_buffer->buffer_no, old_buffer));
     translog_wait_for_writers(old_buffer);
 #ifndef DBUG_OFF
     /* We blocked flushing this buffer so the buffer should not changed */
@@ -7760,12 +7767,12 @@ static void translog_force_current_buffer_to_finish()
     uint32 crc= translog_crc(data + log_descriptor.page_overhead,
                              TRANSLOG_PAGE_SIZE -
                              log_descriptor.page_overhead);
-    DBUG_PRINT("info", ("CRC: 0x%lx", (ulong) crc));
+    DBUG_PRINT("info", ("CRC: 0x%x", crc));
     int4store(data + 3 + 3 + 1, crc);
   }
   old_buffer->is_closing_buffer= 0;
-  DBUG_PRINT("enter", ("Buffer #%u 0x%lx  is_closing_buffer cleared",
-                       (uint) old_buffer->buffer_no, (ulong) old_buffer));
+  DBUG_PRINT("enter", ("Buffer #%u %p  is_closing_buffer cleared",
+                       (uint) old_buffer->buffer_no, old_buffer));
   mysql_cond_broadcast(&old_buffer->waiting_filling_buffer);
 
   if (left)
@@ -7804,7 +7811,7 @@ static void translog_force_current_buffer_to_finish()
 void  translog_flush_wait_for_end(LSN lsn)
 {
   DBUG_ENTER("translog_flush_wait_for_end");
-  DBUG_PRINT("enter", ("LSN: (%lu,0x%lx)", LSN_IN_PARTS(lsn)));
+  DBUG_PRINT("enter", ("LSN: " LSN_FMT, LSN_IN_PARTS(lsn)));
   mysql_mutex_assert_owner(&log_descriptor.log_flush_lock);
   while (cmp_translog_addr(log_descriptor.flushed, lsn) < 0)
     mysql_cond_wait(&log_descriptor.log_flush_cond,
@@ -7824,7 +7831,7 @@ void translog_flush_set_new_goal_and_wait(TRANSLOG_ADDRESS lsn)
 {
   int flush_no= log_descriptor.flush_no;
   DBUG_ENTER("translog_flush_set_new_goal_and_wait");
-  DBUG_PRINT("enter", ("LSN: (%lu,0x%lx)", LSN_IN_PARTS(lsn)));
+  DBUG_PRINT("enter", ("LSN: " LSN_FMT, LSN_IN_PARTS(lsn)));
   mysql_mutex_assert_owner(&log_descriptor.log_flush_lock);
   if (cmp_translog_addr(lsn, log_descriptor.next_pass_max_lsn) > 0)
   {
@@ -7930,7 +7937,7 @@ void translog_flush_buffers(TRANSLOG_ADDRESS *lsn,
   start_buffer_no= i;
 
   DBUG_PRINT("info",
-             ("start from: %u  current: %u  prev last lsn: (%lu,0x%lx)",
+             ("start from: %u  current: %u  prev last lsn: " LSN_FMT,
               (uint) start_buffer_no, (uint) log_descriptor.bc.buffer_no,
               LSN_IN_PARTS(log_descriptor.bc.buffer->prev_last_lsn)));
 
@@ -7944,7 +7951,7 @@ void translog_flush_buffers(TRANSLOG_ADDRESS *lsn,
   {
     struct st_translog_buffer *buffer= log_descriptor.bc.buffer;
     *lsn= log_descriptor.bc.buffer->last_lsn; /* fix lsn if it was horizon */
-    DBUG_PRINT("info", ("LSN to flush fixed to last lsn: (%lu,0x%lx)",
+    DBUG_PRINT("info", ("LSN to flush fixed to last lsn: " LSN_FMT,
                         LSN_IN_PARTS(*lsn)));
     last_buffer_no= log_descriptor.bc.buffer_no;
     log_descriptor.is_everything_flushed= 1;
@@ -7971,7 +7978,7 @@ void translog_flush_buffers(TRANSLOG_ADDRESS *lsn,
     DBUG_ASSERT(log_descriptor.bc.buffer->prev_last_lsn != LSN_IMPOSSIBLE);
     /* fix lsn if it was horizon */
     *lsn= log_descriptor.bc.buffer->prev_last_lsn;
-    DBUG_PRINT("info", ("LSN to flush fixed to prev last lsn: (%lu,0x%lx)",
+    DBUG_PRINT("info", ("LSN to flush fixed to prev last lsn: " LSN_FMT,
                LSN_IN_PARTS(*lsn)));
     last_buffer_no= ((log_descriptor.bc.buffer_no + TRANSLOG_BUFFERS_NO -1) %
                      TRANSLOG_BUFFERS_NO);
@@ -7990,10 +7997,10 @@ void translog_flush_buffers(TRANSLOG_ADDRESS *lsn,
     {
       struct st_translog_buffer *buffer= log_descriptor.buffers + i;
       translog_buffer_lock(buffer);
-      DBUG_PRINT("info", ("Check buffer: 0x%lx  #: %u  "
-                          "prev last LSN: (%lu,0x%lx)  "
-                          "last LSN: (%lu,0x%lx)  status: %s",
-                          (ulong)(buffer),
+      DBUG_PRINT("info", ("Check buffer: %p  #: %u  "
+                          "prev last LSN: " LSN_FMT "  "
+                          "last LSN: " LSN_FMT "  status: %s",
+                          buffer,
                           (uint) i,
                           LSN_IN_PARTS(buffer->prev_last_lsn),
                           LSN_IN_PARTS(buffer->last_lsn),
@@ -8007,7 +8014,7 @@ void translog_flush_buffers(TRANSLOG_ADDRESS *lsn,
                          buffer->pre_force_close_horizon :
                          buffer->offset + buffer->size);
         /* pre_force_close_horizon is reset during new buffer start */
-        DBUG_PRINT("info", ("flush_horizon: (%lu,0x%lx)",
+        DBUG_PRINT("info", ("flush_horizon: " LSN_FMT,
                             LSN_IN_PARTS(*flush_horizon)));
         DBUG_ASSERT(*flush_horizon <= log_descriptor.horizon);
 
@@ -8076,12 +8083,12 @@ my_bool translog_flush(TRANSLOG_ADDRESS lsn)
   my_bool rc= 0;
   my_bool hgroup_commit_at_start;
   DBUG_ENTER("translog_flush");
-  DBUG_PRINT("enter", ("Flush up to LSN: (%lu,0x%lx)", LSN_IN_PARTS(lsn)));
+  DBUG_PRINT("enter", ("Flush up to LSN: " LSN_FMT, LSN_IN_PARTS(lsn)));
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
 
   mysql_mutex_lock(&log_descriptor.log_flush_lock);
-  DBUG_PRINT("info", ("Everything is flushed up to (%lu,0x%lx)",
+  DBUG_PRINT("info", ("Everything is flushed up to " LSN_FMT,
                       LSN_IN_PARTS(log_descriptor.flushed)));
   if (cmp_translog_addr(log_descriptor.flushed, lsn) >= 0)
   {
@@ -8110,7 +8117,7 @@ my_bool translog_flush(TRANSLOG_ADDRESS lsn)
   }
   log_descriptor.flush_in_progress= 1;
   flush_horizon= log_descriptor.previous_flush_horizon;
-  DBUG_PRINT("info", ("flush_in_progress is set, flush_horizon: (%lu,0x%lx)",
+  DBUG_PRINT("info", ("flush_in_progress is set, flush_horizon: " LSN_FMT,
                       LSN_IN_PARTS(flush_horizon)));
   mysql_mutex_unlock(&log_descriptor.log_flush_lock);
 
@@ -8173,7 +8180,7 @@ my_bool translog_flush(TRANSLOG_ADDRESS lsn)
     log_descriptor.next_pass_max_lsn= LSN_IMPOSSIBLE;
     /* prevent other thread from continue */
     log_descriptor.max_lsn_requester= pthread_self();
-    DBUG_PRINT("info", ("flush took next goal: (%lu,0x%lx)",
+    DBUG_PRINT("info", ("flush took next goal: " LSN_FMT,
                         LSN_IN_PARTS(lsn)));
     mysql_mutex_unlock(&log_descriptor.log_flush_lock);
 
@@ -8530,7 +8537,7 @@ LSN translog_first_lsn_in_log()
   uint16 chunk_offset;
   uchar *page;
   DBUG_ENTER("translog_first_lsn_in_log");
-  DBUG_PRINT("info", ("Horizon: (%lu,0x%lx)", LSN_IN_PARTS(horizon)));
+  DBUG_PRINT("info", ("Horizon: " LSN_FMT, LSN_IN_PARTS(horizon)));
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
 
@@ -8569,7 +8576,7 @@ LSN translog_first_theoretical_lsn()
   uchar *page;
   TRANSLOG_VALIDATOR_DATA data;
   DBUG_ENTER("translog_first_theoretical_lsn");
-  DBUG_PRINT("info", ("Horizon: (%lu,0x%lx)", LSN_IN_PARTS(addr)));
+  DBUG_PRINT("info", ("Horizon: " LSN_FMT, LSN_IN_PARTS(addr)));
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
 
@@ -8609,7 +8616,7 @@ my_bool translog_purge(TRANSLOG_ADDRESS low)
   TRANSLOG_ADDRESS horizon= translog_get_horizon();
   int rc= 0;
   DBUG_ENTER("translog_purge");
-  DBUG_PRINT("enter", ("low: (%lu,0x%lx)", LSN_IN_PARTS(low)));
+  DBUG_PRINT("enter", ("low: " LSN_FMT, LSN_IN_PARTS(low)));
   DBUG_ASSERT(translog_status == TRANSLOG_OK ||
               translog_status == TRANSLOG_READONLY);
 
@@ -9034,7 +9041,7 @@ static void dump_header_page(uchar *buff)
     printf("      WARNING: page size is not equal compiled in one %lu!!!\n",
            (ulong) TRANSLOG_PAGE_SIZE);
   printf("    File number %lu\n"
-         "    Max lsn: (%lu,0x%lx)\n",
+         "    Max lsn: " LSN_FMT "\n",
          desc.file_number,
          LSN_IN_PARTS(desc.max_lsn));
 }
@@ -9130,7 +9137,7 @@ static uchar *dump_chunk(uchar *buffer, uchar *ptr)
         {
           TRANSLOG_ADDRESS gpr_addr= lsn_korr(hdr_ptr);
           uint pages= hdr_ptr[LSN_STORE_SIZE];
-          printf ("        Group +#%u: (%lu,0x%lx)  pages: %u\n",
+          printf ("        Group +#%u: " LSN_FMT "  pages: %u\n",
                   (uint) i, LSN_IN_PARTS(gpr_addr), pages);
         }
       }
@@ -9264,8 +9271,8 @@ static void dump_datapage(uchar *buffer, File handler)
   ptr= buffer + header_len;
   while (ptr && ptr < buffer + TRANSLOG_PAGE_SIZE)
   {
-    printf("  Chunk (%lu,0x%lx):\n",
-           (ulong)file, (ulong) offset + (ptr - buffer));
+    printf("  Chunk %d %lld:\n",
+           file,((longlong) (ptr - buffer)+ offset));
     ptr= dump_chunk(buffer, ptr);
   }
 }
diff --git a/storage/maria/ma_loghandler.h b/storage/maria/ma_loghandler.h
index 93582b41b80e883ba73fa5fee3db22f3642240d0..62efa5ed1072d792464e6a2547120e9aec89b78c 100644
--- a/storage/maria/ma_loghandler.h
+++ b/storage/maria/ma_loghandler.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _ma_loghandler_h
 #define _ma_loghandler_h
diff --git a/storage/maria/ma_loghandler_lsn.h b/storage/maria/ma_loghandler_lsn.h
index 69481761e80e9ce14eda494c2ef54ccc9aa02908..c99f0d0af9765e70ded122ccfa87a412d07d6e76 100644
--- a/storage/maria/ma_loghandler_lsn.h
+++ b/storage/maria/ma_loghandler_lsn.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _ma_loghandler_lsn_h
 #define _ma_loghandler_lsn_h
@@ -47,7 +47,8 @@ typedef TRANSLOG_ADDRESS LSN;
 #define LSN_FILE_NO_PART(L) ((L) & ((int64)0xFFFFFF00000000LL))
 
 /* Parts of LSN for printing */
-#define LSN_IN_PARTS(L) (ulong)LSN_FILE_NO(L),(ulong)LSN_OFFSET(L)
+#define LSN_IN_PARTS(L) (uint)LSN_FILE_NO(L),(uint)LSN_OFFSET(L)
+#define LSN_FMT "(%u,0x%x)"
 
 /* Gets record offset of a LSN/log address */
 #define LSN_OFFSET(L) (ulong) ((L) & 0xFFFFFFFFL)
diff --git a/storage/maria/ma_norec.c b/storage/maria/ma_norec.c
index f490ab333a5e815fa2e98c08f7fe7ea6a05dd3aa..7bdde9fcc70f41e2523600c50e01fec80c3d6e87 100644
--- a/storage/maria/ma_norec.c
+++ b/storage/maria/ma_norec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Functions to handle tables with no row data (only index)
diff --git a/storage/maria/ma_open.c b/storage/maria/ma_open.c
index 598f76a6472d134f01a6494b5f95f6055a8b7328..0c4e4f900b90794cbf0dc73f9d7af833e4facb89 100644
--- a/storage/maria/ma_open.c
+++ b/storage/maria/ma_open.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* open an Aria table */
 
@@ -1378,7 +1378,7 @@ uint _ma_state_info_write(MARIA_SHARE *share, uint pWrite)
       is too new). Recovery does it by itself.
     */
     share->state.is_of_horizon= translog_get_horizon();
-    DBUG_PRINT("info", ("is_of_horizon set to LSN (%lu,0x%lx)",
+    DBUG_PRINT("info", ("is_of_horizon set to LSN " LSN_FMT "",
                         LSN_IN_PARTS(share->state.is_of_horizon)));
   }
   res= _ma_state_info_write_sub(share->kfile.file, &share->state, pWrite);
diff --git a/storage/maria/ma_packrec.c b/storage/maria/ma_packrec.c
index 861023a00648028714c3988a5fe9aa32e9b48308..27c5538e51b5f682f0e0403e43278e9a4f7762a4 100644
--- a/storage/maria/ma_packrec.c
+++ b/storage/maria/ma_packrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 	/* Functions to compressed records */
 
diff --git a/storage/maria/ma_page.c b/storage/maria/ma_page.c
index 2f77f6f87ec5c4447f0befd334bb71b9b91f2635..7067421b51aa50a8f24446042680733640bc7bd3 100644
--- a/storage/maria/ma_page.c
+++ b/storage/maria/ma_page.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Read and write key blocks
diff --git a/storage/maria/ma_pagecache.c b/storage/maria/ma_pagecache.c
index d385104fc479d28fde67494ca01f8050cfb69536..4ae2821d532495d8b8094f666d7ae0953bcf50ce 100644
--- a/storage/maria/ma_pagecache.c
+++ b/storage/maria/ma_pagecache.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   These functions handle page caching for Maria tables.
@@ -2793,7 +2793,7 @@ static void check_and_set_lsn(PAGECACHE *pagecache,
   */
   DBUG_ASSERT((block->type == PAGECACHE_LSN_PAGE) || maria_in_recovery);
   old= lsn_korr(block->buffer);
-  DBUG_PRINT("info", ("old lsn: (%lu, 0x%lx)  new lsn: (%lu, 0x%lx)",
+  DBUG_PRINT("info", ("old lsn: " LSN_FMT "  new lsn: " LSN_FMT,
                       LSN_IN_PARTS(old), LSN_IN_PARTS(lsn)));
   if (cmp_translog_addr(lsn, old) > 0)
   {
diff --git a/storage/maria/ma_pagecache.h b/storage/maria/ma_pagecache.h
index 1183f9d57e0adba0ba4579a56716f520d49fcbc8..1fb677995fbe0cb5cc35634efb99a79554683d98 100644
--- a/storage/maria/ma_pagecache.h
+++ b/storage/maria/ma_pagecache.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Page cache variable structures */
 
diff --git a/storage/maria/ma_pagecaches.c b/storage/maria/ma_pagecaches.c
index 3c4ca6fd71f1b7bc0c53bf09b7df635430257c5f..fd5cd2092e1ec45b22cd7dcb0bd84c62a7bd0cf3 100644
--- a/storage/maria/ma_pagecaches.c
+++ b/storage/maria/ma_pagecaches.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Handling of multiple key caches
diff --git a/storage/maria/ma_pagecrc.c b/storage/maria/ma_pagecrc.c
index 838913cc3eda2cadd2c97551df48f006e84b6834..b0c02e60929548592166010e9f17634b0e4a7611 100644
--- a/storage/maria/ma_pagecrc.c
+++ b/storage/maria/ma_pagecrc.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_panic.c b/storage/maria/ma_panic.c
index bf31132ef55d2edc65ebf47c59fa584da1928816..58beec9ef6dd4a9f7728dd20664fea0837d8c00a 100644
--- a/storage/maria/ma_panic.c
+++ b/storage/maria/ma_panic.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "ma_fulltext.h"
 
diff --git a/storage/maria/ma_preload.c b/storage/maria/ma_preload.c
index 759f88a8453f58ba4dd5c8c382a180aee6d63dc9..eefc9777be6bcb12e058926014a899a6eefe914d 100644
--- a/storage/maria/ma_preload.c
+++ b/storage/maria/ma_preload.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Preload indexes into key cache
diff --git a/storage/maria/ma_range.c b/storage/maria/ma_range.c
index 1be38b932a40ecba3d8ec39f767b5342f2defd2d..512d827c456ec540ca6114a5ff4af7918ccedb0c 100644
--- a/storage/maria/ma_range.c
+++ b/storage/maria/ma_range.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Gives a approximated number of how many records there is between two keys.
diff --git a/storage/maria/ma_recovery.c b/storage/maria/ma_recovery.c
index f023dde78178ed2f8fff4dc1b7557465981a0614..9d3950d588c2a03a0d25f3824538321f59a9c94d 100644
--- a/storage/maria/ma_recovery.c
+++ b/storage/maria/ma_recovery.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3072 Maria recovery
@@ -531,8 +531,6 @@ int maria_apply_log(LSN from_lsn, LSN end_lsn,
 
   if (error && !abort_message_printed)
   {
-    if (!trace_file)
-      fputc('\n', stderr);
     my_message(HA_ERR_INITIALIZATION,
                "Aria recovery failed. Please run aria_chk -r on all Aria "
                "tables and delete all aria_log.######## files", MYF(0));
@@ -558,7 +556,7 @@ static void display_record_position(const LOG_DESC *log_desc,
     form a group, so we indent below the group's end record
   */
   tprint(tracef,
-         "%sRec#%u LSN (%lu,0x%lx) short_trid %u %s(num_type:%u) len %lu\n",
+         "%sRec#%u LSN " LSN_FMT " short_trid %u %s(num_type:%u) len %lu\n",
          number ? "" : "   ", number, LSN_IN_PARTS(rec->lsn),
          rec->short_trid, log_desc->name, rec->type,
          (ulong)rec->record_length);
@@ -617,7 +615,7 @@ prototype_redo_exec_hook(LONG_TRANSACTION_ID)
       llstr(long_trid, llbuf);
       eprint(tracef, "Found an old transaction long_trid %s short_trid %u"
              " with same short id as this new transaction, and has neither"
-             " committed nor rollback (undo_lsn: (%lu,0x%lx))",
+             " committed nor rollback (undo_lsn: " LSN_FMT ")",
              llbuf, sid, LSN_IN_PARTS(ulsn));
       goto err;
     }
@@ -640,7 +638,7 @@ static void new_transaction(uint16 sid, TrID long_id, LSN undo_lsn,
   all_active_trans[sid].long_trid= long_id;
   llstr(long_id, llbuf);
   tprint(tracef, "Transaction long_trid %s short_trid %u starts,"
-         " undo_lsn (%lu,0x%lx) first_undo_lsn (%lu,0x%lx)\n",
+         " undo_lsn " LSN_FMT " first_undo_lsn " LSN_FMT "\n",
          llbuf, sid, LSN_IN_PARTS(undo_lsn), LSN_IN_PARTS(first_undo_lsn));
   all_active_trans[sid].undo_lsn= undo_lsn;
   all_active_trans[sid].first_undo_lsn= first_undo_lsn;
@@ -667,13 +665,16 @@ prototype_redo_exec_hook(INCOMPLETE_LOG)
 {
   MARIA_HA *info;
 
+  /* We try to get table first, so that we get the table in in the trace log */
+  info= get_MARIA_HA_from_REDO_record(rec);
+
   if (skip_DDLs)
   {
     tprint(tracef, "we skip DDLs\n");
     return 0;
   }
 
-  if ((info= get_MARIA_HA_from_REDO_record(rec)) == NULL)
+  if (!info)
   {
     /* no such table, don't need to warn */
     return 0;
@@ -833,7 +834,7 @@ prototype_redo_exec_hook(REDO_CREATE_TABLE)
     }
     if (cmp_translog_addr(share->state.create_rename_lsn, rec->lsn) >= 0)
     {
-      tprint(tracef, "Table '%s' has create_rename_lsn (%lu,0x%lx) more "
+      tprint(tracef, "Table '%s' has create_rename_lsn " LSN_FMT " more "
              "recent than record, ignoring creation",
              name, LSN_IN_PARTS(share->state.create_rename_lsn));
       error= 0;
@@ -1009,7 +1010,7 @@ prototype_redo_exec_hook(REDO_RENAME_TABLE)
     }
     if (cmp_translog_addr(share->state.create_rename_lsn, rec->lsn) >= 0)
     {
-      tprint(tracef, ", has create_rename_lsn (%lu,0x%lx) more recent than"
+      tprint(tracef, ", has create_rename_lsn " LSN_FMT " more recent than"
              " record, ignoring renaming",
              LSN_IN_PARTS(share->state.create_rename_lsn));
       error= 0;
@@ -1064,7 +1065,7 @@ prototype_redo_exec_hook(REDO_RENAME_TABLE)
     }
     if (cmp_translog_addr(share->state.create_rename_lsn, rec->lsn) >= 0)
     {
-      tprint(tracef, ", has create_rename_lsn (%lu,0x%lx) more recent than"
+      tprint(tracef, ", has create_rename_lsn " LSN_FMT " more recent than"
              " record, ignoring renaming",
              LSN_IN_PARTS(share->state.create_rename_lsn));
       /*
@@ -1144,6 +1145,9 @@ prototype_redo_exec_hook(REDO_REPAIR_TABLE)
   my_bool quick_repair;
   DBUG_ENTER("exec_REDO_LOGREC_REDO_REPAIR_TABLE");
 
+  /* We try to get table first, so that we get the table in in the trace log */
+  info= get_MARIA_HA_from_REDO_record(rec);
+
   if (skip_DDLs)
   {
     /*
@@ -1153,8 +1157,13 @@ prototype_redo_exec_hook(REDO_REPAIR_TABLE)
     tprint(tracef, "we skip DDLs\n");
     DBUG_RETURN(0);
   }
-  if ((info= get_MARIA_HA_from_REDO_record(rec)) == NULL)
-    DBUG_RETURN(0);
+
+  if (!info)
+  {
+    /* no such table, don't need to warn */
+    return 0;
+  }
+
   if (maria_is_crashed(info))
   {
     tprint(tracef, "we skip repairing crashed table\n");
@@ -1233,7 +1242,7 @@ prototype_redo_exec_hook(REDO_DROP_TABLE)
     }
     if (cmp_translog_addr(share->state.create_rename_lsn, rec->lsn) >= 0)
     {
-      tprint(tracef, ", has create_rename_lsn (%lu,0x%lx) more recent than"
+      tprint(tracef, ", has create_rename_lsn " LSN_FMT " more recent than"
              " record, ignoring removal",
              LSN_IN_PARTS(share->state.create_rename_lsn));
       error= 0;
@@ -1403,8 +1412,8 @@ static int new_table(uint16 sid, const char *name, LSN lsn_of_file_id)
   }
   if (cmp_translog_addr(lsn_of_file_id, share->state.create_rename_lsn) <= 0)
   {
-    tprint(tracef, ", has create_rename_lsn (%lu,0x%lx) more recent than"
-           " LOGREC_FILE_ID's LSN (%lu,0x%lx), ignoring open request",
+    tprint(tracef, ", has create_rename_lsn " LSN_FMT " more recent than"
+           " LOGREC_FILE_ID's LSN " LSN_FMT ", ignoring open request",
            LSN_IN_PARTS(share->state.create_rename_lsn),
            LSN_IN_PARTS(lsn_of_file_id));
     recovery_warnings++;
@@ -1443,17 +1452,21 @@ static int new_table(uint16 sid, const char *name, LSN lsn_of_file_id)
   }
   if (share->state.state.data_file_length != dfile_len)
   {
-    tprint(tracef, ", has wrong state.data_file_length (fixing it)");
+    tprint(tracef, ", has wrong state.data_file_length "
+           "(fixing it from %llu to %llu)",
+           (ulonglong) share->state.state.data_file_length, (ulonglong) dfile_len);
     share->state.state.data_file_length= dfile_len;
   }
   if (share->state.state.key_file_length != kfile_len)
   {
-    tprint(tracef, ", has wrong state.key_file_length (fixing it)");
+    tprint(tracef, ", has wrong state.key_file_length "
+           "(fixing it from %llu to %llu)",
+           (ulonglong) share->state.state.key_file_length, (ulonglong) kfile_len);
     share->state.state.key_file_length= kfile_len;
   }
   if ((dfile_len % share->block_size) || (kfile_len % share->block_size))
   {
-    tprint(tracef, ", has too short last page\n");
+    tprint(tracef, ", has too short last page");
     /* Recovery will fix this, no error */
     ALERT_USER();
   }
@@ -1873,7 +1886,7 @@ prototype_redo_exec_hook(UNDO_ROW_INSERT)
   share= info->s;
   if (cmp_translog_addr(rec->lsn, share->state.is_of_horizon) >= 0)
   {
-    tprint(tracef, "   state has LSN (%lu,0x%lx) older than record, updating"
+    tprint(tracef, "   state has LSN " LSN_FMT " older than record, updating"
            " rows' count\n", LSN_IN_PARTS(share->state.is_of_horizon));
     share->state.state.records++;
     if (share->calc_checksum)
@@ -2136,7 +2149,7 @@ prototype_redo_exec_hook(CLR_END)
   if (info == NULL)
     DBUG_RETURN(0);
   share= info->s;
-  tprint(tracef, "   CLR_END was about %s, undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   CLR_END was about %s, undo_lsn now LSN " LSN_FMT "\n",
          log_desc->name, LSN_IN_PARTS(previous_undo_lsn));
 
   enlarge_buffer(rec);
@@ -2296,7 +2309,7 @@ prototype_undo_exec_hook(UNDO_ROW_INSERT)
   info->trn= 0;
   /* trn->undo_lsn is updated in an inwrite_hook when writing the CLR_END */
   tprint(tracef, "   rows' count %lu\n", (ulong)info->s->state.state.records);
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2335,7 +2348,7 @@ prototype_undo_exec_hook(UNDO_ROW_DELETE)
                                    rec->record_length -
                                    (LSN_STORE_SIZE + FILEID_STORE_SIZE));
   info->trn= 0;
-  tprint(tracef, "   rows' count %lu\n   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   rows' count %lu\n   undo_lsn now LSN " LSN_FMT "\n",
          (ulong)share->state.state.records, LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2374,7 +2387,7 @@ prototype_undo_exec_hook(UNDO_ROW_UPDATE)
                                    rec->record_length -
                                    (LSN_STORE_SIZE + FILEID_STORE_SIZE));
   info->trn= 0;
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2415,7 +2428,7 @@ prototype_undo_exec_hook(UNDO_KEY_INSERT)
                                    FILEID_STORE_SIZE);
   info->trn= 0;
   /* trn->undo_lsn is updated in an inwrite_hook when writing the CLR_END */
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2456,7 +2469,7 @@ prototype_undo_exec_hook(UNDO_KEY_DELETE)
                                    FILEID_STORE_SIZE, FALSE);
   info->trn= 0;
   /* trn->undo_lsn is updated in an inwrite_hook when writing the CLR_END */
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2497,7 +2510,7 @@ prototype_undo_exec_hook(UNDO_KEY_DELETE_WITH_ROOT)
                                    FILEID_STORE_SIZE, TRUE);
   info->trn= 0;
   /* trn->undo_lsn is updated in an inwrite_hook when writing the CLR_END */
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2525,7 +2538,7 @@ prototype_undo_exec_hook(UNDO_BULK_INSERT)
   error= _ma_apply_undo_bulk_insert(info, previous_undo_lsn);
   info->trn= 0;
   /* trn->undo_lsn is updated in an inwrite_hook when writing the CLR_END */
-  tprint(tracef, "   undo_lsn now LSN (%lu,0x%lx)\n",
+  tprint(tracef, "   undo_lsn now LSN " LSN_FMT "\n",
          LSN_IN_PARTS(trn->undo_lsn));
   return error;
 }
@@ -2663,7 +2676,7 @@ static int run_redo_phase(LSN lsn, LSN lsn_end, enum maria_apply_log_way apply)
           if (lsn_end != LSN_IMPOSSIBLE && rec2.lsn >= lsn_end)
           {
             tprint(tracef,
-                   "lsn_end reached at (%lu,0x%lx). "
+                   "lsn_end reached at " LSN_FMT ". "
                    "Skipping rest of redo entries",
                    LSN_IN_PARTS(rec2.lsn));
             translog_destroy_scanner(&scanner);
@@ -2764,7 +2777,7 @@ static int run_redo_phase(LSN lsn, LSN lsn_end, enum maria_apply_log_way apply)
   {
     fprintf(stderr, " 100%%");
     fflush(stderr);
-    procent_printed= 1;
+    procent_printed= 1;                         /* Will be follwed by time */
   }
   DBUG_RETURN(0);
 
@@ -2818,7 +2831,7 @@ static uint end_of_redo_phase(my_bool prepare_for_undo_phase)
     TRN *trn;
     if (gslsn != LSN_IMPOSSIBLE)
     {
-      tprint(tracef, "Group at LSN (%lu,0x%lx) short_trid %u incomplete\n",
+      tprint(tracef, "Group at LSN " LSN_FMT " short_trid %u incomplete\n",
              LSN_IN_PARTS(gslsn), sid);
       all_active_trans[sid].group_start_lsn= LSN_IMPOSSIBLE;
     }
@@ -2914,7 +2927,6 @@ static int run_undo_phase(uint uncommitted)
       recovery_message_printed= REC_MSG_UNDO;
     }
     tprint(tracef, "%u transactions will be rolled back\n", uncommitted);
-    procent_printed= 1;
     for( ; ; )
     {
       char llbuf[22];
@@ -2967,7 +2979,6 @@ static int run_undo_phase(uint uncommitted)
       /* In the future, we want to have this phase *online* */
     }
   }
-  procent_printed= 0;
   DBUG_RETURN(0);
 }
 
@@ -3109,7 +3120,7 @@ static MARIA_HA *get_MARIA_HA_from_REDO_record(const
       table was).
     */
     DBUG_ASSERT(cmp_translog_addr(rec->lsn, checkpoint_start) < 0);
-    tprint(tracef, ", table's LOGREC_FILE_ID has LSN (%lu,0x%lx) more recent"
+    tprint(tracef, ", table's LOGREC_FILE_ID has LSN " LSN_FMT " more recent"
            " than record, skipping record",
            LSN_IN_PARTS(share->lsn_of_file_id));
     return NULL;
@@ -3117,7 +3128,7 @@ static MARIA_HA *get_MARIA_HA_from_REDO_record(const
   if (cmp_translog_addr(rec->lsn, share->state.skip_redo_lsn) <= 0)
   {
     /* probably a bulk insert repair */
-    tprint(tracef, ", has skip_redo_lsn (%lu,0x%lx) more recent than"
+    tprint(tracef, ", has skip_redo_lsn " LSN_FMT " more recent than"
            " record, skipping record\n",
            LSN_IN_PARTS(share->state.skip_redo_lsn));
     return NULL;
@@ -3176,7 +3187,7 @@ static MARIA_HA *get_MARIA_HA_from_UNDO_record(const
 
   if (cmp_translog_addr(rec->lsn, share->lsn_of_file_id) <= 0)
   {
-    tprint(tracef, ", table's LOGREC_FILE_ID has LSN (%lu,0x%lx) more recent"
+    tprint(tracef, ", table's LOGREC_FILE_ID has LSN " LSN_FMT " more recent"
            " than record, skipping record",
            LSN_IN_PARTS(share->lsn_of_file_id));
     return NULL;
@@ -3185,7 +3196,7 @@ static MARIA_HA *get_MARIA_HA_from_UNDO_record(const
       cmp_translog_addr(rec->lsn, share->state.skip_redo_lsn) <= 0)
   {
     /* probably a bulk insert repair */
-    tprint(tracef, ", has skip_redo_lsn (%lu,0x%lx) more recent than"
+    tprint(tracef, ", has skip_redo_lsn " LSN_FMT " more recent than"
            " record, skipping record\n",
            LSN_IN_PARTS(share->state.skip_redo_lsn));
     return NULL;
@@ -3220,12 +3231,12 @@ static LSN parse_checkpoint_record(LSN lsn)
   LSN minimum_rec_lsn_of_active_transactions, minimum_rec_lsn_of_dirty_pages;
   struct st_dirty_page *next_dirty_page_in_pool;
 
-  tprint(tracef, "Loading data from checkpoint record at LSN (%lu,0x%lx)\n",
+  tprint(tracef, "Loading data from checkpoint record at LSN " LSN_FMT "\n",
          LSN_IN_PARTS(lsn));
   if ((len= translog_read_record_header(lsn, &rec)) == RECHEADER_READ_ERROR ||
       rec.type != LOGREC_CHECKPOINT)
   {
-    eprint(tracef, "Cannot find checkpoint record at LSN (%lu,0x%lx)",
+    eprint(tracef, "Cannot find checkpoint record at LSN " LSN_FMT "",
            LSN_IN_PARTS(lsn));
     return LSN_ERROR;
   }
@@ -3243,7 +3254,7 @@ static LSN parse_checkpoint_record(LSN lsn)
   ptr= log_record_buffer.str;
   start_address= lsn_korr(ptr);
   ptr+= LSN_STORE_SIZE;
-  tprint(tracef, "Checkpoint record has start_horizon at (%lu,0x%lx)\n",
+  tprint(tracef, "Checkpoint record has start_horizon at " LSN_FMT "\n",
          LSN_IN_PARTS(start_address));
 
   /* transactions */
@@ -3261,7 +3272,7 @@ static LSN parse_checkpoint_record(LSN lsn)
     takes to write one or a few rows, roughly).
   */
   tprint(tracef, "Checkpoint record has min_rec_lsn of active transactions"
-         " at (%lu,0x%lx)\n",
+         " at " LSN_FMT "\n",
          LSN_IN_PARTS(minimum_rec_lsn_of_active_transactions));
   set_if_smaller(start_address, minimum_rec_lsn_of_active_transactions);
 
@@ -3349,7 +3360,7 @@ static LSN parse_checkpoint_record(LSN lsn)
                  page_id, rec_lsn, next_dirty_page_in_pool++))
       return LSN_ERROR;
     if (maria_recovery_verbose)
-      tprint(tracef, "%8u  %8u  %12lu    %lu,0x%lx\n", (uint) table_id,
+      tprint(tracef, "%8u  %8u  %12lu    " LSN_FMT "\n", (uint) table_id,
              (uint) is_index, (ulong) page_id, LSN_IN_PARTS(rec_lsn));
     set_if_smaller(minimum_rec_lsn_of_dirty_pages, rec_lsn);
   }
@@ -3372,7 +3383,7 @@ static LSN parse_checkpoint_record(LSN lsn)
   start_address= checkpoint_start=
     translog_next_LSN(start_address, LSN_IMPOSSIBLE);
   tprint(tracef, "Checkpoint record start_horizon now adjusted to"
-         " LSN (%lu,0x%lx)\n", LSN_IN_PARTS(start_address));
+         " LSN " LSN_FMT "\n", LSN_IN_PARTS(start_address));
   if (checkpoint_start == LSN_IMPOSSIBLE)
   {
     /*
@@ -3383,10 +3394,10 @@ static LSN parse_checkpoint_record(LSN lsn)
   }
   /* now, where the REDO phase should start reading log: */
   tprint(tracef, "Checkpoint has min_rec_lsn of dirty pages at"
-         " LSN (%lu,0x%lx)\n", LSN_IN_PARTS(minimum_rec_lsn_of_dirty_pages));
+         " LSN " LSN_FMT "\n", LSN_IN_PARTS(minimum_rec_lsn_of_dirty_pages));
   set_if_smaller(start_address, minimum_rec_lsn_of_dirty_pages);
   DBUG_PRINT("info",
-             ("checkpoint_start: (%lu,0x%lx) start_address: (%lu,0x%lx)",
+             ("checkpoint_start: " LSN_FMT " start_address: " LSN_FMT "",
               LSN_IN_PARTS(checkpoint_start), LSN_IN_PARTS(start_address)));
   return start_address;
 }
@@ -3467,6 +3478,11 @@ static int close_all_tables(void)
     }
   }
 end:
+  if (recovery_message_printed == REC_MSG_FLUSH)
+  {
+    fputc('\n', stderr);
+    fflush(stderr);
+  }
   mysql_mutex_unlock(&THR_LOCK_maria);
   DBUG_RETURN(error);
 }
diff --git a/storage/maria/ma_recovery.h b/storage/maria/ma_recovery.h
index 07a439428594a007f0b3165cfda2c8359f2433ba..8084ce03f3b3520e4e0d6090d503eabf22b5dabd 100644
--- a/storage/maria/ma_recovery.h
+++ b/storage/maria/ma_recovery.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   WL#3072 Maria recovery
diff --git a/storage/maria/ma_recovery_util.c b/storage/maria/ma_recovery_util.c
index ac51df44843fea9f476148a1eaa7a93d6f1effb1..3b617f625f0eeb69073f3a12b035570d8ed75b8e 100644
--- a/storage/maria/ma_recovery_util.c
+++ b/storage/maria/ma_recovery_util.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Q: Why isn't ma_recovery_util.c simply moved to ma_recovery.c ?
@@ -70,14 +70,7 @@ void tprint(FILE *trace_file __attribute__ ((unused)),
 #endif
   va_start(args, format);
   if (trace_file != NULL)
-  {
-    if (procent_printed)
-    {
-      procent_printed= 0;
-      fputc('\n', trace_file);
-    }
     vfprintf(trace_file, format, args);
-  }
   va_end(args);
 }
 
@@ -93,9 +86,10 @@ void eprint(FILE *trace_file __attribute__ ((unused)),
 
   if (procent_printed)
   {
-    /* In silent mode, print on another line than the 0% 10% 20% line */
     procent_printed= 0;
-    fputc('\n', trace_file);
+    /* In silent mode, print on another line than the 0% 10% 20% line */
+    fputc('\n', stderr);
+    fflush(stderr);
   }
   vfprintf(trace_file , format, args);
   fputc('\n', trace_file);
diff --git a/storage/maria/ma_recovery_util.h b/storage/maria/ma_recovery_util.h
index 9caf52c698316813a3bd692d63ce90bec880402e..0b02f8e51cb1bda2dc24563a0e3398af2be36c92 100644
--- a/storage/maria/ma_recovery_util.h
+++ b/storage/maria/ma_recovery_util.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 struct st_dirty_page /* used only in the REDO phase */
 {
diff --git a/storage/maria/ma_rename.c b/storage/maria/ma_rename.c
index 71e2dea9d7eaf1233f3f80cd6f68a09fd4ba90a8..ef97858761a27b50cdfb454d5cf522015d5ce022 100644
--- a/storage/maria/ma_rename.c
+++ b/storage/maria/ma_rename.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Rename a table
diff --git a/storage/maria/ma_rfirst.c b/storage/maria/ma_rfirst.c
index 8a2f0dfb1c1c075067f3f195cf0989ed883e0074..44d19485a5f6f8f2b09929aecbb424130dae8700 100644
--- a/storage/maria/ma_rfirst.c
+++ b/storage/maria/ma_rfirst.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rkey.c b/storage/maria/ma_rkey.c
index 58e47089ce9fdfeb57747557fbafd2e4cacca401..1100745553f21ae9ffff884e0fb745049dc3e53e 100644
--- a/storage/maria/ma_rkey.c
+++ b/storage/maria/ma_rkey.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Read record based on a key */
 
diff --git a/storage/maria/ma_rlast.c b/storage/maria/ma_rlast.c
index 5b7732415b2f7eba851dd312252931a204f42970..2a74024dba475ca0efc227b8737007c6b9d42013 100644
--- a/storage/maria/ma_rlast.c
+++ b/storage/maria/ma_rlast.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rnext.c b/storage/maria/ma_rnext.c
index 82db1468f295de4a5e2fff2836c201e76e221112..5ea90a242fc286b3918df43e3da7569176eb5645 100644
--- a/storage/maria/ma_rnext.c
+++ b/storage/maria/ma_rnext.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rnext_same.c b/storage/maria/ma_rnext_same.c
index b293943a13e7af5895d7500ad2b1b3089c8f9539..b07967ca9e9ed7cdfc32223a26fc9c7f9aa366c6 100644
--- a/storage/maria/ma_rnext_same.c
+++ b/storage/maria/ma_rnext_same.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "ma_rt_index.h"
diff --git a/storage/maria/ma_rprev.c b/storage/maria/ma_rprev.c
index f533f40d4339d29c4d39f648f3e5324f407352d4..eebc8cba0c723a7ae3cadbeef46cca38718d696a 100644
--- a/storage/maria/ma_rprev.c
+++ b/storage/maria/ma_rprev.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rrnd.c b/storage/maria/ma_rrnd.c
index 1f8252947709e5d68fed16e496afd84864d1a07f..b2039e01ef60177b164388373b8f5c569f61270e 100644
--- a/storage/maria/ma_rrnd.c
+++ b/storage/maria/ma_rrnd.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Read a record with random-access. The position to the record must
    get by MARIA_HA. The next record can be read with pos= MARIA_POS_ERROR */
diff --git a/storage/maria/ma_rsame.c b/storage/maria/ma_rsame.c
index aa45dbc2b524cf91903a45b06ac7707ced07a7a0..ae9545b9006b809a422552ceb4698541e93fa010 100644
--- a/storage/maria/ma_rsame.c
+++ b/storage/maria/ma_rsame.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rsamepos.c b/storage/maria/ma_rsamepos.c
index f894003f032b3d9ad0508ab7c1ec69c0a19c0c62..092bb50dbf5ca7a61537550ed5e03d929be11e6e 100644
--- a/storage/maria/ma_rsamepos.c
+++ b/storage/maria/ma_rsamepos.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* read record through position and fix key-position */
 /* As maria_rsame but supply a position */
diff --git a/storage/maria/ma_rt_index.c b/storage/maria/ma_rt_index.c
index c92045eb24584d0f652d53b2026a2fe6ebd1db59..a0fb47418135a6fad93a4dbe54240c6ca18fba2a 100644
--- a/storage/maria/ma_rt_index.c
+++ b/storage/maria/ma_rt_index.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "trnman.h"
diff --git a/storage/maria/ma_rt_index.h b/storage/maria/ma_rt_index.h
index d8bd2dc9c73ca869d5e19232a9dbd218bd5814e9..42df5cf95146f8a728a171e091f73a55649b7535 100644
--- a/storage/maria/ma_rt_index.h
+++ b/storage/maria/ma_rt_index.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _rt_index_h
 #define _rt_index_h
diff --git a/storage/maria/ma_rt_key.c b/storage/maria/ma_rt_key.c
index 488137ff159e9ac19c22c17e6fd12a1a2f33997e..88da78edd01c9727034140c32babd347f3179dde 100644
--- a/storage/maria/ma_rt_key.c
+++ b/storage/maria/ma_rt_key.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "trnman.h"
diff --git a/storage/maria/ma_rt_key.h b/storage/maria/ma_rt_key.h
index 3d0616cea8a58d2c7d31f9e922f85a6dc1dcc379..e1bd6edcbcf917c188779ffad72956d15b50093d 100644
--- a/storage/maria/ma_rt_key.h
+++ b/storage/maria/ma_rt_key.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Ramil Kalimullin, who has a shared copyright to this code */
 
diff --git a/storage/maria/ma_rt_mbr.c b/storage/maria/ma_rt_mbr.c
index 4c00f7cdadf78b386ee8b5182c23190813e9ad66..9f8946bcafa5ef684b38edec939fabdce8555a81 100644
--- a/storage/maria/ma_rt_mbr.c
+++ b/storage/maria/ma_rt_mbr.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 
diff --git a/storage/maria/ma_rt_mbr.h b/storage/maria/ma_rt_mbr.h
index 535ef68ca5d9ef93bbd5978143e3579352504b68..5583947cb5116562b54505688f01da277a50b184 100644
--- a/storage/maria/ma_rt_mbr.h
+++ b/storage/maria/ma_rt_mbr.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _rt_mbr_h
 #define _rt_mbr_h
diff --git a/storage/maria/ma_rt_split.c b/storage/maria/ma_rt_split.c
index c26c0277e4fc8dd20ee962961e3e28d58f7a6085..c8004cb52b3f32f889cc871b196af55f2fd40cdf 100644
--- a/storage/maria/ma_rt_split.c
+++ b/storage/maria/ma_rt_split.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "trnman.h"
diff --git a/storage/maria/ma_rt_test.c b/storage/maria/ma_rt_test.c
index 88e4d7089e0d139aa716bf3e758054c6d89fff84..5af941b78c899817bec51f9888f52738d62bfc65 100644
--- a/storage/maria/ma_rt_test.c
+++ b/storage/maria/ma_rt_test.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Testing of the basic functions of a MARIA rtree table         */
 /* Written by Alex Barkov who has a shared copyright to this code */
diff --git a/storage/maria/ma_scan.c b/storage/maria/ma_scan.c
index 9a2cd8cd5d3e61a3611efa8ae62b57a420a69d27..5f2945a307888fb04b0d91a7c1d832b28789929c 100644
--- a/storage/maria/ma_scan.c
+++ b/storage/maria/ma_scan.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Read through all rows sequntially */
 
diff --git a/storage/maria/ma_search.c b/storage/maria/ma_search.c
index 0132dc95e5e4e14f405f93e83c5e25d6d5113061..0a79343c1945e9fe68bfd681971d1d7437b8401b 100644
--- a/storage/maria/ma_search.c
+++ b/storage/maria/ma_search.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* key handling functions */
 
diff --git a/storage/maria/ma_servicethread.c b/storage/maria/ma_servicethread.c
index e495b15eef2b8ad0e2a498401767d94bfb76ae4a..5f91a4943c5af3f17d1f66e8d48214b70b7757c2 100644
--- a/storage/maria/ma_servicethread.c
+++ b/storage/maria/ma_servicethread.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "ma_servicethread.h"
diff --git a/storage/maria/ma_servicethread.h b/storage/maria/ma_servicethread.h
index f33908a97a248b96c6d7b0e81dc0f9031d0efc20..a04a71fd47662a51dee3cc964157e0a1a70ceace 100644
--- a/storage/maria/ma_servicethread.h
+++ b/storage/maria/ma_servicethread.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 
diff --git a/storage/maria/ma_sort.c b/storage/maria/ma_sort.c
index 462ef918d4bc058120c13f418ba968ad435ff79e..a01824bc259daa67f4e445d915c1319fdf33fce6 100644
--- a/storage/maria/ma_sort.c
+++ b/storage/maria/ma_sort.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Creates a index for a database by reading keys, sorting them and outputing
diff --git a/storage/maria/ma_sp_defs.h b/storage/maria/ma_sp_defs.h
index a8cea1fc0f33d0bb813a4e519f70f700a0131cc2..8c2430e0e2bae848b7a572e4c75baf849125e978 100644
--- a/storage/maria/ma_sp_defs.h
+++ b/storage/maria/ma_sp_defs.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _SP_DEFS_H
 #define _SP_DEFS_H
diff --git a/storage/maria/ma_sp_key.c b/storage/maria/ma_sp_key.c
index 2a663c22ee2adac558f3f4562b6f288f6cf978d9..0dc7fe1fe4657f8fda1f1fc22a881a9ea445d41e 100644
--- a/storage/maria/ma_sp_key.c
+++ b/storage/maria/ma_sp_key.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "ma_blockrec.h"                        /* For ROW_FLAG_TRANSID */
diff --git a/storage/maria/ma_sp_test.c b/storage/maria/ma_sp_test.c
index 64c56a194b589932adbf3345139fb8f210c417ad..aeb1da2828c5128a877da2898015a7b23ad83997 100644
--- a/storage/maria/ma_sp_test.c
+++ b/storage/maria/ma_sp_test.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Testing of the basic functions of a MARIA spatial table        */
 /* Written by Alex Barkov, who has a shared copyright to this code */
diff --git a/storage/maria/ma_state.c b/storage/maria/ma_state.c
index aeefd9aa190acb85abc11cbc868fe7a7df9a75e3..2d30dbcda9511f618c776ccd1da4ace9e1b46da3 100644
--- a/storage/maria/ma_state.c
+++ b/storage/maria/ma_state.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   Functions to maintain live statistics for Maria transactional tables
diff --git a/storage/maria/ma_state.h b/storage/maria/ma_state.h
index 8728a2113e59341530259d62bea3a2abe98df880..4f099a9105c268ed73b54d84295568aab18b94e1 100644
--- a/storage/maria/ma_state.h
+++ b/storage/maria/ma_state.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Struct to store tables in use by one transaction */
 
diff --git a/storage/maria/ma_static.c b/storage/maria/ma_static.c
index 12fb26aa466eec88eef049a74f421ddb02fdc882..a903ee23a316dec468ae87f04bc55a91d0895249 100644
--- a/storage/maria/ma_static.c
+++ b/storage/maria/ma_static.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 /*
diff --git a/storage/maria/ma_statrec.c b/storage/maria/ma_statrec.c
index 61a1731b71c178e39695756b7df500512f3f5b9a..98fa235a2cc9544f122cee282797bfed5e501019 100644
--- a/storage/maria/ma_statrec.c
+++ b/storage/maria/ma_statrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 	/* Functions to handle fixed-length-records */
 
diff --git a/storage/maria/ma_test1.c b/storage/maria/ma_test1.c
index 07da313db8a87cf8adaa31eefdadded123b8ab4a..c43b5419951060e01448398d3106897282c0a4f2 100644
--- a/storage/maria/ma_test1.c
+++ b/storage/maria/ma_test1.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Testing of the basic functions of a MARIA table */
 
diff --git a/storage/maria/ma_test2.c b/storage/maria/ma_test2.c
index 24c48c6721088b85315a7a785f128c99180199bf..c7143d141b85bf2fd52db1cc92fd48ec3fe8da90 100644
--- a/storage/maria/ma_test2.c
+++ b/storage/maria/ma_test2.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Test av isam-databas: stor test */
 
diff --git a/storage/maria/ma_test3.c b/storage/maria/ma_test3.c
index 604c2b676a42337d04e6c88e6b81e1ff0f665787..bd80a0e8ab4e6a330664bd0c072de298822fa587 100644
--- a/storage/maria/ma_test3.c
+++ b/storage/maria/ma_test3.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Test av locking */
 
diff --git a/storage/maria/ma_trnman.h b/storage/maria/ma_trnman.h
index 9bfd1f0d0479b3476ae953dd896adf32a654a97c..06e6a88304fde7f51ca4c2f0c40fa94f9c3beb1d 100644
--- a/storage/maria/ma_trnman.h
+++ b/storage/maria/ma_trnman.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _ma_trnman_h
 #define _ma_trnman_h
diff --git a/storage/maria/ma_unique.c b/storage/maria/ma_unique.c
index f7432ad61e50adff362e0ada7fa11cf0f0d4ee39..4e098d55f71427f56100f6b5f3200588bf8468c2 100644
--- a/storage/maria/ma_unique.c
+++ b/storage/maria/ma_unique.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Functions to check if a row is unique */
 
diff --git a/storage/maria/ma_update.c b/storage/maria/ma_update.c
index 0e006d2473d960c6c982917743b7b294b24d06cc..dc44c71a48746c939a2e06e8cf644bba8843c503 100644
--- a/storage/maria/ma_update.c
+++ b/storage/maria/ma_update.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "ma_fulltext.h"
 #include "ma_rt_index.h"
diff --git a/storage/maria/ma_write.c b/storage/maria/ma_write.c
index 1a720101a40c87be84d8feb09820bdfeff5cbd74..cae8ef897bebbbee23ede3d881a48fe78372f4ef 100644
--- a/storage/maria/ma_write.c
+++ b/storage/maria/ma_write.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Write a row to a MARIA table */
 
diff --git a/storage/maria/maria_chk.c b/storage/maria/maria_chk.c
index 76edacee964e42063880b61d0bd83f40763f8729..058e864f370c598bd755fee130bbf46edb662397 100644
--- a/storage/maria/maria_chk.c
+++ b/storage/maria/maria_chk.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Describe, check and repair of MARIA tables */
 
@@ -1526,8 +1526,8 @@ static void descript(HA_CHECK *param, register MARIA_HA *info, char *name)
     }
     if (share->base.born_transactional)
     {
-      printf("LSNs:                create_rename (%lu,0x%lx),"
-             " state_horizon (%lu,0x%lx), skip_redo (%lu,0x%lx)\n",
+      printf("LSNs:                create_rename " LSN_FMT ","
+             " state_horizon " LSN_FMT ", skip_redo " LSN_FMT "\n",
              LSN_IN_PARTS(share->state.create_rename_lsn),
              LSN_IN_PARTS(share->state.is_of_horizon),
              LSN_IN_PARTS(share->state.skip_redo_lsn));
diff --git a/storage/maria/maria_def.h b/storage/maria/maria_def.h
index eeb5625cb7e1820d438f82bc6174f15a95d89b10..0a58a0a178685790082fd46fa3b7379d1e0a0f78 100644
--- a/storage/maria/maria_def.h
+++ b/storage/maria/maria_def.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* This file is included by all internal maria files */
 
@@ -109,7 +109,7 @@ typedef struct st_maria_sort_param
   int (*key_read)(struct st_maria_sort_param *, uchar *);
   int (*key_write)(struct st_maria_sort_param *, const uchar *);
   void (*lock_in_memory)(HA_CHECK *);
-  int (*write_keys)(struct st_maria_sort_param *, register uchar **,
+  int (*write_keys)(struct st_maria_sort_param *, uchar **,
                          ulonglong , struct st_buffpek *, IO_CACHE *);
   my_off_t (*read_to_buffer)(IO_CACHE *,struct st_buffpek *, uint);
   int (*write_key)(struct st_maria_sort_param *, IO_CACHE *,uchar *,
@@ -1040,7 +1040,7 @@ my_off_t _ma_no_keypos_to_recpos(MARIA_SHARE *share, my_off_t pos);
 extern my_bool _ma_ck_write(MARIA_HA *info, MARIA_KEY *key);
 extern my_bool _ma_enlarge_root(MARIA_HA *info, MARIA_KEY *key,
                                 MARIA_RECORD_POS *root);
-int _ma_insert(register MARIA_HA *info, MARIA_KEY *key,
+int _ma_insert(MARIA_HA *info, MARIA_KEY *key,
                MARIA_PAGE *anc_page, uchar *key_pos, uchar *key_buff,
                MARIA_PAGE *father_page, uchar *father_key_pos,
                my_bool insert_last);
@@ -1082,7 +1082,7 @@ extern void _ma_store_bin_pack_key(MARIA_KEYDEF *keyinfo, uchar *key_pos,
                                    MARIA_KEY_PARAM *s_temp);
 
 extern my_bool _ma_ck_delete(MARIA_HA *info, MARIA_KEY *key);
-extern my_bool _ma_ck_real_delete(register MARIA_HA *info, MARIA_KEY *key,
+extern my_bool _ma_ck_real_delete(MARIA_HA *info, MARIA_KEY *key,
                                   my_off_t *root);
 extern int _ma_readinfo(MARIA_HA *info, int lock_flag, int check_keybuffer);
 extern int _ma_writeinfo(MARIA_HA *info, uint options);
@@ -1154,7 +1154,7 @@ extern my_bool _ma_fetch_keypage(MARIA_PAGE *page, MARIA_HA *info,
 extern my_bool _ma_write_keypage(MARIA_PAGE *page,
                                  enum pagecache_page_lock lock, int level);
 extern int _ma_dispose(MARIA_HA *info, my_off_t pos, my_bool page_not_read);
-extern my_off_t _ma_new(register MARIA_HA *info, int level,
+extern my_off_t _ma_new(MARIA_HA *info, int level,
                         MARIA_PINNED_PAGE **page_link);
 extern my_bool _ma_compact_keypage(MARIA_PAGE *page, TrID min_read_from);
 extern uint transid_store_packed(MARIA_HA *info, uchar *to, ulonglong trid);
@@ -1342,7 +1342,7 @@ extern MARIA_HA *_ma_test_if_reopen(const char *filename);
 my_bool _ma_check_table_is_closed(const char *name, const char *where);
 int _ma_open_datafile(MARIA_HA *info, MARIA_SHARE *share);
 int _ma_open_keyfile(MARIA_SHARE *share);
-void _ma_setup_functions(register MARIA_SHARE *share);
+void _ma_setup_functions(MARIA_SHARE *share);
 my_bool _ma_dynmap_file(MARIA_HA *info, my_off_t size);
 void _ma_remap_file(MARIA_HA *info, my_off_t size);
 
@@ -1424,7 +1424,7 @@ extern my_bool maria_flush_log_for_page_none(PAGECACHE_IO_HOOK_ARGS *args);
 extern PAGECACHE *maria_log_pagecache;
 extern void ma_set_index_cond_func(MARIA_HA *info, index_cond_func_t func,
                                    void *func_arg);
-ICP_RESULT ma_check_index_cond(register MARIA_HA *info, uint keynr, uchar *record);
+ICP_RESULT ma_check_index_cond(MARIA_HA *info, uint keynr, uchar *record);
 
 extern my_bool ma_yield_and_check_if_killed(MARIA_HA *info, int inx);
 extern my_bool ma_killed_standalone(MARIA_HA *);
diff --git a/storage/maria/maria_dump_log.c b/storage/maria/maria_dump_log.c
index 3570dede80ecad8d07ba67f088fa71593d3348d5..998d2e74014f404bc96aad2065281b77e30b32ed 100644
--- a/storage/maria/maria_dump_log.c
+++ b/storage/maria/maria_dump_log.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include 
diff --git a/storage/maria/maria_ftdump.c b/storage/maria/maria_ftdump.c
index 4a1b610ff486d938d0a207f41392d320066a9db8..75ff9bd26428c292d983b084abf3c51dfcad895f 100644
--- a/storage/maria/maria_ftdump.c
+++ b/storage/maria/maria_ftdump.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code
    added support for long options (my_getopt) 22.5.2002 by Jani Tolonen */
diff --git a/storage/maria/maria_pack.c b/storage/maria/maria_pack.c
index 28b4ff4cfc70844261f320663565c1958b912e3a..5166ae63758705d7c44895ca30a56d5daa16820c 100644
--- a/storage/maria/maria_pack.c
+++ b/storage/maria/maria_pack.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Pack MARIA file */
 
diff --git a/storage/maria/maria_read_log.c b/storage/maria/maria_read_log.c
index d0cf7521e9b4e061dc5bf943d662b653cfb08a61..147d422399708e498f5d007df7835471fcacd018 100644
--- a/storage/maria/maria_read_log.c
+++ b/storage/maria/maria_read_log.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "maria_def.h"
 #include "ma_recovery.h"
@@ -109,11 +109,11 @@ int main(int argc, char **argv)
       last_checkpoint_lsn != LSN_IMPOSSIBLE)
   {
     lsn= LSN_IMPOSSIBLE;             /* LSN set in maria_apply_log() */
-    fprintf(stdout, "Starting from checkpoint (%lu,0x%lx)\n",
+    fprintf(stdout, "Starting from checkpoint " LSN_FMT "\n",
             LSN_IN_PARTS(last_checkpoint_lsn));
   }
   else
-    fprintf(stdout, "The transaction log starts from lsn (%lu,0x%lx)\n",
+    fprintf(stdout, "The transaction log starts from lsn " LSN_FMT "\n",
             LSN_IN_PARTS(lsn));
 
   if (opt_start_from_lsn)
@@ -125,7 +125,7 @@ int main(int argc, char **argv)
       goto err;
     }
     lsn= (LSN) opt_start_from_lsn;
-    fprintf(stdout, "Starting reading log from lsn (%lu,0x%lx)\n",
+    fprintf(stdout, "Starting reading log from lsn " LSN_FMT "\n",
             LSN_IN_PARTS(lsn));
   }
 
diff --git a/storage/maria/tablockman.c b/storage/maria/tablockman.c
index 994e323a17e450ffd9e5bde77c7bad2129f66847..180487a888a530e4a17693adf75a17697f26745c 100644
--- a/storage/maria/tablockman.c
+++ b/storage/maria/tablockman.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/maria/tablockman.h b/storage/maria/tablockman.h
index 0a76c9a0754221a691b3b11d96d74537ed768185..fd756fae7c38af5fff7cf7777e767f64b707da3c 100644
--- a/storage/maria/tablockman.h
+++ b/storage/maria/tablockman.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _tablockman_h
 #define _tablockman_h
diff --git a/storage/maria/trnman.c b/storage/maria/trnman.c
index 5b3c9f0287a71350e3ab61afec1bdfdd9b599938..744ca86412e51c94e1bea50d755bdc0a6fc2a618 100644
--- a/storage/maria/trnman.c
+++ b/storage/maria/trnman.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 #include 
diff --git a/storage/maria/trnman.h b/storage/maria/trnman.h
index 11c7379776636253098c1b3f4b2199923388d297..37ef8ceeee924dc49ba873135a7d85462ad9c9f0 100644
--- a/storage/maria/trnman.h
+++ b/storage/maria/trnman.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef _trnman_h
 #define _trnman_h
diff --git a/storage/maria/trnman_public.h b/storage/maria/trnman_public.h
index 5254bd79817cfc4a54eccd46d8dc4037e35e55d7..a62c98bf07885525dfdbc516e8ca1fef180a82a5 100644
--- a/storage/maria/trnman_public.h
+++ b/storage/maria/trnman_public.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 /*
diff --git a/storage/maria/unittest/CMakeLists.txt b/storage/maria/unittest/CMakeLists.txt
index d0cb88b8d9f55e5066d9edb0021b33223e356b70..a2da1507c9703aa5da77af7e431d5bc4ed25b8b1 100644
--- a/storage/maria/unittest/CMakeLists.txt
+++ b/storage/maria/unittest/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/unittest/mytap)
diff --git a/storage/maria/unittest/lockman-t.c b/storage/maria/unittest/lockman-t.c
index 6230f6a09d877250a5de1890f77b05de5f453dde..f0051ef10bf5e2cff128530b402787454172a304 100644
--- a/storage/maria/unittest/lockman-t.c
+++ b/storage/maria/unittest/lockman-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   lockman for row and table locks
diff --git a/storage/maria/unittest/lockman1-t.c b/storage/maria/unittest/lockman1-t.c
index 8033c5e90cd732fcc6c117e457beac1fd4cc7855..28f9a0a5a5a739e77f8a9b1793ba205a20e6220f 100644
--- a/storage/maria/unittest/lockman1-t.c
+++ b/storage/maria/unittest/lockman1-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   lockman for row locks, tablockman for table locks
diff --git a/storage/maria/unittest/lockman2-t.c b/storage/maria/unittest/lockman2-t.c
index 2ce24f5c90ea9dd300f12cbb51669eeea19866ca..026e8c8ff3734518a7631164f80428544aa332eb 100644
--- a/storage/maria/unittest/lockman2-t.c
+++ b/storage/maria/unittest/lockman2-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   tablockman for row and table locks
diff --git a/storage/maria/unittest/ma_control_file-t.c b/storage/maria/unittest/ma_control_file-t.c
index 25ec982133a912f47e141835913f3fb7696ab683..160ef598e11349fe91903c21505230c3126592fa 100644
--- a/storage/maria/unittest/ma_control_file-t.c
+++ b/storage/maria/unittest/ma_control_file-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Unit test of the control file module of the Aria engine WL#3234 */
 
diff --git a/storage/maria/unittest/ma_loghandler_examples.c b/storage/maria/unittest/ma_loghandler_examples.c
index fa0b546cdd212e2175522149560363e35591322a..422e6961f59ed230c7a39bc62bf014462386ecc2 100644
--- a/storage/maria/unittest/ma_loghandler_examples.c
+++ b/storage/maria/unittest/ma_loghandler_examples.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 
diff --git a/storage/maria/unittest/ma_maria_log_cleanup.c b/storage/maria/unittest/ma_maria_log_cleanup.c
index 23e5be739d1ca49c1add7df10f67d9be32b95828..68a353f379d53cf43b54ea8b103f561f9793fd24 100644
--- a/storage/maria/unittest/ma_maria_log_cleanup.c
+++ b/storage/maria/unittest/ma_maria_log_cleanup.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #ifdef _WIN32
diff --git a/storage/maria/unittest/ma_pagecache_consist.c b/storage/maria/unittest/ma_pagecache_consist.c
index a9223ca9f6f86de2764dea2625f7b3f4a5d184b6..8ae7443dee327358fee73be6edbd668a6508a2fa 100644
--- a/storage/maria/unittest/ma_pagecache_consist.c
+++ b/storage/maria/unittest/ma_pagecache_consist.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   TODO: use pthread_join instead of wait_for_thread_count_to_be_zero, like in
diff --git a/storage/maria/unittest/ma_pagecache_rwconsist.c b/storage/maria/unittest/ma_pagecache_rwconsist.c
index 0b05d976516c473cef8caf0d39b02640ea372d52..534fe654e7e5b271d06913ceffe06289fe79a47f 100644
--- a/storage/maria/unittest/ma_pagecache_rwconsist.c
+++ b/storage/maria/unittest/ma_pagecache_rwconsist.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   TODO: use pthread_join instead of wait_for_thread_count_to_be_zero, like in
diff --git a/storage/maria/unittest/ma_pagecache_rwconsist2.c b/storage/maria/unittest/ma_pagecache_rwconsist2.c
index cfc877d55560a06ea2944100346b63ed63bb435f..e44245a6994f763787acf8c4527418279b24bcfd 100644
--- a/storage/maria/unittest/ma_pagecache_rwconsist2.c
+++ b/storage/maria/unittest/ma_pagecache_rwconsist2.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 /**
diff --git a/storage/maria/unittest/ma_pagecache_single.c b/storage/maria/unittest/ma_pagecache_single.c
index e149af7cf5ee6d9d5b31c4b176b263ec8378f8fa..29232a23626b6242eac3f734ddac9256df0863c9 100644
--- a/storage/maria/unittest/ma_pagecache_single.c
+++ b/storage/maria/unittest/ma_pagecache_single.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   TODO: use pthread_join instead of wait_for_thread_count_to_be_zero, like in
diff --git a/storage/maria/unittest/ma_test_loghandler-t.c b/storage/maria/unittest/ma_test_loghandler-t.c
index aa8615e9b77bde96eabb6c24d8350ac1a919458c..112be3c66f1b1302eee6c7235c5e5be020cbf63c 100644
--- a/storage/maria/unittest/ma_test_loghandler-t.c
+++ b/storage/maria/unittest/ma_test_loghandler-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -114,7 +114,7 @@ static my_bool check_content(uchar *ptr, ulong length)
 
 void read_ok(TRANSLOG_HEADER_BUFFER *rec)
 {
-  ok(1, "read record type: %u  LSN: (%lu,0x%lx)",
+  ok(1, "read record type: %u  LSN: " LSN_FMT,
      rec->type, LSN_IN_PARTS(rec->lsn));
 }
 
@@ -399,7 +399,7 @@ int main(int argc __attribute__((unused)), char *argv[])
       fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_0LSN_EXAMPLE "
               "data read(0)\n"
               "type %u, strid %u, len %u, i: %u, 4: %u 5: %u, "
-              "lsn(%lu,0x%lx)\n",
+              "lsn" LSN_FMT "\n",
               (uint) rec.type, (uint) rec.short_trid, (uint) rec.record_length,
               (uint) uint4korr(rec.header), (uint) rec.header[4],
               (uint) rec.header[5],
@@ -444,8 +444,8 @@ int main(int argc __attribute__((unused)), char *argv[])
           fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_1LSN_EXAMPLE "
                   "data read(%d) "
                   "type: %u  strid: %u  len: %u"
-                  "ref: (%lu,0x%lx)  (%lu,0x%lx)  "
-                  "lsn(%lu,0x%lx)\n",
+                  "ref: " LSN_FMT "  " LSN_FMT "  "
+                  "lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (uint) rec.record_length,
                   LSN_IN_PARTS(ref), LSN_IN_PARTS(lsn),
@@ -475,9 +475,9 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_2LSN_EXAMPLE "
                   "data read(%d) "
-                  "type %u, strid %u, len %u, ref1(%lu,0x%lx), "
-                  "ref2(%lu,0x%lx) %x%x%x%x%x%x%x%x%x "
-                  "lsn(%lu,0x%lx)\n",
+                  "type %u, strid %u, len %u, ref1" LSN_FMT ", "
+                  "ref2" LSN_FMT " %x%x%x%x%x%x%x%x%x "
+                  "lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (uint) rec.record_length,
                   LSN_IN_PARTS(ref1), LSN_IN_PARTS(ref2),
@@ -522,7 +522,7 @@ int main(int argc __attribute__((unused)), char *argv[])
                   "data read(%d)"
                   "type %u (%d), strid %u (%d), len %lu, %lu + 7 (%d), "
                   "hdr len: %u (%d), "
-                  "ref(%lu,0x%lx), lsn(%lu,0x%lx) (%d), content: %d\n",
+                  "ref" LSN_FMT ", lsn" LSN_FMT " (%d), content: %d\n",
                   i, (uint) rec.type,
                   rec.type != LOGREC_VARIABLE_RECORD_1LSN_EXAMPLE,
                   (uint) rec.short_trid,
@@ -541,7 +541,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr,
                   "Incorrect LOGREC_VARIABLE_RECORD_1LSN_EXAMPLE "
-                  "in whole rec read lsn(%lu,0x%lx)\n",
+                  "in whole rec read lsn" LSN_FMT "\n",
                   LSN_IN_PARTS(rec.lsn));
           goto err;
         }
@@ -565,8 +565,8 @@ int main(int argc __attribute__((unused)), char *argv[])
           fprintf(stderr, "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
                   "data read(%d) "
                   "type %u, strid %u, len %lu != %lu + 14, hdr len: %d, "
-                  "ref1(%lu,0x%lx), ref2(%lu,0x%lx), "
-                  "lsn(%lu,0x%lx)\n",
+                  "ref1" LSN_FMT ", ref2" LSN_FMT ", "
+                  "lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (ulong) rec.record_length, (ulong) rec_len,
                   len, LSN_IN_PARTS(ref1), LSN_IN_PARTS(ref2),
@@ -577,7 +577,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr,
                   "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
-                  "in whole rec read lsn(%lu,0x%lx)\n",
+                  "in whole rec read lsn" LSN_FMT "\n",
                   LSN_IN_PARTS(rec.lsn));
           goto err;
         }
@@ -606,7 +606,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_0LSN_EXAMPLE "
                 "data read(%d)\n"
                 "type %u, strid %u, len %u, i: %u, 4: %u 5: %u "
-                "lsn(%lu,0x%lx)\n",
+                "lsn" LSN_FMT "\n",
                 i, (uint) rec.type, (uint) rec.short_trid,
                 (uint) rec.record_length,
                 (uint) uint4korr(rec.header), (uint) rec.header[4],
@@ -629,7 +629,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         fprintf(stderr, "Incorrect LOGREC_VARIABLE_RECORD_0LSN_EXAMPLE "
                 "data read(%d) "
                 "type %u, strid %u, len %lu != %lu, hdr len: %d, "
-                "lsn(%lu,0x%lx)\n",
+                "lsn" LSN_FMT "\n",
                 i, (uint) rec.type, (uint) rec.short_trid,
                 (ulong) rec.record_length, (ulong) rec_len,
                 len, LSN_IN_PARTS(rec.lsn));
@@ -639,7 +639,7 @@ int main(int argc __attribute__((unused)), char *argv[])
       {
         fprintf(stderr,
                 "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
-                "in whole rec read lsn(%lu,0x%lx)\n",
+                "in whole rec read lsn" LSN_FMT "\n",
                 LSN_IN_PARTS(rec.lsn));
         goto err;
       }
diff --git a/storage/maria/unittest/ma_test_loghandler_first_lsn-t.c b/storage/maria/unittest/ma_test_loghandler_first_lsn-t.c
index 9306be3958e1334aca5c37ff5be603c79775a54d..7a8ee720ded81a5351170a786c37a64e9dfdf54b 100644
--- a/storage/maria/unittest/ma_test_loghandler_first_lsn-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_first_lsn-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -102,7 +102,7 @@ int main(int argc __attribute__((unused)), char *argv[])
   first_lsn= translog_first_lsn_in_log();
   if (first_lsn != LSN_IMPOSSIBLE)
   {
-    fprintf(stderr, "Incorrect first lsn response (%lu,0x%lx).",
+    fprintf(stderr, "Incorrect first lsn response " LSN_FMT ".",
             LSN_IN_PARTS(first_lsn));
     translog_destroy();
     exit(1);
@@ -140,8 +140,8 @@ int main(int argc __attribute__((unused)), char *argv[])
   first_lsn= translog_first_lsn_in_log();
   if (first_lsn != theor_lsn)
   {
-    fprintf(stderr, "Incorrect first lsn: (%lu,0x%lx)  "
-            " theoretical first: (%lu,0x%lx)\n",
+    fprintf(stderr, "Incorrect first lsn: " LSN_FMT "  "
+            " theoretical first: " LSN_FMT "\n",
             LSN_IN_PARTS(first_lsn), LSN_IN_PARTS(theor_lsn));
     translog_destroy();
     exit(1);
diff --git a/storage/maria/unittest/ma_test_loghandler_max_lsn-t.c b/storage/maria/unittest/ma_test_loghandler_max_lsn-t.c
index 9ff391b38141dc2bf8c61fe08653f037da774d21..b76bf30748e4caae55f8708caaacee4c0aee1542 100644
--- a/storage/maria/unittest/ma_test_loghandler_max_lsn-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_max_lsn-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -94,7 +94,7 @@ int main(int argc __attribute__((unused)), char *argv[])
   }
   if (max_lsn != LSN_IMPOSSIBLE)
   {
-    fprintf(stderr, "Incorrect first lsn response (%lu,0x%lx).",
+    fprintf(stderr, "Incorrect first lsn response " LSN_FMT ".",
             LSN_IN_PARTS(max_lsn));
     translog_destroy();
     exit(1);
@@ -138,8 +138,8 @@ int main(int argc __attribute__((unused)), char *argv[])
   }
   if (max_lsn != last_lsn)
   {
-    fprintf(stderr, "Incorrect max lsn: (%lu,0x%lx)  "
-            " last lsn on first file: (%lu,0x%lx)\n",
+    fprintf(stderr, "Incorrect max lsn: " LSN_FMT "  "
+            " last lsn on first file: " LSN_FMT "\n",
             LSN_IN_PARTS(max_lsn), LSN_IN_PARTS(last_lsn));
     translog_destroy();
     exit(1);
diff --git a/storage/maria/unittest/ma_test_loghandler_multigroup-t.c b/storage/maria/unittest/ma_test_loghandler_multigroup-t.c
index dc7e0c79f87d95aaede3913a1b8b27df360e829b..6ba0d00f8840ca91ac2597114001579c30b42f4e 100644
--- a/storage/maria/unittest/ma_test_loghandler_multigroup-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_multigroup-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -486,7 +486,7 @@ int main(int argc __attribute__((unused)), char *argv[])
       fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_0LSN_EXAMPLE "
               "data read(0)\n"
               "type %u, strid %u, len %u, i: %u, 4: %u 5: %u, "
-              "lsn(0x%lu,0x%lx)\n",
+              LSN_FMT "\n",
               (uint) rec.type, (uint) rec.short_trid, (uint) rec.record_length,
               (uint)uint4korr(rec.header), (uint) rec.header[4],
               (uint) rec.header[5],
@@ -534,7 +534,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_1LSN_EXAMPLE "
                   "data read(%d)"
-                  "type %u, strid %u, len %u, ref(%lu,0x%lx), lsn(%lu,0x%lx)\n",
+                  "type %u, strid %u, len %u, ref" LSN_FMT ", lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (uint) rec.record_length,
                   LSN_IN_PARTS(ref), LSN_IN_PARTS(rec.lsn));
@@ -564,9 +564,9 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_2LSN_EXAMPLE "
                   "data read(%d) "
-                  "type %u, strid %u, len %u, ref1(%lu,0x%lx), "
-                  "ref2(%lu,0x%lx) %x%x%x%x%x%x%x%x%x "
-                  "lsn(%lu,0x%lx)\n",
+                  "type %u, strid %u, len %u, ref1" LSN_FMT ", "
+                  "ref2" LSN_FMT " %x%x%x%x%x%x%x%x%x "
+                  "lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (uint) rec.record_length,
                   LSN_IN_PARTS(ref1), LSN_IN_PARTS(ref2),
@@ -612,7 +612,7 @@ int main(int argc __attribute__((unused)), char *argv[])
                   "data read(%d)"
                   "type %u (%d), strid %u (%d), len %lu, %lu + 7 (%d), "
                   "hdr len: %d (%d), "
-                  "ref(%lu,0x%lx), lsn(%lu,0x%lx) (%d), content: %d\n",
+                  "ref" LSN_FMT ", lsn" LSN_FMT " (%d), content: %d\n",
                   i, (uint) rec.type,
                   rec.type !=LOGREC_VARIABLE_RECORD_1LSN_EXAMPLE,
                   (uint) rec.short_trid,
@@ -632,7 +632,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr,
                   "Incorrect LOGREC_VARIABLE_RECORD_1LSN_EXAMPLE "
-                  "in whole rec read lsn(%lu,0x%lx)\n",
+                  "in whole rec read lsn" LSN_FMT "\n",
                   LSN_IN_PARTS(rec.lsn));
           translog_free_record_header(&rec);
           goto err;
@@ -656,8 +656,8 @@ int main(int argc __attribute__((unused)), char *argv[])
           fprintf(stderr, "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
                   " data read(%d) "
                   "type %u, strid %u, len %lu != %lu + 14, hdr len: %d, "
-                  "ref1(%lu,0x%lx), ref2(%lu,0x%lx), "
-                  "lsn(%lu,0x%lx)\n",
+                  "ref1" LSN_FMT ", ref2" LSN_FMT ", "
+                  "lsn" LSN_FMT "\n",
                   i, (uint) rec.type, (uint) rec.short_trid,
                   (ulong) rec.record_length, (ulong) rec_len,
                   len,
@@ -670,7 +670,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         {
           fprintf(stderr,
                   "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
-                  "in whole rec read lsn(%lu,0x%lx)\n",
+                  "in whole rec read lsn" LSN_FMT "\n",
                   LSN_IN_PARTS(rec.lsn));
           translog_free_record_header(&rec);
           goto err;
@@ -702,7 +702,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_0LSN_EXAMPLE "
                 "data read(%d)\n"
                 "type %u, strid %u, len %u, i: %u, 4: %u 5: %u "
-                "lsn(%lu,0x%lx)\n",
+                "lsn" LSN_FMT "\n",
                 i, (uint) rec.type, (uint) rec.short_trid,
                 (uint) rec.record_length,
                 (uint)uint4korr(rec.header), (uint) rec.header[4],
@@ -726,7 +726,7 @@ int main(int argc __attribute__((unused)), char *argv[])
         fprintf(stderr, "Incorrect LOGREC_VARIABLE_RECORD_0LSN_EXAMPLE "
                 "data read(%d) "
                 "type %u, strid %u, len %lu != %lu, hdr len: %d, "
-                "lsn(%lu,0x%lx)\n",
+                "lsn" LSN_FMT "\n",
                 i, (uint) rec.type, (uint) rec.short_trid,
                 (ulong) rec.record_length, (ulong) rec_len,
                 len, LSN_IN_PARTS(rec.lsn));
@@ -737,7 +737,7 @@ int main(int argc __attribute__((unused)), char *argv[])
       {
         fprintf(stderr,
                 "Incorrect LOGREC_VARIABLE_RECORD_2LSN_EXAMPLE "
-                "in whole rec read lsn(%lu,0x%lx)\n",
+                "in whole rec read lsn" LSN_FMT "\n",
                 LSN_IN_PARTS(rec.lsn));
         translog_free_record_header(&rec);
         goto err;
diff --git a/storage/maria/unittest/ma_test_loghandler_multithread-t.c b/storage/maria/unittest/ma_test_loghandler_multithread-t.c
index ff843937fcde08994e91adab07c2752a42836358..68d1edb938531d6e2313250c3b31f25fad72ba93 100644
--- a/storage/maria/unittest/ma_test_loghandler_multithread-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_multithread-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -486,7 +486,7 @@ int main(int argc __attribute__((unused)),
           fprintf(stderr, "Incorrect LOGREC_FIXED_RECORD_0LSN_EXAMPLE "
                   "data read(%d)\n"
                   "type %u, strid %u %u, len %u, i: %u %u, "
-                  "lsn(%lu,0x%lx) (%lu,0x%lx)\n",
+                  "lsn" LSN_FMT " " LSN_FMT "\n",
                   i, (uint) rec.type,
                   (uint) rec.short_trid, (uint) uint2korr(rec.header),
                   (uint) rec.record_length,
@@ -510,7 +510,7 @@ int main(int argc __attribute__((unused)),
                   "data read(%d) "
                   "thread: %d, iteration %d, stage %d\n"
                   "type %u (%d), len %d, length %lu %lu (%d) "
-                  "lsn(%lu,0x%lx) (%lu,0x%lx)\n",
+                  "lsn" LSN_FMT " " LSN_FMT "\n",
                   i, (uint) rec.short_trid, index, stage,
                   (uint) rec.type, (rec.type !=
                                     LOGREC_VARIABLE_RECORD_0LSN_EXAMPLE),
@@ -526,7 +526,7 @@ int main(int argc __attribute__((unused)),
         {
           fprintf(stderr,
                   "Incorrect LOGREC_VARIABLE_RECORD_0LSN_EXAMPLE "
-                  "in whole rec read lsn(%lu,0x%lx)\n",
+                  "in whole rec read lsn" LSN_FMT "\n",
                   LSN_IN_PARTS(rec.lsn));
           translog_free_record_header(&rec);
           goto err;
diff --git a/storage/maria/unittest/ma_test_loghandler_noflush-t.c b/storage/maria/unittest/ma_test_loghandler_noflush-t.c
index 9555cc0842f491cc05e0170001f7cfa847ee3f55..f6c214cc827823f6de98eb098fa6b1dac0b32f97 100644
--- a/storage/maria/unittest/ma_test_loghandler_noflush-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_noflush-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
@@ -116,7 +116,7 @@ int main(int argc __attribute__((unused)), char *argv[])
             "data read(0)\n"
             "type: %u (%d)  strid: %u (%d)  len: %u (%d)  i: %u (%d), "
             "4: %u (%d)  5: %u (%d)  "
-            "lsn(%lu,0x%lx) (%d)\n",
+            "lsn" LSN_FMT " (%d)\n",
             (uint) rec.type, (rec.type !=LOGREC_FIXED_RECORD_0LSN_EXAMPLE),
             (uint) rec.short_trid, (rec.short_trid != 0),
             (uint) rec.record_length, (rec.record_length != 6),
diff --git a/storage/maria/unittest/ma_test_loghandler_nologs-t.c b/storage/maria/unittest/ma_test_loghandler_nologs-t.c
index 310345f0885e6b259de0380e01ab513f0e707c1e..06096d642f5ec316fc91ce0c36d850999457c61a 100644
--- a/storage/maria/unittest/ma_test_loghandler_nologs-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_nologs-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
diff --git a/storage/maria/unittest/ma_test_loghandler_pagecache-t.c b/storage/maria/unittest/ma_test_loghandler_pagecache-t.c
index 0d9382d34f1b0fe495750d57946e0a9f6c946e0c..7956d53186fd3568b7e2537f2bf8f463da13654d 100644
--- a/storage/maria/unittest/ma_test_loghandler_pagecache-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_pagecache-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
diff --git a/storage/maria/unittest/ma_test_loghandler_purge-t.c b/storage/maria/unittest/ma_test_loghandler_purge-t.c
index ef31b47c9c5fbe10d8f0f6709b222ae12c89f8ac..97866a912cb3ddac3bbea7af7fea3c44ba99a4ef 100644
--- a/storage/maria/unittest/ma_test_loghandler_purge-t.c
+++ b/storage/maria/unittest/ma_test_loghandler_purge-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include 
diff --git a/storage/maria/unittest/sequence_storage.c b/storage/maria/unittest/sequence_storage.c
index 9772a101ab42715e1f7851e49fe6d4cba13db62c..1953304e6a1838064b80e8b8531aa7652ad89ee9 100644
--- a/storage/maria/unittest/sequence_storage.c
+++ b/storage/maria/unittest/sequence_storage.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "../maria_def.h"
 #include "sequence_storage.h"
diff --git a/storage/maria/unittest/sequence_storage.h b/storage/maria/unittest/sequence_storage.h
index 9bee33c5bbfc800341f3c8f93210b7e99f5d6d62..174902561c430150e74ef0c6d46fd5d3cb832044 100644
--- a/storage/maria/unittest/sequence_storage.h
+++ b/storage/maria/unittest/sequence_storage.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 
 typedef struct st_seq_storage
diff --git a/storage/maria/unittest/test_file.c b/storage/maria/unittest/test_file.c
index 7ee38c570683db58e98b713d5bfeab41ddc2b91e..269a9f7f28d8a0704a5f7a1df0d05097df740430 100644
--- a/storage/maria/unittest/test_file.c
+++ b/storage/maria/unittest/test_file.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include                                 /* Includes my_global.h */
 #include 
diff --git a/storage/maria/unittest/test_file.h b/storage/maria/unittest/test_file.h
index 10d77c9c6bdc314f63e5bed7005a48123dfb61ac..22337b7a2797a03f1246353e18519513b16d2b9c 100644
--- a/storage/maria/unittest/test_file.h
+++ b/storage/maria/unittest/test_file.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include "../ma_pagecache.h"
diff --git a/storage/maria/unittest/trnman-t.c b/storage/maria/unittest/trnman-t.c
index ede899bc303c551e77660d02e1ccbde282e70d59..8215c111aaa110ce863660ad09b0a64418fb0fb0 100644
--- a/storage/maria/unittest/trnman-t.c
+++ b/storage/maria/unittest/trnman-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 
diff --git a/storage/mroonga/CMakeLists.txt b/storage/mroonga/CMakeLists.txt
index 5a7d4699386654b93a233e26731c0816fb6d5fc9..ba6c1279c59e6a1b07570fcbb8bce161c338df28 100644
--- a/storage/mroonga/CMakeLists.txt
+++ b/storage/mroonga/CMakeLists.txt
@@ -15,7 +15,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 cmake_minimum_required(VERSION 2.6)
 project(mroonga)
diff --git a/storage/mroonga/COPYING b/storage/mroonga/COPYING
index be8dfebc1c00f3cc3be9c77b90a6a840f94f8e5e..21d4c6d6140538d6142da3ba9e28a28027ee2076 100644
--- a/storage/mroonga/COPYING
+++ b/storage/mroonga/COPYING
@@ -2,7 +2,7 @@
 		       Version 2.1, February 1999
 
   Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -485,7 +485,7 @@ convey the exclusion of warranty; and each file should have at least the
 
     You should have received a copy of the GNU Lesser General Public
     License along with this library; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/mroonga/build/cmake_modules/ReadFileList.cmake b/storage/mroonga/build/cmake_modules/ReadFileList.cmake
index 018587991d8d3a4c385d5d27896ea32d543f9b0c..204f59f60bf1be669497999b43baf512b3e78f3b 100644
--- a/storage/mroonga/build/cmake_modules/ReadFileList.cmake
+++ b/storage/mroonga/build/cmake_modules/ReadFileList.cmake
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 macro(read_file_list file_name output_variable)
   file(READ ${file_name} ${output_variable})
diff --git a/storage/mroonga/config.sh.in b/storage/mroonga/config.sh.in
index 32e88fd5c3dc028483b9f05ad2b853b86afa818a..4f02fb94788d84817289f5beef5d56c35e7c86a5 100644
--- a/storage/mroonga/config.sh.in
+++ b/storage/mroonga/config.sh.in
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 MYSQL_SOURCE_DIR="@MYSQL_SOURCE_DIR@"
 MYSQL_BUILD_DIR="@MYSQL_BUILD_DIR@"
diff --git a/storage/mroonga/ha_mroonga.cpp b/storage/mroonga/ha_mroonga.cpp
index 8b7dd52c8b58304b4dda5901a7f47e654ca42b99..cd6dc1a3d55aa5fbaca06736ac1b3b0a2a1c7aae 100644
--- a/storage/mroonga/ha_mroonga.cpp
+++ b/storage/mroonga/ha_mroonga.cpp
@@ -17,7 +17,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_mysql.h"
diff --git a/storage/mroonga/ha_mroonga.hpp b/storage/mroonga/ha_mroonga.hpp
index 71ec40ee63a2f3a4b277d628a12f14e20973e879..29ee48afe2313db07d61d6282759cef2a732c01c 100644
--- a/storage/mroonga/ha_mroonga.hpp
+++ b/storage/mroonga/ha_mroonga.hpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef HA_MROONGA_HPP_
diff --git a/storage/mroonga/lib/mrn_auto_increment_value_lock.cpp b/storage/mroonga/lib/mrn_auto_increment_value_lock.cpp
index 3bac5e31c6c0f41137cc981bb4bde178b9b02ab6..4baef101962e9573599e27cb376c6c2fd4989c33 100644
--- a/storage/mroonga/lib/mrn_auto_increment_value_lock.cpp
+++ b/storage/mroonga/lib/mrn_auto_increment_value_lock.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_auto_increment_value_lock.hpp"
diff --git a/storage/mroonga/lib/mrn_auto_increment_value_lock.hpp b/storage/mroonga/lib/mrn_auto_increment_value_lock.hpp
index 8aabe6a8a7f18eb76b1857d1cf2209cb8a2e4b2b..ed2f9f3c815381e6a14f8c896c29154e941fd973 100644
--- a/storage/mroonga/lib/mrn_auto_increment_value_lock.hpp
+++ b/storage/mroonga/lib/mrn_auto_increment_value_lock.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_AUTO_INCREMENT_VALUE_LOCK_HPP_
diff --git a/storage/mroonga/lib/mrn_column_name.cpp b/storage/mroonga/lib/mrn_column_name.cpp
index e469ad2fd1935ef46ecddb3ae9860ac422feaa40..986e07ac4116625679af5abc9090dfa806fe4f00 100644
--- a/storage/mroonga/lib/mrn_column_name.cpp
+++ b/storage/mroonga/lib/mrn_column_name.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_column_name.hpp b/storage/mroonga/lib/mrn_column_name.hpp
index ed8fb67e50609573574ebf25ba18818645356df7..2dc5c920e3b18edae4f29dfd003dda7c0fdc2cd5 100644
--- a/storage/mroonga/lib/mrn_column_name.hpp
+++ b/storage/mroonga/lib/mrn_column_name.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/lib/mrn_condition_converter.cpp b/storage/mroonga/lib/mrn_condition_converter.cpp
index 6df601d62506ab9c6a1c3dab2905fc5597377c3b..777d3dcc52dc4fe9a95b05ab3cddd17a6a80fca1 100644
--- a/storage/mroonga/lib/mrn_condition_converter.cpp
+++ b/storage/mroonga/lib/mrn_condition_converter.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_condition_converter.hpp"
diff --git a/storage/mroonga/lib/mrn_condition_converter.hpp b/storage/mroonga/lib/mrn_condition_converter.hpp
index f8a48b6209abd96ba5bfe67c5b70a89429e9feb5..bf10001d187b8ddca1e598272672aff83086488f 100644
--- a/storage/mroonga/lib/mrn_condition_converter.hpp
+++ b/storage/mroonga/lib/mrn_condition_converter.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_CONDITION_CONVERTER_HPP_
diff --git a/storage/mroonga/lib/mrn_context_pool.cpp b/storage/mroonga/lib/mrn_context_pool.cpp
index a26005b16c08581e5ddc2343da09d66fd588a8d1..d99657539ee725221cacc1b31f4911e7f76a3b05 100644
--- a/storage/mroonga/lib/mrn_context_pool.cpp
+++ b/storage/mroonga/lib/mrn_context_pool.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_context_pool.hpp"
diff --git a/storage/mroonga/lib/mrn_context_pool.hpp b/storage/mroonga/lib/mrn_context_pool.hpp
index 4c64933ac81b63d4b6eabec110a37e75371f3e0e..22b4fed80d554323bada77c501cc0975c95115a7 100644
--- a/storage/mroonga/lib/mrn_context_pool.hpp
+++ b/storage/mroonga/lib/mrn_context_pool.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_CONTEXT_POOL_HPP_
diff --git a/storage/mroonga/lib/mrn_count_skip_checker.cpp b/storage/mroonga/lib/mrn_count_skip_checker.cpp
index 216f3b7b7b568c660bdf86c8f6f32f12b6248935..76ac69b40ff720c36d069b58bf4e04c4bdc5da78 100644
--- a/storage/mroonga/lib/mrn_count_skip_checker.cpp
+++ b/storage/mroonga/lib/mrn_count_skip_checker.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_count_skip_checker.hpp"
diff --git a/storage/mroonga/lib/mrn_count_skip_checker.hpp b/storage/mroonga/lib/mrn_count_skip_checker.hpp
index b813ecdcc08f2001ea581dcdf470ec3bc737587c..8ea93cd3db4ec2aff4e27ee4f7b2df474b66f8dd 100644
--- a/storage/mroonga/lib/mrn_count_skip_checker.hpp
+++ b/storage/mroonga/lib/mrn_count_skip_checker.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_COUNT_SKIP_CHECKER_HPP_
diff --git a/storage/mroonga/lib/mrn_current_thread.hpp b/storage/mroonga/lib/mrn_current_thread.hpp
index 367057fce66c96e97fbd5142ead19bacda44036d..ee494f768af8314530de55f3f3373ba9ea421771 100644
--- a/storage/mroonga/lib/mrn_current_thread.hpp
+++ b/storage/mroonga/lib/mrn_current_thread.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/lib/mrn_database.cpp b/storage/mroonga/lib/mrn_database.cpp
index 52e315e1b77f46f340d02f471eaa81c8b2776967..12f0b3487f43dcb66564a8c6c92b3ce2b7043d19 100644
--- a/storage/mroonga/lib/mrn_database.cpp
+++ b/storage/mroonga/lib/mrn_database.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_database.hpp b/storage/mroonga/lib/mrn_database.hpp
index c2c7e460b581fa73c8b9a3e70d2488020fbdf5b8..cf9f9d4aa0248b2fc947054a391a301a55dbe111 100644
--- a/storage/mroonga/lib/mrn_database.hpp
+++ b/storage/mroonga/lib/mrn_database.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_DATABASE_HPP_
diff --git a/storage/mroonga/lib/mrn_database_manager.cpp b/storage/mroonga/lib/mrn_database_manager.cpp
index d52d2639d7daa67fed51d9e66b3e2c71ae392542..149c556fc9a0d4075791e5b5eef6bf5e5a2de291 100644
--- a/storage/mroonga/lib/mrn_database_manager.cpp
+++ b/storage/mroonga/lib/mrn_database_manager.cpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_database_manager.hpp b/storage/mroonga/lib/mrn_database_manager.hpp
index 877b7ca889ac40db7d35493b30e8b12aa83acf3a..05383af61a02f084ee8a2aee2985ed30278745c1 100644
--- a/storage/mroonga/lib/mrn_database_manager.hpp
+++ b/storage/mroonga/lib/mrn_database_manager.hpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_DATABASE_MANAGER_HPP_
diff --git a/storage/mroonga/lib/mrn_database_repairer.cpp b/storage/mroonga/lib/mrn_database_repairer.cpp
index 47badbd8b93af22a44affd8128261afc7d05b356..c0c4a90e8f73de3143dac19ca7d5222aa5197ab2 100644
--- a/storage/mroonga/lib/mrn_database_repairer.cpp
+++ b/storage/mroonga/lib/mrn_database_repairer.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_database_repairer.hpp b/storage/mroonga/lib/mrn_database_repairer.hpp
index d46ae83807254b3a436f4c9c7202bd27f17c9bfe..b56c2744651b2c707e44e458297a0045ff613f77 100644
--- a/storage/mroonga/lib/mrn_database_repairer.hpp
+++ b/storage/mroonga/lib/mrn_database_repairer.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_DATABASE_REPAIRER_HPP_
diff --git a/storage/mroonga/lib/mrn_debug_column_access.cpp b/storage/mroonga/lib/mrn_debug_column_access.cpp
index ed7cacae90f656fb50959f3ea158dfc0cbbfea30..5b89baba485d5b5744c2b119e1a143e6cb2213be 100644
--- a/storage/mroonga/lib/mrn_debug_column_access.cpp
+++ b/storage/mroonga/lib/mrn_debug_column_access.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_debug_column_access.hpp"
diff --git a/storage/mroonga/lib/mrn_debug_column_access.hpp b/storage/mroonga/lib/mrn_debug_column_access.hpp
index 1548b4d845969816354143849b0a6f906a97f8b3..be8054efb9edc00eaf907b199520237aa24aaea1 100644
--- a/storage/mroonga/lib/mrn_debug_column_access.hpp
+++ b/storage/mroonga/lib/mrn_debug_column_access.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_DEBUG_COLUMN_ACCESS_HPP_
diff --git a/storage/mroonga/lib/mrn_encoding.cpp b/storage/mroonga/lib/mrn_encoding.cpp
index f6f66758b2ff4b4643c9b07599b7d54ec3c72fa9..1cee6226ab56437af47da50943be1742ab6bf4c1 100644
--- a/storage/mroonga/lib/mrn_encoding.cpp
+++ b/storage/mroonga/lib/mrn_encoding.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_encoding.hpp b/storage/mroonga/lib/mrn_encoding.hpp
index 9c3a65da0f1ddb47b619b467bb4d30db3f5f2a94..f321ca68722080382acdd560c6785f759325cd49 100644
--- a/storage/mroonga/lib/mrn_encoding.hpp
+++ b/storage/mroonga/lib/mrn_encoding.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_ENCODING_HPP_
diff --git a/storage/mroonga/lib/mrn_external_lock.cpp b/storage/mroonga/lib/mrn_external_lock.cpp
index b266b6594ca3abcdb7bdbfdaf7d735714249e02e..512a20a00af82d1dcd40eb2746d1146d7171f01d 100644
--- a/storage/mroonga/lib/mrn_external_lock.cpp
+++ b/storage/mroonga/lib/mrn_external_lock.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_external_lock.hpp"
diff --git a/storage/mroonga/lib/mrn_external_lock.hpp b/storage/mroonga/lib/mrn_external_lock.hpp
index f78b436f6e8b07945914da381df0b95dba5a40ad..9bf7e811abfa00613e6e41de3212c76e43fa9890 100644
--- a/storage/mroonga/lib/mrn_external_lock.hpp
+++ b/storage/mroonga/lib/mrn_external_lock.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_EXTERNAL_LOCK_HPP_
diff --git a/storage/mroonga/lib/mrn_field_normalizer.cpp b/storage/mroonga/lib/mrn_field_normalizer.cpp
index d5b0b3ff43e995212db3d8b9701588a11c6928ef..bb9982f0f84633e8d56da6a6d3c7be1022c46a4d 100644
--- a/storage/mroonga/lib/mrn_field_normalizer.cpp
+++ b/storage/mroonga/lib/mrn_field_normalizer.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_field_normalizer.hpp"
diff --git a/storage/mroonga/lib/mrn_field_normalizer.hpp b/storage/mroonga/lib/mrn_field_normalizer.hpp
index 3a855693481c618d2498aae92854aff4e8852a63..76083377de48b1e35b808db95bf23346937c8696 100644
--- a/storage/mroonga/lib/mrn_field_normalizer.hpp
+++ b/storage/mroonga/lib/mrn_field_normalizer.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_FIELD_NORMALIZER_HPP_
diff --git a/storage/mroonga/lib/mrn_grn.hpp b/storage/mroonga/lib/mrn_grn.hpp
index f60fb7b616ee26fb0eabf544089d8eee8e4d42ec..f288f3e43328341e0966d2d7a94c806c7bb06282 100644
--- a/storage/mroonga/lib/mrn_grn.hpp
+++ b/storage/mroonga/lib/mrn_grn.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_GRN_HPP_
diff --git a/storage/mroonga/lib/mrn_index_column_name.cpp b/storage/mroonga/lib/mrn_index_column_name.cpp
index 14e83ec8e34925027407f8c970813429b3740d03..1a19b9d1f01c5f3e06228e08b3a16758f087bc51 100644
--- a/storage/mroonga/lib/mrn_index_column_name.cpp
+++ b/storage/mroonga/lib/mrn_index_column_name.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_index_column_name.hpp b/storage/mroonga/lib/mrn_index_column_name.hpp
index 5cd24623abd1c0ef19440fef672131c74c8aec24..da3b96dbe6a8e72f5ece888bba6cd9ec82dd4844 100644
--- a/storage/mroonga/lib/mrn_index_column_name.hpp
+++ b/storage/mroonga/lib/mrn_index_column_name.hpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_INDEX_COLUMN_NAME_HPP_
diff --git a/storage/mroonga/lib/mrn_index_table_name.cpp b/storage/mroonga/lib/mrn_index_table_name.cpp
index 1cc510ad7dbaedd8a1d43cf64675272a213a9985..62e67b3cda6225a4fe703596fd778bc3bb7eccb9 100644
--- a/storage/mroonga/lib/mrn_index_table_name.cpp
+++ b/storage/mroonga/lib/mrn_index_table_name.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_index_table_name.hpp b/storage/mroonga/lib/mrn_index_table_name.hpp
index abaccfae220cb5232c6b5c0d27120bde6f9181ec..80d2444b90ba8984c5fe059f1c095c591a2eb9fd 100644
--- a/storage/mroonga/lib/mrn_index_table_name.hpp
+++ b/storage/mroonga/lib/mrn_index_table_name.hpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_INDEX_TABLE_NAME_HPP_
diff --git a/storage/mroonga/lib/mrn_lock.cpp b/storage/mroonga/lib/mrn_lock.cpp
index f518bca9af393cf351f595d776ce43ebff77f908..cfeb519b4c1f79d31fdccca85370d71a812aee33 100644
--- a/storage/mroonga/lib/mrn_lock.cpp
+++ b/storage/mroonga/lib/mrn_lock.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_lock.hpp"
diff --git a/storage/mroonga/lib/mrn_lock.hpp b/storage/mroonga/lib/mrn_lock.hpp
index 2ec71370fa1f740df7495a52e2db7e3da4a31539..29337d8e8de6b8f1076d0bdc117d503ff9a3cb35 100644
--- a/storage/mroonga/lib/mrn_lock.hpp
+++ b/storage/mroonga/lib/mrn_lock.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_LOCK_HPP_
diff --git a/storage/mroonga/lib/mrn_match_escalation_threshold_scope.cpp b/storage/mroonga/lib/mrn_match_escalation_threshold_scope.cpp
index c944b4a4bc0bcb9cf961b0b7ca9b7af0a38474a3..62e630230503e82a46058f5c91b6505c8445a6c2 100644
--- a/storage/mroonga/lib/mrn_match_escalation_threshold_scope.cpp
+++ b/storage/mroonga/lib/mrn_match_escalation_threshold_scope.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_match_escalation_threshold_scope.hpp"
diff --git a/storage/mroonga/lib/mrn_match_escalation_threshold_scope.hpp b/storage/mroonga/lib/mrn_match_escalation_threshold_scope.hpp
index 352e6589f0dfbdf227fe712b7a9687830d1cb7f0..1c5488f8fd08b652e3e4d3bb26848e8cc3d067d0 100644
--- a/storage/mroonga/lib/mrn_match_escalation_threshold_scope.hpp
+++ b/storage/mroonga/lib/mrn_match_escalation_threshold_scope.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_MATCH_ESCALATION_THRESHOLD_SCOPE_HPP_
diff --git a/storage/mroonga/lib/mrn_multiple_column_key_codec.cpp b/storage/mroonga/lib/mrn_multiple_column_key_codec.cpp
index fa3c49a4236d2a7314f456a24836fd1e20b7ba19..546e3f2e9dc4690e6d3ee07e35ace6c89fb03521 100644
--- a/storage/mroonga/lib/mrn_multiple_column_key_codec.cpp
+++ b/storage/mroonga/lib/mrn_multiple_column_key_codec.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_multiple_column_key_codec.hpp b/storage/mroonga/lib/mrn_multiple_column_key_codec.hpp
index 14003cda9f58f66c1679fb8ea497278f817f75e8..26de08caeaa59ca10d2eb2a273210fa9b97658b1 100644
--- a/storage/mroonga/lib/mrn_multiple_column_key_codec.hpp
+++ b/storage/mroonga/lib/mrn_multiple_column_key_codec.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_MULTIPLE_COLUMN_KEY_CODEC_HPP_
diff --git a/storage/mroonga/lib/mrn_mysqlservices.cpp b/storage/mroonga/lib/mrn_mysqlservices.cpp
index 693aa8607c36f7324ce6788056602bd97a3209f3..d1fdd471ecfb5ee98fdbacfc3389135dad5f1e61 100644
--- a/storage/mroonga/lib/mrn_mysqlservices.cpp
+++ b/storage/mroonga/lib/mrn_mysqlservices.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_operation.cpp b/storage/mroonga/lib/mrn_operation.cpp
index 2dab41108a72d37248b936ea6296c1cb957c00f9..e351945f258ea961ff88066042aee1186d50c815 100644
--- a/storage/mroonga/lib/mrn_operation.cpp
+++ b/storage/mroonga/lib/mrn_operation.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_operation.hpp b/storage/mroonga/lib/mrn_operation.hpp
index 899c92e950863904fd7d017013ea4118d83cbdcc..9375cefbbbe73d1750533399151ac73be3ccbfe8 100644
--- a/storage/mroonga/lib/mrn_operation.hpp
+++ b/storage/mroonga/lib/mrn_operation.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_OPERATION_HPP_
diff --git a/storage/mroonga/lib/mrn_operations.cpp b/storage/mroonga/lib/mrn_operations.cpp
index 572907cdc5536be19d9ad96ad5f7428825cb6d70..22a8901eb8950651201d8669d2e00f4c3b46624e 100644
--- a/storage/mroonga/lib/mrn_operations.cpp
+++ b/storage/mroonga/lib/mrn_operations.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_operations.hpp b/storage/mroonga/lib/mrn_operations.hpp
index 762a5ee9d434c78bfd54d3ccb365a1bb53d94bf9..803d9ab6359561a4ff3412ad33007032bf0f1360 100644
--- a/storage/mroonga/lib/mrn_operations.hpp
+++ b/storage/mroonga/lib/mrn_operations.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_OPERATIONS_HPP_
diff --git a/storage/mroonga/lib/mrn_parameters_parser.cpp b/storage/mroonga/lib/mrn_parameters_parser.cpp
index bc075b070688cf347988f893fe90061c892629de..a1db22bf3c69ce9c2b2081c86ff50a3520415d12 100644
--- a/storage/mroonga/lib/mrn_parameters_parser.cpp
+++ b/storage/mroonga/lib/mrn_parameters_parser.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_parameters_parser.hpp"
diff --git a/storage/mroonga/lib/mrn_parameters_parser.hpp b/storage/mroonga/lib/mrn_parameters_parser.hpp
index a15371ca72e0d87bd016b3401da088cd0cd877cb..18ad769e5f90f172e597bc08974ccaf43009ca1c 100644
--- a/storage/mroonga/lib/mrn_parameters_parser.hpp
+++ b/storage/mroonga/lib/mrn_parameters_parser.hpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_PARAMETERS_PARSER_HPP_
diff --git a/storage/mroonga/lib/mrn_path_mapper.cpp b/storage/mroonga/lib/mrn_path_mapper.cpp
index 43f276f4e82a0d556f81f703fc74018f5a0e19d3..0e867b889496fdb15868574c26bf76073d7b637b 100644
--- a/storage/mroonga/lib/mrn_path_mapper.cpp
+++ b/storage/mroonga/lib/mrn_path_mapper.cpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_path_mapper.hpp b/storage/mroonga/lib/mrn_path_mapper.hpp
index 9849d5e28efeb860f90fd976d17cce9aeff5ccfa..60e997175ddd7c5cf283f1911f5b842a87870b44 100644
--- a/storage/mroonga/lib/mrn_path_mapper.hpp
+++ b/storage/mroonga/lib/mrn_path_mapper.hpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_PATH_MAPPER_HPP_
diff --git a/storage/mroonga/lib/mrn_query_parser.cpp b/storage/mroonga/lib/mrn_query_parser.cpp
index 4e05069a3a9ecc7b74539490b6f4bba316bb9b16..92387e259a87d7880b705835220745c8ef572d34 100644
--- a/storage/mroonga/lib/mrn_query_parser.cpp
+++ b/storage/mroonga/lib/mrn_query_parser.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_query_parser.hpp"
diff --git a/storage/mroonga/lib/mrn_query_parser.hpp b/storage/mroonga/lib/mrn_query_parser.hpp
index 8b3c4084c8d0bd2e7763a26fa2799995ae937e09..ba67394d8e98fa5f30ea1dc43876f86b4d29eccd 100644
--- a/storage/mroonga/lib/mrn_query_parser.hpp
+++ b/storage/mroonga/lib/mrn_query_parser.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/lib/mrn_smart_bitmap.cpp b/storage/mroonga/lib/mrn_smart_bitmap.cpp
index 9dc91ff29d5e51ac76be578029c6c07193f0a95e..f8fd4f727bb788db617168059cfd9d3a23cecf56 100644
--- a/storage/mroonga/lib/mrn_smart_bitmap.cpp
+++ b/storage/mroonga/lib/mrn_smart_bitmap.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_smart_bitmap.hpp"
diff --git a/storage/mroonga/lib/mrn_smart_bitmap.hpp b/storage/mroonga/lib/mrn_smart_bitmap.hpp
index dfb569560242f380973ea258e2a8e48f13313a37..5cc80df0f3089e2658d52aaccc99ac63a61fae7b 100644
--- a/storage/mroonga/lib/mrn_smart_bitmap.hpp
+++ b/storage/mroonga/lib/mrn_smart_bitmap.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/lib/mrn_smart_grn_obj.cpp b/storage/mroonga/lib/mrn_smart_grn_obj.cpp
index 40ea9cb079c299041440bc04239303776c2c8883..845a5fb15a4e795940967002297b077e8b3ed308 100644
--- a/storage/mroonga/lib/mrn_smart_grn_obj.cpp
+++ b/storage/mroonga/lib/mrn_smart_grn_obj.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/lib/mrn_smart_grn_obj.hpp b/storage/mroonga/lib/mrn_smart_grn_obj.hpp
index 0a44a6ac9dbd286297e889ffeac3a3a1c3c29170..9158145e169165a56eb20a9af14d1b533811b283 100644
--- a/storage/mroonga/lib/mrn_smart_grn_obj.hpp
+++ b/storage/mroonga/lib/mrn_smart_grn_obj.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_SMART_GRN_OBJ_HPP_
diff --git a/storage/mroonga/lib/mrn_table_fields_offset_mover.cpp b/storage/mroonga/lib/mrn_table_fields_offset_mover.cpp
index 7f1dae266c7e40d4ec67939c6f1fe1d6f7df1906..f230900dd65dcd23cc0e66cc0cb0e659542206eb 100644
--- a/storage/mroonga/lib/mrn_table_fields_offset_mover.cpp
+++ b/storage/mroonga/lib/mrn_table_fields_offset_mover.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_table_fields_offset_mover.hpp"
diff --git a/storage/mroonga/lib/mrn_table_fields_offset_mover.hpp b/storage/mroonga/lib/mrn_table_fields_offset_mover.hpp
index a8d12be19eddff56497f859bfefded458862976c..49311b8df479c61937829b388270de2efeb4e650 100644
--- a/storage/mroonga/lib/mrn_table_fields_offset_mover.hpp
+++ b/storage/mroonga/lib/mrn_table_fields_offset_mover.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/lib/mrn_time_converter.cpp b/storage/mroonga/lib/mrn_time_converter.cpp
index 3c6821c8d119e0f4b0d3b6e56b50f5443a7535f3..9bb8d89a082dd8873b5f60dcb1b97c9c80880aaf 100644
--- a/storage/mroonga/lib/mrn_time_converter.cpp
+++ b/storage/mroonga/lib/mrn_time_converter.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_time_converter.hpp"
diff --git a/storage/mroonga/lib/mrn_time_converter.hpp b/storage/mroonga/lib/mrn_time_converter.hpp
index 9d297f92e59aa2f46fd3bc5ee23e73e5171a32d5..2f7f00f53450c814cd949150c5f4239a463ede20 100644
--- a/storage/mroonga/lib/mrn_time_converter.hpp
+++ b/storage/mroonga/lib/mrn_time_converter.hpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_TIME_CONVERTER_HPP_
diff --git a/storage/mroonga/lib/mrn_value_decoder.cpp b/storage/mroonga/lib/mrn_value_decoder.cpp
index c01b01718b12a3b501d3ecad9d6c89c5fcab3db0..3b2eed67f0d3babaae40e080cb8780490057c5d3 100644
--- a/storage/mroonga/lib/mrn_value_decoder.cpp
+++ b/storage/mroonga/lib/mrn_value_decoder.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_value_decoder.hpp"
diff --git a/storage/mroonga/lib/mrn_value_decoder.hpp b/storage/mroonga/lib/mrn_value_decoder.hpp
index fe651f574f079ae471c0461f439459f584ed1eb0..7919a88ee5c7e63a8e911c7524d14e00a73ad216 100644
--- a/storage/mroonga/lib/mrn_value_decoder.hpp
+++ b/storage/mroonga/lib/mrn_value_decoder.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_VALUE_DECODER_HPP_
diff --git a/storage/mroonga/lib/mrn_windows.hpp b/storage/mroonga/lib/mrn_windows.hpp
index f6ae449025464e2c02aa26a81fd63aaa711d53ad..cfe35b41aee7f2e8b6b6348f2b62e8d69eced4a0 100644
--- a/storage/mroonga/lib/mrn_windows.hpp
+++ b/storage/mroonga/lib/mrn_windows.hpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_WINDOWS_HPP_
diff --git a/storage/mroonga/mrn_constants.hpp b/storage/mroonga/mrn_constants.hpp
index b11ebe8bd93ca42d340cc4ff18f65772ef040a4f..9f21eb32119940259ef7b5d1581ac0e8e001d65d 100644
--- a/storage/mroonga/mrn_constants.hpp
+++ b/storage/mroonga/mrn_constants.hpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_CONSTANTS_HPP_
diff --git a/storage/mroonga/mrn_err.h b/storage/mroonga/mrn_err.h
index 95b1b047c7963cce2c88790b1f183222721ca3bc..46eb24ccf67686fae05388d3df75a43a514be161 100644
--- a/storage/mroonga/mrn_err.h
+++ b/storage/mroonga/mrn_err.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_ERR_H_
diff --git a/storage/mroonga/mrn_macro.hpp b/storage/mroonga/mrn_macro.hpp
index b20fdb4c1401feb290634de63a4f6e335155b2db..56576983a847acda4d423a9759080f5f7f78d7be 100644
--- a/storage/mroonga/mrn_macro.hpp
+++ b/storage/mroonga/mrn_macro.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_MACRO_HPP_
diff --git a/storage/mroonga/mrn_mysql.h b/storage/mroonga/mrn_mysql.h
index 086d1ea2e3fe4712f08c96c885350ed63cc35db0..c9be543de697c175f288c1e418ba159729436f46 100644
--- a/storage/mroonga/mrn_mysql.h
+++ b/storage/mroonga/mrn_mysql.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_MYSQL_H_
diff --git a/storage/mroonga/mrn_mysql_compat.h b/storage/mroonga/mrn_mysql_compat.h
index d33a8c88d879bcdfb5092058c212c96cb6398e47..8eb55b3e91df06837bceaff233d80dbe702268ea 100644
--- a/storage/mroonga/mrn_mysql_compat.h
+++ b/storage/mroonga/mrn_mysql_compat.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_MYSQL_COMPAT_H_
diff --git a/storage/mroonga/mrn_table.cpp b/storage/mroonga/mrn_table.cpp
index c20f688fa6dc4ba77469fecba7414e3eb65e0ea1..8653092e45fe2774a56b54d44bd11dfffe115b9c 100644
--- a/storage/mroonga/mrn_table.cpp
+++ b/storage/mroonga/mrn_table.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "mrn_mysql.h"
diff --git a/storage/mroonga/mrn_table.hpp b/storage/mroonga/mrn_table.hpp
index 0066fc23f08d6a5fcab1be6604cfcdaf78128129..66ecd2cec00dc6c7d1cd3e469f0d19e590cf78e7 100644
--- a/storage/mroonga/mrn_table.hpp
+++ b/storage/mroonga/mrn_table.hpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_TABLE_HPP_
diff --git a/storage/mroonga/mrn_variables.hpp b/storage/mroonga/mrn_variables.hpp
index 0866403e54caa0ddd7082cd5aa106e6db0b1d363..f55b1fd35a0fa6df3820fb8ee37626808ef4c6a7 100644
--- a/storage/mroonga/mrn_variables.hpp
+++ b/storage/mroonga/mrn_variables.hpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_VARIABLES_HPP_
diff --git a/storage/mroonga/mrn_version.h.in b/storage/mroonga/mrn_version.h.in
index dfa0e2dffd59454e9ca5fbf05d77c72d70b930a1..edeecb635a8ebbe2aef0cc3ebe5372a48e0aa1ee 100644
--- a/storage/mroonga/mrn_version.h.in
+++ b/storage/mroonga/mrn_version.h.in
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef MRN_VERSION_H_
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_64bit.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_64bit.inc
index 06b5361f3bd8567b8a08bc617ec45d2f80acc871..9d1ee1d5e0b6958ac4a4d63851807ed9adf1593c 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_64bit.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_64bit.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 disable_query_log;
 disable_warnings;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_freebsd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_freebsd.inc
index 7449724b5defa5420deff8a2fcf586a8fd396f64..51bbe572b89d344e742243426bb7b6205a1503b7 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_freebsd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_freebsd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $version_compile_os_freebsd=
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_ha_mroonga_so.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_ha_mroonga_so.inc
index 7063c1d1b3d22a17709b771d9f9a708161f1a20e..fef9de96597c876e505c253a67cf1d1c2d307904 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_ha_mroonga_so.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_ha_mroonga_so.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_windows.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_embedded.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_embedded.inc
index f608f5f220f08fbb866b4dc8b142fca9218441c5..926620eb573172428a2d1c50f10e29ad5bfad42f 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_embedded.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_embedded.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $libgroonga_embedded = `SELECT @@mroonga_libgroonga_embedded;`;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_lz4.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_lz4.inc
index a61058b92ffdf6238ae1a5d746b186498ed70db2..2acfb1fb57169b9aca3411012b678a76de1a6f32 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_lz4.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_lz4.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $libgroonga_support_lz4 =
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zlib.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zlib.inc
index 8f79d05af295a36291b513f7865dc879096b4f80..e9b8dee0effa617ab5a681871226e3d06a3b5578 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zlib.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zlib.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $libgroonga_support_zlib =
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zstd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zstd.inc
index 1038fe9eea625d873cd24dcfbce8f31407d0fb51..bdaf5cdf6a3b4f43d7276f710fc44971e69436a2 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zstd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_libgroonga_support_zstd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $libgroonga_support_zstd =
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_mariadb.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_mariadb.inc
index 50ee66d64c65edf59772b73a2bab30a4ebcd6747..5e4a986f7f4bf9d0c0fc0c0966132a126176c88e 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_mariadb.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_mariadb.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $mariadb = `SELECT LOCATE('MariaDB', @@global.version) > 0`;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_osx.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_osx.inc
index 2808e107bc8e6f717618aba70674ae0818221f0f..facfcc929e1ddde297224a01018b193a9f1dfce2 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_osx.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_osx.inc
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $version_compile_os_osx=`SELECT IF(@@version_compile_os like 'osx%', 1, 0);`;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_solaris.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_solaris.inc
index cad909d022a4d75988893d480df6692709612f53..7e942c092138c6d232e40606b79961db3eeb8ee0 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_solaris.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_solaris.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $version_compile_os_solaris=
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_strict_sql_mode.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_strict_sql_mode.inc
index 88dfd6602e96b311bf2e7d74b9c44ca4ffb85516..8a4ac6c986e61eca9bfe742ba1df2e84402dd2c5 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_strict_sql_mode.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_strict_sql_mode.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $strict_sql_mode =
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_version.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_version.inc
index aaf4f8dacc8751fdd084d46719abbb2c097e35f6..8b5ea402d032774db1db780fa18b8d95b7e5212d 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_version.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_version.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $version_major_minor =
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_windows.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_windows.inc
index 179e0329600fcfcec6e2bc61008fc1363b26fbb6..e9fad8280bbf1c6bbd5d4618877da5d6a7feadab 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/check_windows.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/check_windows.inc
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 let $VERSION_COMPILE_OS_WIN=`SELECT IF(@@version_compile_os like 'Win%', 1, 0)`;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_fractional_seconds.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_fractional_seconds.inc
index 88f8594c352a0a88290e3c6a726057a7e43fc504..824e960ae080287bd55f3fbc1fab498ee1062ea2 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_fractional_seconds.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_fractional_seconds.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_mariadb.inc
 --source ../../include/mroonga/check_version.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_freebsd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_freebsd.inc
index 3daf0e7c37919575ad93afab2d59061ed45475a4..1a93d014fee6e91a3958d892c2ba9fb27b7bd17d 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_freebsd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_freebsd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_freebsd.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_groonga_plugin_register.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_groonga_plugin_register.inc
index 19b52287cc1f4aa9b9116d74f90a185c0a03fdde..dafbc34491877c59bc65214dc32ae06516f5acbb 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_groonga_plugin_register.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_groonga_plugin_register.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_embedded.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb.inc
index 5f38c66c2c55de9df50505e25b8b27f70148c94b..df30270a2c2fbef16aacccb3d2f761cdeb356b15 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_mariadb.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb_10_2_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb_10_2_or_later.inc
index e11c15ec7963ef39653371986cb85383e9a3cf2d..6cb565abfd6f1ff397c547252e38a7073f0573e5 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb_10_2_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mariadb_10_2_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga.inc
index b88839e55fe68c290822e015533b4bd350e356ca..98d387b008efc4b8c12580145d85c3fbc5a18fdd 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga.inc
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_ha_mroonga_so.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_deinit.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_deinit.inc
index bd5242c8d348bb85adda5a4e10d4d9360a501350..1b4e85751226a159192ae3a0a72ecf6b8d95ed23 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_deinit.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_deinit.inc
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 disable_query_log;
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_helper.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_helper.inc
index 0d93ce03bd7132f4be9ea1b41f1d871a7aca36bf..83d748673e2b6ec1196c58ed8d2512d62d288c3b 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_helper.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mroonga_helper.inc
@@ -12,6 +12,6 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 let MYSQLD_DATADIR= `select @@datadir`;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql.inc
index f3c2129203e9ce927d55f5133eabaadb8058be73..90e98c56ffa17361f232aba432eacdd6d8c8d4b1 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_mariadb.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql_5_7_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql_5_7_or_later.inc
index cf638a9c73a9627a27531022852ecb3a6b1a5f54..d354b1518a57ca9de7b2f5cb42e3d7bf0208fbe4 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql_5_7_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_mysql_5_7_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_signed_64bit_time_t.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_signed_64bit_time_t.inc
index 90eca856e5e668a31cdb2f25f80c09a33d1bb6c4..d19cca5a0598dddc6a1aa5b66051146d60b1383b 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_signed_64bit_time_t.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_signed_64bit_time_t.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_64bit.inc
 --source ../../include/mroonga/check_osx.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_solaris.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_solaris.inc
index fc89e733f0ecd7e341a1e140c3cbda40988daed3..a4ab246c2b711d72317520de1e0e5751b66f54cc 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_solaris.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_solaris.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_solaris.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_strict_sql_mode.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_strict_sql_mode.inc
index 678ba6ab46047b46fc3f02ce5907556fa6c94cf2..a490b7e880e3378ad8e4d57c49d33a3c160b4029 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_strict_sql_mode.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_strict_sql_mode.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_strict_sql_mode.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0.inc
index 356b2295743fb203db082839bdd47b78364ef8a7..260e5d3cbd939c02c7fe49a10446b220cf39fcbe 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0_or_later.inc
index 1a8883f0478c06646b529008ca9f1f6fad36b18a..35f8fb7ad7ce633fd6849fbfb1bc16e027b999d9 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_10_0_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_5.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_5.inc
index b1708abe195b5f82047c56fb4acfe44867d4c010..a04fe56099de16b9295b65d0d409722e4f4abe56 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_5.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_5.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6.inc
index cfa3c7ac60d4a97c4b3db908fa87f0a77d580461..d23f23e5659dc76e6f3c92e6be8f0ccd49167a80 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6_or_later.inc
index b9481afdee825e4995e23d267f94f894caec2753..db1ac8aae8f07a29f47ea3e680f036c121f734c3 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_6_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7.inc
index 4b65def94636735a45ea0c11414345d264daf8ef..80f15c56d362103d5cbf5c1feb478c9f92ae96e4 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7_or_later.inc
index 1b18b5749ca639a506f500b9f9b21779b4d70c45..f5898b0b9b27ccf91e35f47c08e3650a57e75d18 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/have_version_5_7_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/load_mroonga_functions.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/load_mroonga_functions.inc
index 9ca1b0d116841cd0e9b67407ecba5765a6c5238f..cbcf659f4537a2b143b170686123849968e77181 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/load_mroonga_functions.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/load_mroonga_functions.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_ha_mroonga_so.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_freebsd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_freebsd.inc
index bf0bed98480b1dffaf95c3fb1b9d28112abd11f0..51f783e73ca064c9a9d42f963089018a36a3879f 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_freebsd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_freebsd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_freebsd.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_0_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_0_or_later.inc
index 5fd84f1b2a8fd0d0e096ae1b9bb462728f3f2c26..67d6251be5ee6b30216deb0e1531375c69c62511 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_0_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_0_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1.inc
index b954d1c75f742f99199dbf6f8038bdda6459ea49..7e4c1279c6db43ef21fca8084a0e51171061673c 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1_or_earlier.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1_or_earlier.inc
index 2af6f2adb0d73bab9bb06b758fda2434c5956d4e..506beeb9624c1312189b221410a08cb3f7f71436 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1_or_earlier.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_1_or_earlier.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_2_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_2_or_later.inc
index 5f67748a17978553b77852159a56049c865b4ecd..d40c4ddd5ed1d7fac7f4e03ae05bf16ee5344450 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_2_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_10_2_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_5_5.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_5_5.inc
index 0695b96fa23ec985e9d47d81c94499ca22decc78..974851f7332f94c1705872ccc101851a4258cef9 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_5_5.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mariadb_5_5.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_5.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_5.inc
index 633450e9c0da92ef8f23aaead75dff36a27fcd3d..7446ffa5408087bedb297e71cf33d6df1216f66c 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_5.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_5.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7.inc
index e984d60f760940342581ffd44e9172af5496955a..6eaa60a44de0a6099ffb5f48588828bf3789b78f 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7_or_later.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7_or_later.inc
index 075e60441970d73cae22fbe7b5dcf3122d1bb9dd..599831e310b94f0bb4531bf4fe584ba533ffd25a 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7_or_later.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_mysql_5_7_or_later.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_version.inc
 --source ../../include/mroonga/check_mariadb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_osx.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_osx.inc
index c29795892114a9c76541021d22d9a84c9e7d739f..2c1da974a52dfe9f6e8a98d2e2f57664be3546d9 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_osx.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_osx.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_osx.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_signed_64bit_time_t.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_signed_64bit_time_t.inc
index 1ba1d09be60db901560af3336ef38cd9728e3098..cc06b5291168ee437ca74dda9b8396d9c9e3cde9 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_signed_64bit_time_t.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_signed_64bit_time_t.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_64bit.inc
 --source ../../include/mroonga/check_osx.inc
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_solaris.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_solaris.inc
index 6bf7422492350b57f0aae12ba1c9ff4f86e6eb3c..b79188e4de1550eba2a709a25b811b863f9af8c7 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_solaris.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_solaris.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_solaris.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_strict_sql_mode.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_strict_sql_mode.inc
index fc0d665b3022ca735348070be0c2298d1a103f48..8bb15b03c3703e18a211507dbd2eedd6f345ae82 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_strict_sql_mode.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/skip_strict_sql_mode.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_strict_sql_mode.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_lz4.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_lz4.inc
index 249c6b59b17de2cf1838802ae9900d0411338643..40fc5978654edc045e83bf801df2ffc49752af95 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_lz4.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_lz4.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_lz4.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zlib.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zlib.inc
index fd8b9e998a03823e4531ed1daafca29eca3a495f..9d0ed6c11dad0fbaa0594be9a6deb46bdf916f94 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zlib.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zlib.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_zlib.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zstd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zstd.inc
index 0e7ca4460205c408b5eb52a5de5188184df551cf..d09495bd3c69ce8b676c79015a92bf4688355964 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zstd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/support_libgroonga_zstd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_zstd.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/unload_mroonga_functions.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/unload_mroonga_functions.inc
index cbe345a7e045f81c6afd2b7a0623d19f75a727b8..e72baac25b8f396b616f2df68db2415caeb479dc 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/unload_mroonga_functions.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/unload_mroonga_functions.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --disable_query_log
 DROP FUNCTION last_insert_grn_id;
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_lz4.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_lz4.inc
index 210058edc3c290ca528e6376f46bfcbf1cbdb20f..f82fc3283ba0be2e218bd5597da7e90c347de7b1 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_lz4.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_lz4.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_lz4.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zlib.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zlib.inc
index cb00da15a879092c5adec715d383519f7ba1f91e..c93038b0bc2c47ed0d04d19964255a97fc2b6afb 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zlib.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zlib.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_zlib.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zstd.inc b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zstd.inc
index 037e66a9e7c4093b762890e5dbc98bfa22a164fd..b1c081e34e71f869970c37194ad442889602c4d4 100644
--- a/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zstd.inc
+++ b/storage/mroonga/mysql-test/mroonga/include/mroonga/unsupport_libgroonga_zstd.inc
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/check_libgroonga_support_zstd.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_after.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_after.test
index 4e486b83cc09cdbcb4b8c9a4118f1314fa391da3..0e348f26ba478372fa23cc759f964949a7a811f2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_after.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_after.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_first.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_first.test
index 5912ed3fcf04a3b4a11def2767f7fbd198162ffe..4375a6f1f0d687877bdcb9fd8d03c8f0e85e9da8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_first.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_first.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_comment.test
index 18fa2f3ef1eec6d57683fcfdb67bbba4ab913162..ec9e3c9d4b9d45131ea6e92d01754e0d7dba2501 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_parameter.test
index f84c931c0107279386d098607954ca2b7277e8c9..e3b7df72cf998d5b8ec193dea4d6f432c3d34888 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_flags_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_comment.test
index d49e84cd5fa3e436bb3f3fb037e85f3b880dd4f4..964426b44bfd912e0e8cd5a4759938687e46d580 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_comment.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_parameter.test
index cc208a20872f2a76578d0e05bfd0eba475d139cf..0f92c024b7c33374d2243c7f4a8c88f10aa2b7e2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_groonga_type_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_cp932.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_cp932.test
index 18836127238a755c52004356dd8571df20dd4622..0516186ba17a0c902d5a9ea2246e59bcd10dc840 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_utf8.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_utf8.test
index 88ef12498a7314ab6d745a8d916ff7e4cf700d57..0ed92333e291131e798c74f672d30b1d5bd7e27b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multibyte_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multiple.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multiple.test
index 1f4fa4663b15b64a2458bd4a78b7b826daf70542..a76869aca5da2cc6983b65bfd07d61b0034153a5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multiple.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_multiple.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_plain.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_plain.test
index fac1f045db15a7721a5c4b239edaf6338ca5000f..3e21daab308c1ff9644b895752e93ed4a4f84aaf 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_plain.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_plain.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_type_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_type_comment.test
index c198358146b8ca7d6f38513c2fd75881bb6e4369..54fb986a24feecc6d11b5b74c98667ecc703ecde 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_type_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_column_type_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_token_filters_one_token_filter.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_token_filters_one_token_filter.test
index 1440c0b78aabbc14ea5d8e39b5dad2f5d085fd47..8a63885a8e7f23df5bbec8357962a0b8ea9d7b2e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_token_filters_one_token_filter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_token_filters_one_token_filter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_duplicated.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_duplicated.test
index 53d4b21ff5380b43c0ad43854c603f965e708b2e..bfc527c9bcc6be31ab519a73cc21ff1668364ddd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_duplicated.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_duplicated.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_multiple_column_duplicated.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_multiple_column_duplicated.test
index 7bb65327f791e2bfa731f7d2db021638ac645f03..dccba803ce1bd10dbf90c6a7968c65fc9d0c450a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_multiple_column_duplicated.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_index_unique_multiple_column_duplicated.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_key_multiple_column_with_data.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_key_multiple_column_with_data.test
index 7e584131b3d55e7fbef8367998431aae24b5462f..a7d9c4a4707f79c7492d31026b3977b530211d03 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_key_multiple_column_with_data.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_key_multiple_column_with_data.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_primary_key.test
index 7ae72d672f6a26b0b245af5d3bc7eacf36ac9ebe..a1cf13c2720187078a4b69f256f60f7152458b23 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_add_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_comment_not_for_mroonga.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_comment_not_for_mroonga.test
index 119099c435099556242242b1db0afbc16912dd46..3f7aea2a2199ab1d8b3e8ee09a486db08055baa8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_comment_not_for_mroonga.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_comment_not_for_mroonga.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_have_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_have_index.test
index c01f7a95754dc021492fe5445d41506b9cd40ea2..0fb3f176146331f3d37418c153781c4d160dcbc2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_have_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_have_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_after.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_after.test
index e680e6e200859ff0dbf36f5ccfea937afaa6111b..70cf4d149cfd48a14f9db4ed34c9d7bdf466ec55 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_after.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_after.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_first.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_first.test
index 20624ad953700eb6ed63cf3e10bab4b2a08b5b34..b959d30ea8ebb6faa5ac3e6eb1e2aa9ee8dd0597 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_first.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_first.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_multiple.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_multiple.test
index 7d982ae422e530637d9cffa625a9974127af4097..5de6368b0c490a399066e39fa3e5a3b0d582eb01 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_multiple.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_multiple.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_no_order.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_no_order.test
index 2394be86333747e53c02831ee033d96098918285..3e02a64488f52a73f34b703f2dbacaaf2a0ac36a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_no_order.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_column_rename_no_order.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_decimal.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_decimal.test
index e8e0bd416f9b7bc5ac6587ff52a69cf8366f367b..d8775f07b319740da48ccb9fd19f2e649159f4e7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_decimal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_decimal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_fulltext_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_fulltext_index.test
index f8c4dfa3400ca4acf8a7f5b0e0b2a4321c230ebc..b9dfdddae4670ededd359d3c3515c887a7323bf0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_fulltext_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_engine_fulltext_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_token_filter.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_token_filter.test
index c1bf17ba439dcdca6a72e7604850f263a0794b61..8efaad2a4cedfbb7cff31005c4e801042e8ce164 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_token_filter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_change_token_filter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_create_fulltext.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_create_fulltext.test
index d1f8308268a719f914229c19d378511073bc0c78..ed3d4a132a4bcfc11bdacbf720dee633190fb2d4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_create_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_create_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_table.test
index 17b86b47389f6957588fcacf62f9f0ded666d61d..83ce2ca786e969a1c6495c41b7f1a6f09289325b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_ujis.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_ujis.test
index 028fb33f1e36f2a6f65b0aa560ac2dfe50c2bf7b..f612272f2b80f0c5a7abfb51f2e309163c2402ff 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_ujis.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_ujis.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_utf8.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_utf8.test
index 00015dcfacadf03c612da1be5a129e32ad601de4..999415b12ae076b5d58a7575877115dd559d687a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_fulltext_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_multiple_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_multiple_column.test
index 5760887e7823db9cf214e65c717618495abb48c2..d0e7e0e83e6c747a70382aff2682ff1bc58a7a11 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_multiple_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_multiple_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_normal.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_normal.test
index 69dbe23cc24d76a025694cc235b39dc6e8fb8576..e8140ff57dbb8c6306f2452e628491692e1902f4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_primary.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_primary.test
index dce2ea51397a5536756f091962699e3cb80bf22f..390afd984df802d9df7802e048aaf45f509c4676 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_primary.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_truncate.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_truncate.test
index 00f6d30a5725a8057c7e8516ff34fb67483ae74f..8b3e09283558897c4ad56ef71a7ecd24ce1109fd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_truncate.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_truncate.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_updating.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_updating.test
index 020579106e1466b38689223ce360472dc5379476..94a3de4b1ce66d11197d8d174ade987ed81ac9f0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_updating.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_disable_keys_updating.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_multiple.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_multiple.test
index 32da1b3a547a7f4ce7708ad54f07f87f19da66fc..d640249dae021d57e5e869ada03b525b1724221f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_multiple.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_multiple.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_one.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_one.test
index ec5735f06723294c18718b5e7a502f6d5227161d..9544eb90ae200644a70ee496fb72bf6efc839a40 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_one.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_column_one.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_key_multiple_column_with_data.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_key_multiple_column_with_data.test
index eb80d3036d346230494b504e659abfe4ac4a2b30..8596e18faa12c15cc435eb72310524d02422ee53 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_key_multiple_column_with_data.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_key_multiple_column_with_data.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_primary_key.test
index da06f680d68ce4c3df4e33198f5b14baee022b7d..e12e5b8dd0e2fe228edfddaf209e8f7aee3da680 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_drop_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext.test
index 08d84f7b552b0d80177890b7684c3ebfbd9799a3..e7f9f548955d6ddee36324ae57155b9b9136a3cd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_table.test
index 3309f60a3d9cbdcd00da9e426a0fc5605c18332e..424e51adaaa905478297520db15e38b249155cb7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_ujis.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_ujis.test
index 2f3b61efcf366c9e6f3905c5de200a6ebf61bfa2..c5889cafe152997d3722309907da748c696cf023 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_ujis.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_ujis.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_utf8.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_utf8.test
index 08d84f7b552b0d80177890b7684c3ebfbd9799a3..e7f9f548955d6ddee36324ae57155b9b9136a3cd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_fulltext_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_multiple_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_multiple_column.test
index 1d073dc641faed221cf49443a7ece664bf5b34e9..7ae83d847b0122976454fc6912ca33b11741d7c9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_multiple_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_multiple_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_normal.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_normal.test
index 870b1bb60981f7aff073e43cfacd8ec26eea8188..012fae91fa633349a5273dcef385b3c1639f40ec 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_primary.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_primary.test
index 34ee3fcd2757bf9227869094868b51ff01d0c092..9817aa94e79cbbdd7ae928659d19e3048b19c46f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_enable_keys_primary.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_no_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_no_primary_key.test
index b349411849fef671c10203047b18b7e5b654619a..41fae0e7f44ba0a18dbae77e82c61a6997d4a886 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_no_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_no_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_normal.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_normal.test
index 6316eac4fe170b3fdc34e3e4b229e90447049d1a..dab39fc8e7f94fbb8480834f39cbeb0aa0177dc5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_table.test
index f4facdcb72f8051c6cbadfe5bdf57df99ac68ef4..fd2a600896e0d4c6cc649497bd6cb4e2c4546969 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_add_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_drop_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_drop_table.test
index 165b71a86c9bf67d19b4c31d72c621e7f93068d3..d59e24f47533fda1f7cb17d68c8869eb61e9f25a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_drop_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_fulltext_drop_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_after.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_after.test
index ce1e52efa31c3f5a180eaf4f7dad4c23af433667..fb967163a5c41674b41b862199258887c68e13e3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_after.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_after.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_first.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_first.test
index 22c6b59e0220f4c7ab813b968ca5a994e4d426d2..86d22e3cef889df21f53167767c00d26d7e8ada2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_first.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_first.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_no_order.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_no_order.test
index eed22d0669036f0e995ea3a48bd7e16f01ddd278..d39b4fc905c9a9aa2e1a83e16670a3dbdd5b970d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_no_order.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_modify_column_no_order.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_recreate_anonymous_index_at_once.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_recreate_anonymous_index_at_once.test
index 77d0bc741e2b68b76f228d7d1c0d12d91a94d418..93210e13d17a634596e7742ec8a63954810cb4b2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_recreate_anonymous_index_at_once.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_recreate_anonymous_index_at_once.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_rename_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_rename_table.test
index 6c15161ed2296a177712655a16d44dbb595bc592..1102144bd84d19a3a2f45cc7f1d61defc6398cad 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_rename_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_rename_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_spatial.test b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_spatial.test
index 09e0ea8a11891c7f8b795a269d2eb687e6d0f916..2581fa7c4bcb7a31013e40ee34934234ce7d31df 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_spatial.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/alter_table_spatial.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source include/have_geometry.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_TODO_SPLIT_ME.test
index f452e402d817a2e60e9f148d4e552154087332f6..34a517f95908efd26158475359342303e63d98a4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_table_param.test b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_table_param.test
index 2d0840ce990db9bf55891498df60e65f03b91567..f5de201dc5e24bb8275c2f109bc7c6d3e6d1a509 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_table_param.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_table_param.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_text.test b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_text.test
index 2d854ec35b4bd5dd336a394b3a0fbfc03505e347..a23e09decb0fdcff57401962fa869e08332c63c5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_text.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/auto_increment_text.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/binlog_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/binlog_TODO_SPLIT_ME.test
index eff9259a7bad64114638747c86cc2c7bb6e9db94..281617e31011f02d2bf458a862502e16f112c00b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/binlog_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/binlog_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_log_bin.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/check_table_broken.test b/storage/mroonga/mysql-test/mroonga/storage/t/check_table_broken.test
index 77271b4f16987541ac3624ffe2dc6552a6fc2ccd..d438a912ae28aef11de2d023818734fc7f02e631 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/check_table_broken.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/check_table_broken.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/check_table_not_broken.test b/storage/mroonga/mysql-test/mroonga/storage/t/check_table_not_broken.test
index 1460732b29a143fc65a65f54e0183aa7af182621..c3f24494e1fc30c6921dc0e466ca9b191d3b3c94 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/check_table_not_broken.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/check_table_not_broken.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_general_ci_french.test b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_general_ci_french.test
index 101c16e9675cc2c8c95f6e1224aeab2fccce4d27..1139d5eb94741858a84c175c94f3504026944610 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_general_ci_french.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_general_ci_french.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_french.test b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_french.test
index 2c28edb332794be27ece0b40afd1a7734c3ccc71..e0480fb5ce1bc28fc46d8e04f6b9ae4c0f9ab838 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_french.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_french.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_6_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_japanese.test
index 1d9998eeed3a265521819b828669cd5973fa4e2b..a23126c328a2f3dee3be58c7bfe8c18e6a45c7f1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_520_ci_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_6_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_french.test b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_french.test
index f69e5594ebd6cb1dd8f58a397750dea86d2807ac..2fbf5da88bda1ec4035fcd897395462a76c1b561 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_french.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_french.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_japanese.test
index 5d48a1a6201a08b3d32933903791a0af122aabbd..bc598fea5af2f8bb773934aeed61b4327e4e49d0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/collation_utf8_unicode_ci_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_index_not_for_mroonga.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_index_not_for_mroonga.test
index 42c5e1d22845f29ed54f0c0445eade889f1f0f69..c21ce8142d6b2edefd7475f8e59fdb35e17dc1e5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_index_not_for_mroonga.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_index_not_for_mroonga.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_normal_not_for_mroonga.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_normal_not_for_mroonga.test
index 6761869d4ff55b11835f7a711c92540cc070013a..f0d4aebfd1b2c99602aa7a7d7c83ec7259c4c4dc 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_normal_not_for_mroonga.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_comment_normal_not_for_mroonga.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_with_index.test
index 8645a2d7e5fcf3b09fcedc8afb9b15c28fa45340..ef53212b7da6cd0372136881a2574c861b4d894d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_without_index.test
index 21dcf156e43cced0a792ab6486ccd9e0cb62ce98..63a2a39d9ee5773937c24fedfd47b01c1a3522e6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_zero_date.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_zero_date.test
index 552a2dfb635539139a83f3b9bc83e80850d43981..d8f0dd4476e28ed4083a6492c98153200dba1a41 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_date_zero_date.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_date_zero_date.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_2038.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_2038.test
index bf08b878e1e47cc0fe1e6eb8f534343a63119190..bff42d43df4b7fd9969002ade3d6e1b0480e645d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_2038.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_2038.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_before_unix_epoch.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_before_unix_epoch.test
index 71ee07139cab9bae66aeeb113e295652a12172cc..3d2b2715904515cebaa1584dd81c434537152fca 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_before_unix_epoch.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_before_unix_epoch.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_max.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_max.test
index 5b25cf38e999e0546930c65a7305f6c237cb0c38..c0e7ee9845010d30bf9443c8312485f472a4fa30 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_max.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_max.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_out_of_range.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_out_of_range.test
index e93e38cd357d112cd0463fe694fd3ffe113ba94a..36c7d371eb599f8b821ab2b4a0f8bcb715c6d51b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_out_of_range.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_32bit_out_of_range.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_2038.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_2038.test
index af04133ef2c124f99d4cff8abb79e811ff4db223..9c2a4d92250544380e803f36483090b86edb249c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_2038.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_2038.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_before_unix_epoch.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_before_unix_epoch.test
index a3e355cc1ea2c70958ff03683379a78cfe26022d..942a8cc5a16fd4064e3314179860fd95321dedd3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_before_unix_epoch.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_before_unix_epoch.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_max.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_max.test
index 3f4bb7b1e2398c9e605b103e867f4ec7c1cb9ecb..e1df881204bdf65e22a04849b9cf1fb53d04ac8c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_max.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_max.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_strict_sql_mode_out_of_range.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_strict_sql_mode_out_of_range.test
index 47266e017d720be8a7ad2c6839edaa8867e124b9..ba01e892a5513ee8144ac680c9ce5c25f3f2ae92 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_strict_sql_mode_out_of_range.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_strict_sql_mode_out_of_range.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_5_out_of_range.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_5_out_of_range.test
index 23ddc373ab2737e4509aacf48648c02365f79857..e311550548ac35da17d343a26ab16e4c678c8e5b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_5_out_of_range.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_5_out_of_range.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_version_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_6_or_later_out_of_range.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_6_or_later_out_of_range.test
index 55457c167fa3f1af2c9a9b9715bafc0965fbad21..cfd370aee2867a3ed06806be0f49fc6b7b63b93c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_6_or_later_out_of_range.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_64bit_version_5_6_or_later_out_of_range.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_with_index.test
index 94eb237f1a2821db1fb5f89e86fb712678cbe75f..7cf8be3f80fdfd367b6cf6fe09ab5ed7324b34b6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_fractional_seconds.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_without_index.test
index 5dc033f1c531dfcc8d5c4166923235dc7d73187e..2b3865f3838019b1a4ed7f6ca99e2284d62930b9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_fractional_seconds_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_fractional_seconds.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_freebsd_before_unix_epoch.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_freebsd_before_unix_epoch.test
index d66ed5617b83eebc0d17a67a28a589617f938a89..cebffc7e843d63d9a8461517f3d4f6189f8af9d7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_freebsd_before_unix_epoch.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_freebsd_before_unix_epoch.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_freebsd.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_date.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_date.test
index 3382a1c1e68b7388cdef115b6a7c4860fefd7608..6cd65be57e7ad1817f93d212212739a7d6497071 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_date.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_date.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb_10_2_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_month_day.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_month_day.test
index f95b0947fc24edd1d03314d29a70cb591151fd39..8639e9ff25b71f7322de9ea6a8cc8225d9849a10 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_month_day.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mariadb_10_2_or_later_zero_month_day.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb_10_2_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_date.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_date.test
index 2b6a05915d744d8ae8a860868960338e2623b959..e4ed57dcfb25f584af5b3c74aba801f91438aa14 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_date.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_date.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_month_day.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_month_day.test
index 4419231a93ebea4d846cc9dfb5b65198abdb4d5b..e2fd01b190952710dd528bcb1eea6c070fa7b84d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_month_day.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_mysql_5_7_or_later_zero_month_day.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_null.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_null.test
index fcea5431330fd96cdcc19ddfded86d9166f14dae..e51a662352b4289079fde0832d5f68bd453ccf6c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_null.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_null.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_with_index.test
index bf415b177f85943b6352cf6fd5d377e7b14ca13e..f93bffd9bc7fd4d639ccbce2fe80f23bde247326 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_without_index.test
index c6c9edec5de70989efb3a71fe75284d5552b4a69..0df1be2621bfe62e0a43ccbc33a4ee8e3bb29414 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_date.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_date.test
index c5107e6c8851528f5002654bfe9c507f4a66923d..b0c0e11ab309eb0808a68e1851bacd6484316c7c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_date.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_date.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/skip_strict_sql_mode.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_month_day.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_month_day.test
index 12b5862412e5490dfaa34671626f446108ee7b96..f3ec94656c799c505a3e5c13c2d9d5c7aba96fd2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_month_day.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_datetime_zero_month_day.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_with_index.test
index 03cb6b64d2f60bff58897aa4a55b584d5693698a..cf2010889ee350a582742a4dcab9bf2dc64eda1b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_without_index.test
index ca59d052e782a0fc1feb39948b1a1fac5d76901f..83fd7564307434c19c40a8c33fff3e4446790256 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_fractional_seconds_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_with_index.test
index 14303454af28c65272ee23ba20276ff6bbd480ef..315846ccdc621d50bcba9a0746fe0695b2a63ae1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_without_index.test
index ef8609a78adb51186c577e1b1ebfce6d230f6b67..6924885f2d777f1724c198e67e155e10ed0bed5c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_decimal_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_less_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_less_with_index.test
index 6a7a5bcc37ba6afad79fefd6e2195f079f632b83..ae85ae7ab3bbb2c7bcf195eff8814fcf3e0b0e1d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_less_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_less_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_many_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_many_with_index.test
index 92eabc11d61db14c4d4eb348c92ba81b4ff3e8de..91daafed4867a16bbaf97ce5528228851d8feb45 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_many_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_enum_many_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_add_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_add_column.test
index 8561688db3a37f6e1179183fd77841cea987cd17..b50debddbdb112d02fa329376e19f87b72ed96e5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_add_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_add_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_delete.test
index a54ee0e26a92323ce036452dab35bea953733d98..f8e658f005b49c0ea86a25eff903c9024f8fa73a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_drop_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_drop_column.test
index 0bd963874699df0ebdfefbf83b03dc84188c0382..342f954b474d672e7a15ca7a2124d7590eac8862 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_drop_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_drop_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_insert.test
index 841c2f444529814733d9a23492fe9413dbcf87d9..009b519a654fd542655fba307b13ea42b7a62f0d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_reindex.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_reindex.test
index 725c32384dfa201267705e1505b75abfa640205a..18c624a3a372ed8599bb2aa7cca800a5548eead0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_reindex.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_reindex.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_update.test
index 08969fa571678cbd514c912b202b75f022ed2c94..07b987ce21d97e380db96e8c14e6a147143e0e91 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_stored_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_add_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_add_column.test
index 80437aa0e296c83b9a392ece7f4b4179a1e4eae5..ffbe2415005cc3d4b9299340a133a9ba7a00e7e9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_add_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_add_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_delete.test
index c36913cecca08ae132138bb82c07d6f0973f01d4..8e110a234e68570bd21afd8502349b182a36fad7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_drop_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_drop_column.test
index 0946b1f30ece793625cdd4c35377dbf1af63c717..2b723d46438e54196751c2e40fa6f325baf1e66f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_drop_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_drop_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_insert.test
index 90cb52476932e8542c26201968ab534d7e5caa6b..7cb6895afe0ee3831122c28adb85142ccb1c65fa 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_add_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_add_index.test
index 340c5e70fcd33a995ec43af4e2a2cf46b89f2ee0..ca9bb7a418103584bafb10bb7605a1e53b505ba3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_add_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_add_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb_10_2_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_create_table_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_create_table_with_index.test
index 480cc1f7b94ae1688bef79275a2d9c98f099bbcf..49bc21c93e72dbe8cc5e45500df5b0976e914cf3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_create_table_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mariadb_10_2_or_later_create_table_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb_10_2_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mysql_5_7_or_later_add_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mysql_5_7_or_later_add_index.test
index 7c953d30d14fcd02d1d2bb2dfacea2e0b19496dc..c624566c22b5317f9ec69720e8bdbee59b37ec2f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mysql_5_7_or_later_add_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_mysql_5_7_or_later_add_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_update.test
index 68d97f990dc69b94da008ff563678602ec2e706f..76d80420ec43341e731d224860fbd970ece508c9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_generated_virtual_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_1_or_earlier.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id__id.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id__id.test
index 39031cabf1508c564d176fec4eb216e846e0e937..17a69b3e934c4c8ed786df1fbf2630fa94414ef6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id__id.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id__id.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id_invalid_id.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id_invalid_id.test
index 6b4c637a3598bf6279fa09131e3c3287d4a9fe7e..1d30d0ec7681bb836cdeebd7588fc70763c6be71 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id_invalid_id.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga__id_invalid_id.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_other_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_other_table.test
index 4d4a0f5a673289a4cf23bc5ae93df28527c55af1..d171d062d16dd7fd19f80d5ad265c34dc5fc3351 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_other_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_other_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_vector_other_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_vector_other_table.test
index b96fa9b03b3e556444496b2bf4300322028c9e49..c23f35eef9a0d3d3a4780ffe94e754f6f6034ea3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_vector_other_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_fulltext_vector_other_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_int_other_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_int_other_table.test
index d3caeba70bf49ef4dc9a45849ac70a988c5ff0ff..9e128a005bb9feb3e24378c5ff7d71d23cc5b2ff 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_int_other_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_index_int_other_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_reference.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_reference.test
index 59471f7e97bec5fad8c7d71de715d034720dc46b..359dbbda98d0d55c4fd5a9144d969b0608a17e8c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_reference.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_reference.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_lz4.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_lz4.test
index e0ab1ad4c1b3ab4676bd512f5b998273911acb24..f0362241130cfc0f0b6bc6211fdae33499440a9e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_lz4.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_lz4.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/support_libgroonga_lz4.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zlib.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zlib.test
index 7d5665b04f5c047ae8e4d29852cb32c376bff4cf..612b2d6a05a4323ad852b8699b5509a2ae3952ed 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zlib.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zlib.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/support_libgroonga_zlib.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zstd.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zstd.test
index 99ac2cdbb6bb64d17d85fd6ff7b940bd70b9b140..74b79210a149cf05f0693b3e74e8cce63e89b324 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zstd.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_support_zstd.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/support_libgroonga_zstd.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_lz4.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_lz4.test
index 4d0a80ad5d59de8c0520d656454149791aedf408..73f154776680f8856bfe679d5e784a26d79d3130 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_lz4.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_lz4.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/unsupport_libgroonga_lz4.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zlib.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zlib.test
index bbaaa51be406d7d6bb1fd6efb8ae2bf0f7877e5b..6d97eb5a536c5db9bb16577963d484042d878c84 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zlib.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zlib.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/unsupport_libgroonga_zlib.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zstd.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zstd.test
index 6b5eb5cd86f0d3efbc40178f94182ce8ea5e682e..b9a5dce550ab29f2934597a8d32aa6a1fa323924 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zstd.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_unsupport_zstd.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/unsupport_libgroonga_zstd.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_with_not_for_mroonga_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_with_not_for_mroonga_comment.test
index e18f17b7c9514fab3c5e85edbf164d5997e1b6ce..bd5894f6140a255260fd6e1e5fcf90d15d4d3e02 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_with_not_for_mroonga_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_scalar_with_not_for_mroonga_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_order_by_with_function.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_order_by_with_function.test
index 3675db38c486e2ffb8ef32006a4e63d15ac112ad..1787c111027ac7b4fd0d3b68a7c7ec13dca4e03d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_order_by_with_function.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_order_by_with_function.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_reference.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_reference.test
index 9b6c8d3016f614d096fff4226f465f058c118911..29ccc4e8ac6d7d47d6ce09ff488a70068e7a31cb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_reference.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_groonga_vector_reference.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_int_with_index_zero_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_int_with_index_zero_value.test
index 038d29c9e66e917524d5665b54b088656786ad89..758f01cfc9f5e9368a47c7f8fc06a77904c4c54e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_int_with_index_zero_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_int_with_index_zero_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_json_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_json_insert.test
index 9bba55b0b92cc02800d31b26288f474371c3ca3b..9e031a3a9c7b2e40e22359b09b183eddb7472038 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_json_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_json_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_7_or_later.inc
 --source ../../include/mroonga/skip_mariadb_10_0_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_cp932.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_cp932.test
index f7eae384dcfde6cf0047a3ac2a21afc5ce343599..be26045ab8999badd727fca7073f8789bccfe575 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_utf8.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_utf8.test
index 6d6c44ceba1c1befbfe25db4ac8b85c54b168414..efbaf31fae5638606d37379b9002da6d9aa1e6b9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_multibyte_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_16_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_16_with_index.test
index a4e229dd17a53670eafa5400d03c23f10413bc1e..c1f7fa3df3df9f0a59e384e3d31f69335cfa3812 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_16_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_16_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_24_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_24_with_index.test
index 5d7b8c4dff8f3ccca7358caedf3962b8800348d8..0b02b5e6b168fae73498ac35024db8f3118182cc 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_24_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_24_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_32_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_32_with_index.test
index 3391fb7b740b79878680b293a070ed6f2627483a..2dd39e8d1f0e7247c1223995c36103b4c0bd918d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_32_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_32_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_64_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_64_with_index.test
index 219bb085c84cdbce91e5e8013e32b39347eaa261..117be8469f7cf9a793eea5c1414b1e3fc54670f0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_64_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_64_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_8_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_8_with_index.test
index 79d56f4e8e6ce4930dfffeb6b4b7dac60738ddb5..001f4a4a557e4e7a07a502357187b52f2c4a8034 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_set_8_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_set_8_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_bigint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_bigint_with_index.test
index a031cab8767a402c9a0fc8ac525e72a6e5a17f2c..4587be4d365c2be3513f87ebe839e67739a448b1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_bigint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_bigint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_int_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_int_with_index.test
index 287d0407bdf1b7933b4a8e28b04ac40c1d5afd72..18f52ac08badeb2ab8826a5f20bd2bc7cbe159b0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_int_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_int_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_mediumint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_mediumint_with_index.test
index 704cc4d41e3b385253197307127294c6cab33f60..0d37290f598291420ede42829d75db96302c0f7c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_mediumint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_mediumint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_smallint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_smallint_with_index.test
index 2200efc71c49f55be91022b898dc56f9e5f10761..ba6b43881b470a50bcf360bba32bc409b214a568 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_smallint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_smallint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_tinyint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_tinyint_with_index.test
index 33f07c4747008236b78d193b1282417e31912745..5978564a96974c6b43825024edc9c2dae646ba7c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_tinyint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_signed_tinyint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_time_fractional_seconds_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_time_fractional_seconds_with_index.test
index c8e6dddf4bdc7d9572f4cb203b7d8e7c89eab187..05afa745487b9cc05a7736c70b1e328c40c7792b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_time_fractional_seconds_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_time_fractional_seconds_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_fractional_seconds.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_time_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_time_with_index.test
index e950411cba62f3bfdf0aa2ff40ca5322f6688ffe..b6de040491785a2586e333495d8e89c857c65b17 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_time_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_time_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_fractional_seconds_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_fractional_seconds_with_index.test
index 19dadc2c285df70412b622b07f8b1e82aa46fa98..c4f1980a1b28f0edc8e9c948c5cf181ae803776c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_fractional_seconds_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_fractional_seconds_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mariadb_5_5.inc
 --source ../../include/mroonga/have_fractional_seconds.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_with_index.test
index cc063faa6749843df61496600fe0117f2d472d2f..1410b4c39699870e0ed3f308e8abeb7d4d9d20b3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_timestamp_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_tinyint_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_tinyint_without_index.test
index de0cbedf0ab5b59494769d457ea657bcb7497040..08884ae5f4a779f499d18b54657a96c4ced75e9c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_tinyint_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_tinyint_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_with_index.test
index b7cb86943016ab629fc7b21cee277ec616ca6393..dee9bcb2ceca91d1f2a8057c91a380ba852b1b2e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_without_index.test
index 912f86fb71cd0d57aaf17fc4485a11ccf4a60c2f..be97f2dae6505a7153692e227a53c9dd4735b986 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_bigint_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_int_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_int_with_index.test
index f20348bee6cf8ead20a89f6a5912293fe8aa0e20..52c98463d8207e5170a9e64d956657380c7ddd6e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_int_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_int_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_mediumint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_mediumint_with_index.test
index 44fb656a93b3e15daa04016e8ea4e593cd04c3c9..940695ca19b6b7c64ab37f91240fe485b206e70c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_mediumint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_mediumint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_smallint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_smallint_with_index.test
index c98569d197402bea5eaaef26c682214f1cd2db52..2e9414495126affc197ac00dadba827bd31307d3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_smallint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_smallint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_tinyint_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_tinyint_with_index.test
index 9414eee1f025c02374102a8a0c0811ec0449b9cb..72d436b10a9cdf7edb88ea2a65ffd4f58070dac1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_tinyint_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_unsigned_tinyint_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_year_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_year_with_index.test
index 82004e1971df101049ed3949fe355daae7d9749e..799fcb29ba5e170e415a7b6cecec1e55fae48e8b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_year_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_year_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/column_year_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/column_year_without_index.test
index e7530cec03475330f967cb6f9aa82e74570b75ff..49aa1eafc32951d8521a8693084ef617d7a61363 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/column_year_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/column_year_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/count_star.test b/storage/mroonga/mysql-test/mroonga/storage/t/count_star.test
index f57d40fd57b3feb73e6d75226b9c3516bc10d037..f20499efd398e3766cb2aa389efeb10c68a7d01a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/count_star.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/count_star.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_database_name_slash.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_database_name_slash.test
index 1913469353faa05fe3bae8608c6c67d7e480fd1f..52a1162b7e814d258cf2ea4cd36cc52a714c8991 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_database_name_slash.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_database_name_slash.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_TODO_SPLIT_ME.test
index 1f7bbf12bde7407c56823035f0a3af63222b3702..51eb67ec05ac255bb4ff024d6031cca415826628 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_comment.test
index 908a2fcbdbb83b3e9bf2a6f6db4ca77732b21673..6bafebd8b9c3068e1cf1bc09825ed4c21d7be76c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_parameter.test
index fc66ae12fa0f8d93adc0f07ec9fc7e4083ba1165..3baa576a9ea831db650a5319dc375a4affccadca 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_flags_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_comment.test
index b39da499d5e3bdd601beb9feb33cc495ac1a02b5..28f0f214935489528e9ca1db93144bddb50e11d9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_nonexistent.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_nonexistent.test
index 0350a299b08f611a2d91b258ffc0327e0f579b95..e27f169ba7b1bad45eb2a705599d8a2d42c25e63 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_nonexistent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_nonexistent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_parameter.test
index d208e62e8395e28d29750b05a9472e06f68ddbb9..a664287289bf1eb3d596fb6dbc623d8e951e3612 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_groonga_type_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_comment.test
index 77965a70c9976ad9c26ba40cf9d992f51a1ee5f7..bd4b268b081c4ed8e75e6f5b0ec4a9989ff7dd81 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_nonexistent.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_nonexistent.test
index 46becfdc2cc961faf816a162cab06b948a717353..08792d20ad6ed04126c9275459fe2281bc5f902e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_nonexistent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_column_type_nonexistent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_comment_normal.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_comment_normal.test
index aecfab1f6c3dddbee589e3b37fe9f54ec8306c59..8badcf8429e04aa616d584d0be953924095be4f0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_comment_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_comment_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_default_tokenizer.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_default_tokenizer.test
index c5fa91c5c9c9a4b9beb1fa55a69659415e0905be..ade4099a8d597e7d3e0d7ffb3da41ec7cdf0c5bb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_default_tokenizer.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_default_tokenizer.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_comment.test
index 568c9ac78cf2e70fef4cad249bee15a60cb957d6..e0273d1715a53abb1eb4dacf34cdb8279e8911ea 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_comment.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_medium.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_medium.test
index df509ed0dcd72fee94607422b60b95b5a3e80bef..d1abc4a0d9824c65b3e29d9bf277ee468a32b8ae 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_medium.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_medium.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_small.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_small.test
index fc37e28eb7669bc0f9e46125c0861b37fab357e1..a519eca40e455592b8ba8f8006d77c83b3f4eef0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_small.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_index_small.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_none.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_none.test
index cc54ab34ad7678d32da5878c7b52b0fa8cfd1f2d..b5615ff4ba40bee76959d36eb68059cceda3175a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_none.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_none.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_parameter.test
index 0c87494e3c70f1904a4acba59a152f43758cbaa7..5524c7ca073eb1a2466effad3781dfa55aa9f98c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_flags_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_none.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_none.test
index 7005643546f4e49b9c95ee2e1569f3d9fce3fde2..3852ebd1002aa511e6b26aedeabea618a49b5615 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_none.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_none.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_with_position_and_with_weight.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_with_position_and_with_weight.test
index 4700c280d803e22c18c59233d39a2f900003073f..f557c5f368fe7eefd37ddfa7842c990f61c847f1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_with_position_and_with_weight.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_index_flags_with_position_and_with_weight.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_comment.test
index 5251bf9842a38234c2fc7a4cc2af93c515219932..33d1bfda440bb670f14e390f0d2b1c4c2522c561 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_fulltext_index_bin.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_fulltext_index_bin.test
index 2815b285096573a0f24ad195ef8d88bab10dbd9a..7b3673aec9841f949324fd1f7c9cefc11c4f1e4e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_fulltext_index_bin.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_fulltext_index_bin.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_index_bin.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_index_bin.test
index 5270372e33260769d5ba3f4d3249441ca958c70d..4997dbf75f7fbf20e007efe4d6fbbae53e802517 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_index_bin.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_index_bin.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.test
index 2d7ff664335f632596c11f343558b2a0e9de232d..5e7c67fe6d5bdb0ee89c7c94e4f6e9318f36be7a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_none.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_none.test
index 15045b5466c4e780643747f533c96e678150ba45..9bffd2c3a68d981aa9c13109a28a8facb7264917 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_none.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_none.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_parameter.test
index 16b76e0ec09b371e87e17503f24b55e502847c0e..489e82ee48e60b13a69f80a4f52aa06c67df1b26 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_normalizer_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_comment.test
index c712c2ed018e3c001855fffd0da977deccdc5885..82d68ae5421d059a5a717902ab8c0cbd29409c7c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_default.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_default.test
index e247e3d17f0f832d08e254cc01cc105fc0e2acd6..75ee188227106ca83ff7fd1414ab7fe57e3141c6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_default.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_default.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_off.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_off.test
index a2484a90a6ebf48f76f22d055a03a423ef89ce45..7888cb338618626c784944f93a45e20a328091e8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_off.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_parser_off.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_multiple_token_filters.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_multiple_token_filters.test
index b91819e9940415b73915fe39acc3c8ba51848bda..f7add5dbd603516adb8663750b62b16dd26990af 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_multiple_token_filters.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_multiple_token_filters.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_one_token_filter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_one_token_filter.test
index 4fe85314d1ccbdc8a0ec6379c7381d8ffbffe5b0..2fc98e6103e0f144a7b3e1bdb9d529e7b4922bec 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_one_token_filter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_one_token_filter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_parameter.test
index ba5f9a969ef9613e1bf0455fb6f68766609f6452..aaf60b02dc4f72637307b92921a0c5cb646f923c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_token_filters_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_comment.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_comment.test
index 1066ffebbff8fc73e496c2586f7a09d976aa67f2..0d640c846ca8bc68beccf5314fb6d85b73c8a98b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_default.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_default.test
index e7902c7b214fea84d1353d23c51d0816dab71073..773c740b7339f1b2e5dc5cbdfe4f24fb94f90b5a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_default.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_default.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_off.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_off.test
index 1fc724f5117cbb5700015388c7ffb60b4239da1e..698202a65d2563fd6acf22cd04dc1cfb948a8b62 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_off.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_off.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_parameter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_parameter.test
index 7ffedeaea5bb9c3c2ff5cdf01d04020061a0d97d..1bf4dc101776216c65729215b1a93104ebda2e50 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_index_tokenizer_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_default.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_default.test
index 1eaf8fa615f57be1a3c28d162383aea438d06ca4..c4b6fe8454cb2d57e2730ff84128dc9bf618d23e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_default.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_default.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_hash.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_hash.test
index 626172020aadefbf7ee0c3c543f4002ceac46a57..42521f1d54b60aaf0ddf317fe6d5b2e819baac1c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_hash.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_normalizer_hash.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_multiple_token_filters.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_multiple_token_filters.test
index 2120efe0f9601045142513a7770658ff83545b02..dc0996d279c5be1571a878eb728e3fc498c47ad4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_multiple_token_filters.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_multiple_token_filters.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_one_token_filter.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_one_token_filter.test
index 317730f205f3124cd9623631d39f1645eda7e418..ee1da6d09c39d062d6b0514d3a365daddd310751 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_one_token_filter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_one_token_filter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_stop_word.test b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_stop_word.test
index 2639f32517cbddaa18894c1a785c3a49b55551fd..87a35657f4765006ce8a3c67f27751bd14f1bf31 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_stop_word.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/create_table_table_token_filters_stop_word.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_groonga_plugin_register.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_fulltext_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_fulltext_column.test
index 6c2c628224f5aa45f0bb271b8e151ccfb520a66c..de2b24cf1f52e74d3cf5bdc89c293e0b54c9addb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_fulltext_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_fulltext_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_btree_many_records.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_btree_many_records.test
index 36f9848378942bc7f850cbcaaa025176086009e3..be7395494bbf606545fa909c093f941d90bb8278 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_btree_many_records.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_btree_many_records.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_no_unique.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_no_unique.test
index 00f9336c1601499ff691f21d7e606f9bbad4e48e..f42651cd0713ba80de3951b778d54d5711a0ccd6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_no_unique.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_no_unique.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_unique.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_unique.test
index be309e71b8f684f8ceb2394ff7f5cdcef7a13c4a..5bbc79790ef7b0f8760d273db6aa93fb12eeab51 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_unique.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_index_hash_id_unique.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_normal_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_normal_column.test
index 3598a17f72e7a2492c458ed5937836ce6a7d0136..b9e23e64345a243b00d4111650f2249199fd6a47 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_normal_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_normal_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/delete_unsigned_bigint.test b/storage/mroonga/mysql-test/mroonga/storage/t/delete_unsigned_bigint.test
index 1bd21b65881842fea68a4170efde695d1d4237d8..056dcae07903d1a2c0e9b89e703acbf116a5a409 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/delete_unsigned_bigint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/delete_unsigned_bigint.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_TODO_SPLIT_ME.test
index 383ada185e56b9be87dca80b8600db347de3fd1c..f7bc51db8937895a484a3ce90aebd83f8c892b2c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_no_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_no_table.test
index 764db3d6fe99d0f02776f66824b61d2db920420f..db4a9a03f004f102e50d60ddd37afb1367020009 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_no_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/drop_database_no_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/drop_table_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/drop_table_TODO_SPLIT_ME.test
index b27fda75e95c72708c38de413df69853c970740f..e672f80f07c9eef50a19722678b6e904ca47d8e0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/drop_table_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/drop_table_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/flush_logs.test b/storage/mroonga/mysql-test/mroonga/storage/t/flush_logs.test
index 44d6438bbaf8a05d76e71d4f567719d15e528c00..5cb3894af1f363319d033dca34c3dd1b7c870cb6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/flush_logs.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/flush_logs.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_add.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_add.test
index 57947bb39b870e415129003ff541636509cf179f..03d05fe1f8210028826cb3d9ec7f79dabfd3a008 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_add.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_add.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_drop.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_drop.test
index 9be7cc7d2ea6abc32cf6da05f626e24f09625e3d..d6ef43fad538b7024ea94beb6f5238fc83367f1a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_drop.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_alter_drop.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_create.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_create.test
index e8c8540be03f01cd11090e3345bd8786c510004d..4efd2052dfa7b2cc6d6a381c805d7c8ce11f2f08 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_create.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_create.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_existent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_existent.test
index 29453f6916c0b7a7e4eb987eed12971f3fc9a9f6..37405696697d90b8c5e0c7f306f9177ab51d5803 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_existent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_existent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_nonexistent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_nonexistent.test
index e2635efc56c83aee67101290279df1c377fe710a..9322876badbab4d6b4ddff3218ab109ea478c7a8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_nonexistent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_delete_nonexistent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_existent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_existent.test
index 0b859c8342fa88e59bf6645d4f64fc02f24aebb5..283efbd3a48cfbc48af92f4f10989e4e237f021c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_existent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_existent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_nonexistent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_nonexistent.test
index 0ed29655d382ac2fdeb6b2d423a2e8dba5485c64..4b873f50cf05258ada1c39826bde6e943a570497 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_nonexistent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_insert_nonexistent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_rename.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_rename.test
index e93958bab83f0f62e2d2f2eb5fc135869585a0f7..d445731bb2f91756568350e007eaf4070f051c87 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_rename.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_rename.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_existent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_existent.test
index 9b5ee9b9e63e6681ff7193ea2ad132bc11b426fc..fc3590f36ff3f2449df7fdd7fa5cb4b8e5ebebf2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_existent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_existent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_nonexistent.test b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_nonexistent.test
index 3e0f074828e035984ea2da22d64b34a0fa5763a5..bcba6e75736fda1c4270a6a3231ed9be94763e98 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_nonexistent.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/foreign_key_update_nonexistent.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_5.inc
 --source ../../include/mroonga/skip_mariadb_5_5.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_empty_query.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_empty_query.test
index 4bd9ff2db9c3d7b4bfd493bbdce2ade3837e0d26..074700502a75e07da48dfb7b9c382d2bce4db43c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_empty_query.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_empty_query.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_escape.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_escape.test
index 89507f0901d26c74c3cb8dfc16e1735b073f5b48..50cb12824cecdc8b25dc884609ba951673574b2b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_escape.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_escape.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_leading_not.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_leading_not.test
index a39cfebd285c44dd56e850b59791a7eeb5efc37d..bfe2cdc099ea0e4b4e9792b41b21a36125c4c3bb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_leading_not.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_leading_not.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_all.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_all.test
index b8d1c0b9cdb21add4994bbec70a731e73ae84fd1..fe904693e0085ea8e3a7928e708f913542c2ccc2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_all.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_all.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
index c59bc9d7b1f97c44808f80175b58c7b0c9f3ad02..af142c8d0c46c7d6dc4962bede43c5f7e8499adf 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
index bcbc4963a56efa270b65833c3a0a73b18b3c486a..9c04d835e78e5088eb336291ea027f0daa699a98 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
index de10774d83d5978d27113f43c4c6e5d0fda619a0..d1996f544587d0bd9a866a3632949fca25e277ba 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
index d99628494deeb07e03cfc78d6347dcff1b73b0fb..a4c90fdd730025d7a9805e021682c9925538778b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
index bbebb5b5fe5ddb6ca36567327bf14513dfc80c13..6ac0353115f52b3e508e0c4ffd4b3041209985ee 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
index f4d2112b35a63a84abad1d8ede26dda4fcad9b9b..246819741e116a4b30fa53ba007154d29686ae06 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
index e6f2a7ce6b626e325183b35f42c081873226e2ee..3e91ba89c069ebdf8aeb7f3d28b577b2d2bb753d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_astarisk.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_astarisk.test
index d2258a399d106ed40dcaaf3e56593cbc21773791..bfe8bb113e0efe566ff48c48f2bb581027ded6be 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_astarisk.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_astarisk.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
index 03a2ff8744a5bdde277c0bff5434ba6009f8e29c..eafacedbb496e00d467ee004978df4e065203bd9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
index 97cc2623ebcbdec5fbcf059118f3518ca103728d..8b7bb2e1523987453531f1b480ae59f474021570 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_operator.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_operator.test
index 00bd029dee3fee56e0519560361dff69a92eb8cd..3630052a27bcdc162b3838d9e2cda86fdf212bed 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_operator.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_selector.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_selector.test
index e6034ac2af5648bea613531f456ae4c7a1caf9e3..21d53b39a423891485f84e8e5de57209a5fe9e62 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_selector.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_syntax_script_selector.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_full_spec.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_full_spec.test
index bee227664cb811b24783934cbbf9485d8989ddc8..b8aa91ecb65928089e1623a0078b39b87f741e87 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_full_spec.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_full_spec.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_no_weight.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_no_weight.test
index b84eb91129c9e8c5f30b9415eace727274aa53a7..30ba517a6d546004a807a29d8205ff83398b3e2d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_no_weight.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_no_weight.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_omit_section.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_omit_section.test
index 2edac1599f1792949a31060ae7426ef1ccac2192..96fefd3e9463046fef1c5cbc2aff70bbfd00d193 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_omit_section.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_omit_section.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_ten_or_more_sections.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_ten_or_more_sections.test
index 583ede590e89f3af8f150df5e53b3c85cc681cb4..2a8e1c19344b869e0e223f7558ae0abd20896b58 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_ten_or_more_sections.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_ten_or_more_sections.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_three_or_more_sections.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_three_or_more_sections.test
index 8c4cdb79e201bb6fb89d482fe091309dbe7cb09c..87cd8de60afbc5540aa999cf47e45fc5821c3dbc 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_three_or_more_sections.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_pragma_weight_three_or_more_sections.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error.test
index a972cc6f4745ff4aa8bd4df1d32e670f11b00ba8..83990fdcdafb6d36cdc7f350b3941dce34b14842 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error_and_log.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error_and_log.test
index 4703fa7df10900a6e7268b45d05f9e2b16f25dde..494bf760243fecfa4c1a155b0714b2002c06a617 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error_and_log.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_error_and_log.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore.test
index 86803c724510620e0bf6affd09de1e0b33ef10c9..828726d0d776b538284a2556509482b71ad0e1a4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore_and_log.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore_and_log.test
index 0080632324f434325240c608662763ea7309581e..d9a0adac0621d959f23b91623d66c76a0bce2404 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore_and_log.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_boolean_mode_syntax_error_ignore_and_log.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_ascii.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_ascii.test
index d080d70d4d8e3d493b71fa5ffff0743e7e68fae2..3cf85e35cff6f5928e49546317dcb934928277e3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_ascii.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_ascii.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_cp932.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_cp932.test
index db8fa2b4ccb0cd869e0a50092af96dc4092cdfae..301a85c1a77b2f9780a72a5ab9779846325073fb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_cp932.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_eucjpms.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_eucjpms.test
index 39c89dbd7a3a2b0df5a5107e4dba0dcdcf6e236c..985ce19d35b167081064e23a885add55b12f9b14 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_eucjpms.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_eucjpms.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_eucjpms.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_japanese.test
index 0de940534f18d01041f1a3f78e8fb347405f6d46..d1d80170258e69be36825c8fda56c448bae2e38e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_utf8mb4.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_utf8mb4.test
index 503b96106c3dcd32779d0014957d9edd18ee1599..9492b33bedadeb3a21b6dd29a32dc9c178cd0820 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_utf8mb4.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_charset_utf8mb4.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_empty_query.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_empty_query.test
index d97e75fef512d5edca755040cbb8ae2660b31b7f..048fcd1c8f1649f71d563005752fee42b3d4f78d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_empty_query.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_empty_query.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_found_rows.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_found_rows.test
index 38fbc8bb302e89008e24c460508b21161a42001d..08acc357d3b34964c4fbbe136efc733bebf1b572 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_found_rows.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_found_rows.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_groonga_varchar_vector.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_groonga_varchar_vector.test
index e1fea8b07e71e91e4756afedfef9a98bf1496b7e..4b1139460b33b3aa4ab2eb19101573cd9c9e17d0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_groonga_varchar_vector.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_groonga_varchar_vector.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/load_mroonga_functions.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_index_recreate.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_index_recreate.test
index 5aa812fcb0487080e57b0e36aaa18819f732c8d5..1846e37bc400a99ecd5f947f6aba04a401befd90 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_index_recreate.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_index_recreate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_select.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_select.test
index 2bad02c0991e29b13f0c6eeddab3db8898f9ab51..c43341f7c00c2d25491fac18617ececfd0a38cf0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_select.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_select.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_values.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_values.test
index 5c1ec53c5737cf0a5cc74e2e6cefbe69f0eaaf0e..e133073e052f5e9c712783170d81f468c2dc2ba7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_values.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_insert_values.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_delete.test
index 718d78732c60765558635fa9b9d4f2c1e4ba3be3..c5199ee5dcd9d6691eade07ca331857c6c8a9b95 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_insert.test
index 7a4bd9b8cb7d259540d3410c282f63bbb83db660..799b9c815800594c103bc17f62261092658177d9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_recreate.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_recreate.test
index 174374711b9665e68185a0f2cab8191eaf54c67c..36dcb6c0807d05e20e3d2b070d7d7ff41a245ce5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_recreate.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_recreate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_update.test
index 8ccef3d68e335e6f535381cef0635333b5f1fa80..d84888f9f23ba62612f7f0b3d518b34c7f4e038f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_column_index_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_index.test
index 72b617812e95aa698c3bf827ff5f384a627f2b39..7b04e9a6ac832aa0d26ca24ae8d524ec0f2aafa7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_multiple_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_no_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_no_primary_key.test
index 3487f704d909ecc4454ffe2acc1e3816f04cec2a..aca6a6a032723b97ba2e8b073f325ee84fd69625 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_no_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_no_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_not_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_not_match_against.test
index 416b61b7cc97cc86005d12fe1740052621b58192..b99abc8b2fe973f5ea3764db568d5f6883042653 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_not_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_not_match_against.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_or.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_or.test
index 995f92aa4135f762f2d80d591b3fc3da95d69e40..ad93bdd7846a1f17aa343f5ca99741fea90937a1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_or.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_or.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_against.test
index dc5901ef7776b93a629421180d53a97308223740..90b8bc8fa106b1626c4e85b89265e8a842b5be46 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_match.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_match.test
index 73424524fc4adb010b6461161983ac8b26746ba8..fbcbce13161600e7f155f341eb3ffd9e508ad49a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_match.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_different_match.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_no_where.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_no_where.test
index 0d2963af7fe29f102fabb8e4da3569b532440379..a421a31b160c7190f89f848442b9c355ed5584a1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_no_where.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_no_where.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_same_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_same_match_against.test
index 0d13720a54eb357d962bdeec6f5a21f7ed4f927e..3dbaa6bf156342095832be4ccfd578a39b09ec9e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_same_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_boolean_mode_same_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_asc.test
index aaef394ebdac4490a6dfcac54e2b6cd6e43963b4..4a3af3711b76d7c21e5cd1b05729c34d55e7265e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_desc.test
index aa1a1a2c160ba263b7c56c41dafd037f939f74dc..fb45c0c6890ba7a3baf974c8df6ecae416e31c57 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_against.test
index fd9ea74d86aa1b1f0ac669605b26e80f57c7f0b6..8af0e41e4fdb001b2e0508c285ccacf24eeace51 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_match.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_match.test
index c690f92e2ac5e2164b5d845e6b32f5a14945136a..6c7eb0a64e3a05b4fa0e3f570e474fe40c30fc35 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_match.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_different_match.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_no_where.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_no_where.test
index 2919ad86288dd0cf9cb48900fa79fb5d53a34092..917d437d0e9b967b53d4c87151d0829107475a52 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_no_where.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_no_where.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_same_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_same_match_against.test
index 485e2d84cfbe9e7668d33b9e08858717e8979cb3..b4dd8ade182c764cdd4a6909eb7a70736ff3b95c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_same_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_order_natural_language_mode_same_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_two_inner_join.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_two_inner_join.test
index bad8e8bc9c3d4990f140b8d6b97ee61be5e66526..538b741f77d9b5092fa53347ce30c63a849254cb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_two_inner_join.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_two_inner_join.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_10_0_no_such_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_10_0_no_such_key.test
index c1d2c6c4cef3fc174a41079d6a30e9d749572c86..606e0c0fcc87bfc9d6bfc591e388c6f5a9bb8f71 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_10_0_no_such_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_10_0_no_such_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_10_0.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_5_no_such_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_5_no_such_key.test
index 7c00c29bc47619edf77ce6293cfbe4417301ffec..311a623bf0d5d46257e700410af1ed0bfcade89e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_5_no_such_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_5_no_such_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_5.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_6_no_such_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_6_no_such_key.test
index a102b4acc721717cd54877c9b7477df480367a95..d51636cba2c6a34239757d2dbc1384db1a51b9f3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_6_no_such_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/fulltext_version_5_6_no_such_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_5_6.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_auto-escape.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_auto-escape.test
index 091abbc911a5c2278c5d9f2a9feb7bdd3f8b5402..e40a703b0a58ab35dce2dc4bc2b9528eafa7e017 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_auto-escape.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_auto-escape.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_select.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_select.test
index 501c2ac86aba092b843be2e6b1144ae67cdaf593..5ba0ca779cee8085a1b11d69ff0831c1e9fe2f3d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_select.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_select.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_special-database-name.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_special-database-name.test
index a74acf89ed85420fffaa42070ae2a1fe843045f4..720c547c0f7ed782ccbc02ae4d39512d1c0a93e6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_command_special-database-name.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_command_special-database-name.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_missing.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_missing.test
index 7eb3bba1f3f643e1ca24fd26e24063c25c29c996..ee0b4833665acaef8e40800d3d86a7d123725f9a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_missing.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_missing.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_not_string.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_not_string.test
index ca18a93e15cada038ad203bed81bbe0a3d241c64..8023de1d428508f913399c09c1fc0a99c2b83886 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_not_string.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_query_is_not_string.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_target_characters_is_not_string.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_target_characters_is_not_string.test
index 13adc1956d1836db75a5773a7e8e9691b773f86e..f9cbf025e0f6bc09495fd6fe13035c004f029aff 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_target_characters_is_not_string.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_error_target_characters_is_not_string.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_all.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_all.test
index 993d0b1a4135a4af53d36321bda2d3304e27e9a7..9ed6149903b5f6b2352812cd11aa6ae8a0918fa0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_all.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_all.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_custom.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_custom.test
index 5b99a0ebeb69e6024ca477ded40fef6fb43cc081..5d1555cbd761d5f869c69caadef63bc337f372e9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_custom.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_custom.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_join.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_join.test
index 63cb2b320d5a78e6d90bf9fbd8a4b966261755be..8f0090fd150cfe951797cd79a481cf8b888e4577 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_join.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_join.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_match_against.test
index 3f93ab1828260f17ec64dd7831d32702d957ec37..442aceccd2eb3bbe09ffeb9b6832660e149f3e01 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_named.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_named.test
index cdd431cfad0b3dee897a19d0a8065383177987ee..8c7776a29c6e6ae4a1ad00bfcb08a5e8173a5acd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_named.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_named.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_nested.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_nested.test
index f98c4303ef650bf0d8c9ef3f757a970d8d91a041..ed8e77cb91949ad0a65a993ea556ddcf331eee62 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_nested.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_query_nested.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_decimal.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_decimal.test
index 10041ef8360a13e0062828aaf5bed79f55b5df29..d8d9799642de54846f95a2cc2adcdceb461399c1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_decimal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_decimal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_integer.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_integer.test
index 141def4f8798b1ba5f9f5ae67be3e4198af470d6..51c1df9d5a1cffabb05750a63238ef21708eef2b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_integer.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_integer.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_real.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_real.test
index 663fa69aba9a09f44c8219dbc469255e887e2402..10859733df2004aab87ad49eea97468bf622d1a4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_real.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_real.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_string.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_string.test
index 864cef6070396855705bca40b86e4bfbc6e310a2..46c3b558ca5a0bac7ddb839d937ec50f0bcc9612 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_string.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_escape_script_string.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_dynamic_keyword.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_dynamic_keyword.test
index 09bdde1c382333980f162c6281c13b0359654ff4..3958782a4bc8b4880f6b9775d4d880f7a91d616f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_dynamic_keyword.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_dynamic_keyword.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_japanese.test
index 10f44e44618d9e05fe60197cb7bf0ac9f4791acb..533bf1c267620f1b98343fd62f97b5373db263b3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_multiple_keywords.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_multiple_keywords.test
index 185842e77e5d5e6e07d53579fd4f94cfc3adeadd..9864387605842734b3544b762af52f619c55352a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_multiple_keywords.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_multiple_keywords.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_normalizer.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_normalizer.test
index 19c1ae826e7227bba3875030f00d7d8e288487b1..83e5966d39ef023c57369665a134431f570ba409 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_normalizer.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_normalizer.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query.test
index 089a1d4eba9063920c3f4bc697375731f83539ca..e632f027ca80c515acaf75895c871c51a09ee0e9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query_pragma.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query_pragma.test
index 3ba38c0b8d09b803e7922c34c0fc25e5eb6151a6..f17aa0f7b049d258120b42da025de72b549b0efd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query_pragma.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_query_pragma.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_record.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_record.test
index db5b06ecd85db68f4ee23095e987fb7963454d11..07b1273e6d1a2f38bd7f063a876db0454baa85cd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_record.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_highlight_html_record.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_grn_id.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_grn_id.test
index da116a4a508e2c07d86db96ca853b37c35318083..b6bced1603076679b25038a863fbd752d4d04cac 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_grn_id.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_grn_id.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_reference.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_reference.test
index 1ba332c4d8628569ca91a881aa9554ff3e653b76..a287da00ab8ecb2b64833fb6cc8bf021c14db1f7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_reference.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_reference.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_set.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_set.test
index 1fdd0a605115bfa5eb4514eb8e2d6c9c8d24707d..acb253a40372de05be6888ee434745112e7aa56c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_set.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_last_insert_id_set.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_default.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_default.test
index d5159b88ce1a9a352fdf8ac27ce066552ca41268..aa2eee53b53108efe57fe94ffe74851e1ae123e2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_default.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_default.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_normalizer.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_normalizer.test
index 9631313d79be8902dbb30fbcca725a1ae47b5632..bb9199f012f3a9d92e7c8ae5d1186c063ab21612 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_normalizer.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_normalizer.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_record.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_record.test
index 88ee40fc6ca88e555ba4158c66436f9a862b9302..b67ff53a1a60121016a1ed8324a76f4dedf416f9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_record.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_normalize_record.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_multiple.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_multiple.test
index ee80cd8b914878d4e8c4549fed595831ffffecb0..8b0ae02524490226cc506d4214fb6348394ac1f6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_multiple.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_multiple.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_no_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_no_index.test
index 1a2c9d84404f1c640281158a56cb48388c36424e..400503ca8635ccbb83209e8b092ddf54daa91467 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_no_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_no_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_one.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_one.test
index 50e4fc558bc42cb9f6bd6f894870094c0bd909d4..22241f6b4ed7898678814d259a3880ff90beb8c1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_one.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_one.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_pragma.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_pragma.test
index 2a8aad83d29c5760f947d5ce1ed0285f16e00609..3627a2c4c5730a4094a340415278e83c36791ad2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_pragma.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_query_expand_pragma.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_ascii.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_ascii.test
index 028bdb750ea407f97d4c9879faeb3850daa747b8..72da393f2d41d3d7de3b782fb0eed48705c957eb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_ascii.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_ascii.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_cp932.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_cp932.test
index 2d85633ab947de716d4579ad8a07eed2128e5df0..afaa43683584986e76dddeef617b7f74ceb19822 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_cp932.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source include/have_cp932.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_eucjpms.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_eucjpms.test
index 525c14a30043e01a9ab3fdd3fe503c3f042415ce..cd59a21635909f8f39e523cc3adfc25b3fb7df9b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_eucjpms.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_eucjpms.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source include/have_eucjpms.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_dynamic_keyword.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_dynamic_keyword.test
index 5faed5188916758c1177d242a3608fe25df629e9..a92e651cfd4e246bff74237681e8514340b251bf 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_dynamic_keyword.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_dynamic_keyword.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_japanese.test
index c01d298853f225680eb4da69e2b2de7f5398c0a9..fcc5a0fc67067ae4eb0418ea5f99d7a6f80c8462 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_keywords.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_keywords.test
index 60d206d2b40d496f5c75bb325005aea565713715..54953ebea593d562be41a4c0198c4852f67ea3da 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_keywords.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_keywords.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_snippets.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_snippets.test
index b4dfd0c5f5f7cf0f610d485b951f523ba358884a..9aac07a00e53e6f7a7ff1bce1e4765419f54d642 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_snippets.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_multiple_snippets.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query.test
index 998a080c7f81404588109d34f297cdd22312d77b..d441b0eee3637d8c85745fcdbcf5c14b3ede5fd0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query_pragma.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query_pragma.test
index b01dcbcd54c0f3232bde8737258745fa55f90644..0aa115d77963f03fcab9b98c67d943ca3c7cd485 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query_pragma.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_query_pragma.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_record.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_record.test
index 59163fe45979a71b482067c17ff4aa717def8800..c25d140cf491911af9ed178bfc49fd4270571ae4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_record.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_html_record.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_nonexistent_charset.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_nonexistent_charset.test
index 2547000aa95fb6c05982098a9a19e4961f5054ac..c6b19acd9a875bd2cd8e2b06b5db2c0086f33359 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_nonexistent_charset.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_nonexistent_charset.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_unsupported_charset.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_unsupported_charset.test
index e8805b492d6b91c3ba47e58f258cc2c8085c9c71..7182dfbc0fa7f0108b2a78c4d2c9b349d2fd186b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_unsupported_charset.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_invalid_unsupported_charset.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_japanese.test b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_japanese.test
index 1678a3ed29d25bbfbd2c30632658bbd4a59855b8..dfa373dc8c0a3ab91abe9c69ebcef9a7162ac1ec 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/function_snippet_japanese.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_bulk_insert_null.test b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_bulk_insert_null.test
index 887d8fb51accda012204df7bc7a4821b1a7fef3a..f26aa24ca2205934b5d790ef087b93aacb2fc0e9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_bulk_insert_null.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_bulk_insert_null.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_geometry.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_contains.test b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_contains.test
index 94d8024071f87ac56e4a98d7f690ff5e826e96c4..7b4bd34de1f1d296567e59f7ed2782fe7f9e8875 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_contains.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_contains.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_geometry.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_bulk_insert_null.test b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_bulk_insert_null.test
index 2fd4fad68e795ab2637d9725b359639db72b4b6e..5664bc4bce0fdb5407b97ae918392c81157623d3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_bulk_insert_null.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_bulk_insert_null.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_geometry.inc
 --source ../../include/mroonga/have_strict_sql_mode.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_contains.test b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_contains.test
index 605e03833da88878e956e77a0c24b95dba5a0a66..a337ac6ab41797f03520aef03a9f7cabff71b7f2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_contains.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/geometry_strict_sql_mode_contains.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_datetime.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_datetime.test
index ccc51b79e684ccf5909efa3d6b61813dbd4f8e2f..0b16dfbd3da1077d2570b2406d2789e986bb5f13 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_datetime.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_datetime.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_time.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_time.test
index 478ae97ba9fdc1c5a70eabbc11b2085dce07ffc2..c27e05a72eeb2bf158e832dc58362883b683b234 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_time.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_time.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_timestamp.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_timestamp.test
index a1c43cc417e391947e81f17f7feb52aaa7a99f11..c7b57f49113988ef78712d9757946078b4e75e48 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_timestamp.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_equal_timestamp.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_normal_column_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_normal_column_insert.test
index f342c049fd59ef332113bcdcead475d3bdb65855..a922bc039816b6ea1a4af30f2d572df72599941b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_normal_column_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_btree_normal_column_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_normal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_normal.test
index bfb3f45636033e204ee9a143fdd0507d2e3c8493..f385fb282c1bfc1749fbbd4f3a677c9230ecbfea 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_primary.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_primary.test
index 7925f4ffc167953c276594ffc7e89c1da194a0dc..fa22ab1f166adb04670b992e78ce97d9bcd41412 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_primary.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_unique.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_unique.test
index bf665e83bc56771f542a43b632cebfe849bbccd8..0a39b8d4d224ad6c487d50d7b3949a70ddd8df64 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_unique.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_id_unique.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_normal_column_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_normal_column_insert.test
index e9f20387651f6a5cd0f9e8dbd58a0da3770e697e..341873ee670ae79c7f63d63c3dbd034e0e71341b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_normal_column_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_normal_column_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_strict_sql_mode_id_primary.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_strict_sql_mode_id_primary.test
index b2629c80675b724b88c1c5d2a2116fc4e1c673b1..0f27d33361765873625c2aeb5f124b97da406752 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_strict_sql_mode_id_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_hash_strict_sql_mode_id_primary.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_delete.test
index 5cb0eed102f119f734276ca407116b3c96e9eb2f..9507b395aa086d1644d01fccc1e5fe749aa830e7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_smallint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_smallint.test
index c5d97a29785806a36e380e5a72df473e944789f8..b1095ae0d9524d57106e1d96c211115efa68264d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_smallint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_smallint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_bigint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_bigint.test
index be7b7eefd0f7c0ab3d1ea1e958f004ce0594d94d..3f43db0c75ec5afe021f663d8a688412d8f79088 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_bigint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_bigint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_int.test
index 23e75a58073c11c0254749fdad2cb967a7e0c821..31e5a79145fec028a50b33d7b1cca4195e380cc3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_int.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_smallint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_smallint.test
index eef9de2d0954df9309cbf7c8007df3a4bcea14a8..9340c784f5d41eefca21bde7a6ba757237fd6e70 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_smallint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_unsigned_smallint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_varchar.test
index 8d2d6c92adebdd13da9ac013a361ed0900c28546..3787489e7b9fe2aa889f96732cd584d474047d3d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_nullable_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_asc_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_asc_asc.test
index 521061cdf610b077812f633a654413f9ca150ae4..e4f07494754fbd032214b8e2a4d4cb16e2ec1841 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_asc_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_asc_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_desc_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_desc_desc.test
index d48c0e56b17ec3706b4fb0798316e31d298a9574..1d63639161460998b965c33a146cad3b74ec837f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_desc_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_order_by_where_equal_desc_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_delete.test
index 92a830880864c3a486adeb529f806baa05edbb9d..19fd3c1f2e23f427d1baf204349cdff82b3ae455 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_select_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_select_int.test
index 8978ee2af49dc0933d60f9f2df8bd53b663dc100..092b9ad9f45d44049ee82c88dd35ac3e57019734 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_select_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_select_int.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_strict_sql_mode_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_strict_sql_mode_update.test
index 6abe39795fd8ae718464164c1a9dcb04f95e1354..e99db08079af297a92ed487dedcf4a5bc2792a6e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_strict_sql_mode_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_strict_sql_mode_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_update.test
index 64292cf18d1828f2e13bb75c211e750fbbcdb70b..e4a38ea033875ed754cd323930f3cffbb36e9fe8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_primary_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than.test
index 0cfbea67080904b26d24a40f4cd9bae60b216164..171919b18122b95ff80cf95909b167ae68a28b61 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than_or_equal.test
index e5543a66b453d8a6c11ad726bb45221f04df603d..67d5c44f6dfba09b261cdaf62c0226b57bbdeb9b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than.test
index e326aca2678db9b59701243e32a771339d1ec748..b7d0b074e80d68bf9055a184226237ec76a6f0ed 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than_or_equal.test
index d2e09033f03667e82b4fd5524cc0bdb093f34952..5576bbc3466f7d68d1e89376a60b0f01e2472978 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_all_used_less_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than.test
index 49d0d7798d6c1d74fd69f557f6f205746693d6b4..13c47b4a5f79fdce165047e4444d17807a2c424d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than_or_equal.test
index d8e90a15df9ca8420508a9fc8658906844400e1b..7b890430146f7c42ae0e0211a7966284f4093b92 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_greater_than_or_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than.test
index 317517f4ca9b6f3705328d220ba1d0c563bf6911..60b4cd2729bdcede3c430e9275a858972419f7a6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than_or_equal.test
index 310cc4764191e5bdc8d45ce7297605e7340bf9fe..ece1d15745ba411aa7b4e1076c6f2e4e8761848a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_have_prefix_less_than_or_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than.test
index 7449e21ef3cc899b135be239427ed2415c0502b7..924a0ac24ce04649e4956f1a6773ef7734adaa6b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than_or_equal.test
index 3ea5db1493a7c65043c2b31716ea7f968ac410fb..8636e5ee8f495608c80aca79efe44e38d10fa0df 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than.test
index 50e9ca0d76f0d40b80b91a5db664c3d0bedd2755..73d5369327673720e5e982381619e5e7758c2bb1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than_or_equal.test
index 125143d71bae8c61eee48edeb66067001267aba9..630d60a70efba0a95005720bfdb40af8de432273 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_range_partially_used_no_prefix_less_than_or_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_recreate.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_recreate.test
index c674388e18197a096ad5bde36ff3d2708b6f2d0d..e8840b4aff015327b17d1a0ab7ab5a269e1e0123 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_recreate.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_recreate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_replace.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_replace.test
index 4bffa8c396a5537ff64a29901903dbc234f19409..d31762b27616ae605da909acade9b5d2acc69107 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_replace.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_replace.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_double.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_double.test
index 01139dc631d725d2fb2702269f561cdfec53d199..5730aaf8b67ec191702602b2eede085712c48804 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_double.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_double.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_float.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_float.test
index 902750ba265b952d3f31d1bc6afb00e1702ddae9..1b7132b3083f3c75467d79b12804ac7cbef7d42e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_float.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_float.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_int.test
index 4172666fafd6046bc9defa2ee57d7f1012392be7..332ecfc97fb97f90d80ceed78a149d7b904b1142 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_int.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_max.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_max.test
index 2077b914428276c9179b56781e4389187b490922..bdd3b0c3f1b27bf5ad807862dd2adceda2916f8d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_max.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_max.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_min.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_min.test
index 8541aaddae0b04e608c52743f4e0a02aaf6ae991..23a16379bbb50a7d8b1db2a4c8e8458ccc786acd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_min.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_min.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_string.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_string.test
index 936a57bc2d81f097108db2a2594334ec60b0c4c4..8805771ef6659766b1fcc1dcea96c08f8b750721 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_string.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_string.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_varchar.test
index 4778da9afa030e4bcb4ae5888c95380b295bc685..fad111876be5fa4addb41dba2f35160a93475656 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_select_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_32bit_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_32bit_equal.test
index 1f6151508e4ce29b4a54afd2581f5228abc9a879..e6aff9a7895924500cccd297406b762b0421db86 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_32bit_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_32bit_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_64bit_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_64bit_equal.test
index 1323b4ce4a86065e761fbaeab99d9e155626b8df..236ff40c1788e45b67be661910a8f46848f916c6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_64bit_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_64bit_equal.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_index_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_index_read.test
index 666b9566efa2e36553149b9e8a6574c4e135766a..901d55ed2d745318c59e5ee92b5bcd7e7e81be06 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_index_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_index_read.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_asc.test
index 0f4306b3e086f5488df0e7db782a3fad7827fe2f..814da2e88d08bd498ab5861728c089c4651ce9d5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_asc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_desc.test
index 939d885a617fdc68940f77e0a6a9156e26cefe84..296c0bb69b1e3c95dc91afc2c3d1481fb5b894c6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_32bit_desc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_asc.test
index 89108b7270d34b2c9772471b946346fa580cccbe..c51475002c83f10c59b7192dfbf6ecebcac7b84b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_asc.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_desc.test
index 3cb5bcae3bf1fdd474115596d4b67c0281280cad..3ccb42496860e9016cead15c21442638cc5515c4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_order_64bit_desc.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_reinsert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_reinsert.test
index 182f185a0d67a8eefbad2504c4cc02afd22a6abe..a6d82c32db724e6f274a7d57c2580ac008f1d1f7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_reinsert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_date_reinsert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_index_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_index_read.test
index d33d2c1f84eb7f1b04a1bf312d12193045e99879..b1e4a3b85cededfed5dfca62b1fcefca72230bf1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_index_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_index_read.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_insert_delete_insert_invalid_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_insert_delete_insert_invalid_value.test
index fb647f5c6e705083f7eaccc4d2b02c6bf4559b56..362cf4160aa8339dedd15733efbc4d0c0e8b4adb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_insert_delete_insert_invalid_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_insert_delete_insert_invalid_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_strict_sql_mode.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_asc.test
index b4b5f500c56d6d38330a41dbbe912838f24f7fdd..7cb4e219733aa1ef536479fd78831c852ebf2e1b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_asc.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_desc.test
index a2c4564253ae81fc738483ce4428c653791e7eb8..e2b1bb0affb3c58e9605f716a77dabb3e39421f4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_order_desc.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_freebsd.inc
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_reinsert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_reinsert.test
index bd360544ee1c1590a0df154dedfff06c24c76dd2..927d8aed88f439cd7c30241812ca9ef8e47c5fe0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_reinsert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_datetime_reinsert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_decimal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_decimal.test
index 38265a6ed99eaadcf1f4b5b1396edc65030e4049..7ae2be847cfc14044a9623ad04f80fe394da2f05 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_decimal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_decimal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_index_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_index_read.test
index fa4780d541bffc64e3e8eb9115343d0229c5840c..1229d88788f246ea7b65fb6d606a2f747cfefc06 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_index_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_index_read.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_asc.test
index af3394b1f6140c432cdf2aac5f7c2ab70b08733d..68fbb2acbbe85de4b2e19bdec057881a5d0ab045 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_asc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_desc.test
index bc8a7e723a04bd6722073dcc5135c7ea788223f6..3ae97526637344bd94a5e89d8293448ae48bafeb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_order_desc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_reinsert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_reinsert.test
index 63f708afbb2db2f04b5df9a37bdcbab993272de2..20b083428bca80dccb053d270e1981148ef0892b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_reinsert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_time_reinsert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_index_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_index_read.test
index 7e7357108a57928a74dfcc005f420263f07500eb..0c3315d0caabbbb79209bc1a61f0b249650de0ea 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_index_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_index_read.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_asc.test
index 3f337d05523da388970a33a08829dcecc6875ab2..2780a153aa6679abd29286a69cd031b99a310dcd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_asc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_desc.test
index 6dbc49388742c2e2aecc925b115f9b6a0e6a20eb..2e827343d45751f64bb142ecccab5b121e9582f3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_order_desc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_reinsert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_reinsert.test
index 7a1bd6bc74fe8c35c6a9dff0f00a521257c2979c..3653283644890115826e358ff3b61fd263e27602 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_reinsert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_timestamp_reinsert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_varchar.test
index 67ae21224d13aafd1179d057e337be9fea13e89f..eb0aabdee45cefa896f9442590f37a0678765027 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_32bit_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_32bit_equal.test
index a0277c18cc0d8f994049580c317d291c3ccb3fb7..b0e0720e2d0e23b2357290cb7ae18dd242e8d9f9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_32bit_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_32bit_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_64bit_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_64bit_equal.test
index 21a3b936afe34a921fbb2aaf34440593e5f4b4a2..5cad0231876ae5dd9409098da1cb84920a153397 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_64bit_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_64bit_equal.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_index_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_index_read.test
index fa91ca3177d3f84ebf83c3a48bc637e6420d2a74..9bc8aaf28aa680b6e61327e87e097e7f9e291015 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_index_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_index_read.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_asc.test
index 1539d9a77416f5285de7da9923c04a6970857b0f..12624eb868d2cd8f3e583899cc45d74dca130162 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_asc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_desc.test
index 92492d599e79f48e9416f97f8679aad3206cdde7..70b019ca75ad93f3554626a3b6ff09449267bd15 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_32bit_desc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_asc.test
index 226a51b43332b6896f5633b74a898111d470a4e8..d9d1f458751fe122d2bb78ce9ba28d2d4f725051 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_asc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_desc.test
index 0f1830ff6d6229466b3db228ae1df31b184d63f7..1a2b70eb25e1f852e91873348c5b4d4e8d9c70f0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_order_64bit_desc.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_signed_64bit_time_t.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_reinsert.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_reinsert.test
index b80986c3938669036018b2227e95a7b09910643f..3ee06c480742d491837ecdea3e2eb58a9c87a394 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_reinsert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_unique_year_reinsert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_int.test
index 0d303496afbdb38512bccb28022bb735f47972ab..d7f9dd9381f580327d1dfaa7b2b6a9018c026205 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_int.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_string.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_string.test
index e250885d058fe127397e957da3bb36e0d648987c..6efe83ceba6d16c19e8c5f60d29d8b4469c1d7e5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_string.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_multiple_column_update_string.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_exact_length.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_exact_length.test
index a954ffd4ee39eca600c7058862c546e22b29d3bc..bd3d182dad1d63c8277b88bb2068b2bea0b5f3c7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_exact_length.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_exact_length.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_null_character.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_null_character.test
index 19cedaffcd4485cea07d1444ec3632414b7d7387..afc0b9ffbd8dc7fc9ddf4f1fd039362dd3f87c15 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_null_character.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_null_character.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_short.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_short.test
index 9228b1ffb919270b0581b367c688554fb37f4007..ee0887f36632a44b5ce34145b173419876a864ab 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_short.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_char_short.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_date.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_date.test
index dc9db9652f617b82a2f775e2418c267fbd45fac0..455017bfad1cfc28791fd13b2c03c803487bd501 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_date.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_date.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_with_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_with_fractional_seconds.test
index 7ddd48617084d0806feeebeff1082d1c3128a4a6..6daeed758a1dcbe704b82afc47f76159f83e7f9e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_with_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_with_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_fractional_seconds.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_without_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_without_fractional_seconds.test
index aba0d8755f0e908f6358e3f4b2888e6ef545a205..9500148eeac9651beab20adba5858604f8e9da31 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_without_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_datetime_without_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_with_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_with_fractional_seconds.test
index 4e2bd44d2d1e60c92f546d1c49a3f4c63a01e69b..37ccd1e5046f217057d3e0a3c5142cb37d63bebb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_with_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_with_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_without_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_without_fractional_seconds.test
index a5073a6334a879f04a11f02d2b9a8fa00f8250aa..477368bac5d37d780ce78a71c0f193d1e318ba35 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_without_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_decimal_without_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_with_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_with_fractional_seconds.test
index bf61a4fbd0f3fe5d4dfd859f1a1e5304db5bc0f4..7db2825f367967050d6e2ffd85986f096ef363eb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_with_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_with_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 --source ../../include/mroonga/have_fractional_seconds.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_without_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_without_fractional_seconds.test
index 6e5c369ffa0f0a32da8833ea72ef9160d50ccdb4..721d639248f965b873f6068c4e681811f7d21455 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_without_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_time_without_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_with_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_with_fractional_seconds.test
index 1eb103b76c7efbfdf1c8e8d3d172bbc85d0607cb..116f11a50da5ec3f49f1153c3ed620bd3e93add1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_with_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_with_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mariadb_5_5.inc
 --source ../../include/mroonga/have_fractional_seconds.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_without_fractional_seconds.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_without_fractional_seconds.test
index 341dfd21c097c1571971775bdb33d33ae1e49d9f..67f03299f32c9a3b2522004d2de2c605b45db7c7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_without_fractional_seconds.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_timestamp_without_fractional_seconds.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_varchar_null_character.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_varchar_null_character.test
index a610944d835cf0a433586f707e4a8c17a073be92..6d458d78489c24ed9c33e1b0970e42d81e8d4a36 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_varchar_null_character.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_varchar_null_character.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_year.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_year.test
index a390eba41f7a585c59cd727573ae04b05c2f591d..f6bb7dc36dc091a502e41ffac199fd8b1aeddb7f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_year.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_primary_year.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_asc.test
index 97e8efc73cbed4411b5521acc5651157be322052..660e4370ec372ee4d659b7b93011f83c2f3e7fbb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_desc.test
index a3e040b554bc19d3f346cc3ad651b06688c5aa9a..7abae60f151f041dee2dd73717e67d149e019f0e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_asc.test
index 454326ea21282f5e60f8f8616cdfbff0e621d3d4..063d2ff725a6c9252f354cbb7316db8a76a8ee78 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_desc.test
index 1a9a06f8b40d866332bb078eb64e92ffab617b21..e3d22364d50f48973fb7f0ac7dff303ee97efc9c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_greater_than_or_equal_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_asc.test
index d19cfcb22627113dea8638217f8558a5e72b4d91..0efc55447ebe9908c5a95cc006017b3d1da0a709 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_desc.test
index aa0761aa871cf4f6f71e935340f905b516fb6e2f..c356a714121b744bee8143906894a46ff2206f7b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_asc.test
index 068f53fea69d1ab09b00de8e5af566801c9a3117..b919b5f6c93bd86b1fe0ef83665ad2a20f78ee5c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_desc.test
index b903332396221ae8f25d89a9e39a8b76bb9596a4..43e870a32a9b58d27a1b5fc6ac20a2a92ca5d6d4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_normal_less_than_or_equal_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_asc.test
index 5b1e16538ad4f1bee8db829b063fd14a8b3e7145..c708642142d9e5b07c9ae83b4c0bece654b2488f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_desc.test
index 10446b115b57f6ad6cc0e35de1a96fbcaf431db5..dd53c39c32b083bef8b3e1a7b025edfdb1340313 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_asc.test
index 66d29dfb8f1128e8951309b3e32683c49a0c045a..25dfa56f94a0c85588c3855823fc359ad9c57c54 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_desc.test
index 7dcbb6e9023446b15f1194a926f8aa9e9c24c7a5..b74b2533ff9344a5ca43112f6bd97f8b16d73b94 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_greater_than_or_equal_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_asc.test
index 8537caed403cb76d1af8d8082c9eccc5d7277b30..2848d4eb5a6e2b3d4811e8514a5024a5ab7d76ba 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_desc.test
index d7d48ea72becb3569e2a81f202039d4920740bcc..99854c572c74e078543b41ffcf123af2cf6b6f13 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_asc.test
index 216c5f4ef99265e1b4186d1ab25831c6eea79878..801d6fd95e9e09d77e9516d188853d3d2c9525f4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_desc.test
index 90f241ad285e07d733475a1b14bece6929e5d88b..c5d2f5cdca45e4f226dc7fda87fdd4c8751f1cd5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_range_primary_less_than_or_equal_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint.test
index 58e58f4dbdd140a5088fcfac13bbca3d537ffa29..cc37192eaf14f19e5f39ae735ed2eec0d6880cf9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint_unsigned.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint_unsigned.test
index 2b81524aef25daf1a77835b5c878966ab4c5469d..df0bf2644dc9989af4735b06502348991acacb93 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint_unsigned.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_bigint_unsigned.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_double.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_double.test
index 7ad385098ead280aae569336827da97aaf592717..df0e9e81140a0e548395144bebfeeb3c7fcda793 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_double.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_double.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_float.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_float.test
index 0baa5d4b311ba47f30f9dc888536b7a746fd6b2e..a04f84eb4d5e60e4c580f53038cef7dd25388633 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_float.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_float.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int.test
index 15e539b552441358ee7aac62252941deccb8a121..aafb352baa01ebe387fd80355cff0a38d72d8c04 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int_unsigned.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int_unsigned.test
index a3e1d35647baeb4d6770556f9cf4798b0f919d48..d82bcb9cb453320dd3fb4791b6c4cf95019b2ee6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int_unsigned.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_int_unsigned.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint.test
index c63a8a867a8f9778dec47c522b1a2694e9b38303..8afe5411e46508a2040455399ec151eda2338c01 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint_unsigned.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint_unsigned.test
index 81d6df92ffabf957a78b04a81941a46532477797..70c894701756c6fd7289624ff9a2aafda7c32ff7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint_unsigned.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_mediumint_unsigned.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint.test
index c64bd185b21bd03ed4746c5233f62cf2f1c4d99e..f33b635663ca84dde67b5c0ada8d2f7175660361 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint_unsigned.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint_unsigned.test
index 82ea8949d869e4d841a3ba9890f0bcc3dd892be5..4a36ef3afb4d2908f216860d10fa2ff2203d9be1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint_unsigned.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_smallint_unsigned.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint.test
index 685570228569ae554e9f141910edfb43b03329a3..40d338d46fcad04bee00a606f15ae7279d6601fb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint_unsigned.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint_unsigned.test
index c513983d886af4524204cd64e1c1f554d1abe5de..40e918298e0ab83afaffe7065be6c360ef174ec3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint_unsigned.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_tinyint_unsigned.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar.test
index 51ed0a3bb8bdf9ea4b4e254479d2ee92a98533d7..bbc89e094d0a4a6262e3b0f189453946284bcf86 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar_collation.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar_collation.test
index 9d9d02c4b023ad2cd0c175af01cacaab54125f41..8d695b2e803901e14d022bacef36ea775e6e8897 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar_collation.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_multiple_varchar_collation.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_int.test
index 04584d2f71f5516ab4bbabaf2a731b16cbd09fb0..abe68f797f80d46eb8302ec62b99837902fd94a7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_int.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_varchar.test
index 7b8a6fecbab0f27ce4f944f94d7aadf49e37a56f..7203b0054fc906d4c9e1d376849a5ac1f5a1fa49 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_normal_varchar.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_int.test
index c2307642392b8c737a5c3c7e08a1954bd765f268..bd286894acae63f7140d563cf0a2feb662b7ad4c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_int.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_varchar.test
index c4004e4207ad0351ec5d3e9a3a2329ab95eaf7e1..2a166d01f4e7a410aec8ef9769ad4104c70c1340 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_read_primary_varchar.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_all.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_all.test
index f4d468b71b3946be550049d0df4f1bbb88cee906..d67d5849e41f6b80a6a695470e44063395250606 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_all.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_all.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_by_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_by_primary_key.test
index 3b3743b8b37f54f7a3cc8090d81a691de1926211..38b281f6be059afac553aa249c17ece718e31f05 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_by_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_delete_by_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_insert_after_error.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_insert_after_error.test
index 70c6ec8576fcbd8128ca8520bb09944cb3259590..13bf0ebaa1164ce3e114fed7af600f5c7f732454 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_insert_after_error.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_insert_after_error.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_search_after_duplicated.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_search_after_duplicated.test
index 27fb6eea8343862886e6277371cf1831dcebd893..4f464cca0994804f09b1fe8a33d2c27745d87331 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_search_after_duplicated.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_search_after_duplicated.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_varchar.test
index fe222c377ec7401e6781fd482faf25fe959e9b17..22aba9b9a8546cf1b0505bb83b9d6165b9872102 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_unique_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_update_multiple_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_update_multiple_column.test
index b1a37b5acc9bde972f47fed5c80562b7119997eb..9d83b461205752e9224c2f2a055685c922258c1d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_update_multiple_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_update_multiple_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/index_update_single_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/index_update_single_column.test
index 3d47500544f2e2cd3b5b0d5e34a6e2a0aa10a130..84a94b95ed7f4269e4a54b46ed6a9909f6200b46 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/index_update_single_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/index_update_single_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_plugins.test b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_plugins.test
index fb462fd76851b894cf8a124293e7edeee5bb58fc..2d65b763aac525bbdc63b2cb3a0ace584bf2923b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_plugins.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_plugins.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_none.test b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_none.test
index 2dcf6716e2e6c9c0e02a170a2c2137d6465bbae9..d9cb66c8964d957d9dab23bf74e7fefc4aab9368 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_none.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_none.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_use.test b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_use.test
index f1aac9c1c33e6bda17168d462939f7154875aa87..7723bf6594b4491dfba06ee725d3f46630fac986 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_use.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_auto_increment_use.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_data_length.test b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_data_length.test
index 445bcfabe39dc57f11f1e3766594977a0600eb60..8a49ed221634327379058aa8910eb616931ddbe1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_data_length.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/information_schema_tables_data_length.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_TODO_SPLIT_ME.test
index 95c21513d5709376ded7f5972e7f0eab957e897f..81e98c3eef7f91051652adc3560800e1a14e5730 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_delayed.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_delayed.test
index e52d11c5582e594a004964b1bfc20daea852c468..4d8248b3147ce45fd39d679c5380baf9c8545f5f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_delayed.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_delayed.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 skip "This test is too fragile.";
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_no_primary_key_and_unique_key_twice.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_no_primary_key_and_unique_key_twice.test
index e6c0cae164f5646525fdcc3484d0bdb521235aea..dbeb6ae3ce10f7eb86f6be1ef585cafa1beadc78 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_no_primary_key_and_unique_key_twice.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_no_primary_key_and_unique_key_twice.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_primary_key.test
index 1b07775d681943facc93732091024aad3bea881e..9093560f8d7864d6373aaf3b30a81757eaf85518 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_unique_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_unique_key.test
index f5b6db7bab62d45c0f3e237353067f08c562a7f5..5d8439f2372e7723afeb8cfb7bb5847fe3ad5b88 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_unique_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_on_duplicate_key_update_unique_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/insert_virtual_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/insert_virtual_column.test
index 3f3fd208aeff9198f21e076f919f7e038b3023d6..6c68a9ffc4501334a1bc567ed6a167c437ca2a03 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/insert_virtual_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/insert_virtual_column.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/like_unicode_ci.test b/storage/mroonga/mysql-test/mroonga/storage/t/like_unicode_ci.test
index 1f9c5fd3849d349612e18aa4c0dab554790f4895..4f5940c1ecb9c271bd6b319ece5c21ad4fd54b81 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/like_unicode_ci.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/like_unicode_ci.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/lock_tables_read.test b/storage/mroonga/mysql-test/mroonga/storage/t/lock_tables_read.test
index 6c7627e7967aeae7fd24e1cd5a74786a9bf98f61..2ce2ae948e6cd37b1f008a1f4d6f69de711f10b5 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/lock_tables_read.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/lock_tables_read.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_multithread.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_multithread.test
index 69713752f4f2ab39fce43f392da01efa0ca49f27..4857286ac981d506e6869f5658c95802d4dcf79a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_multithread.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_multithread.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_single_thread.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_single_thread.test
index 07bbc773973da8413986fc813a334bccb78391f5..d0116e7f1c59096b276f32631d6ee8a2754d0e99 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_single_thread.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_after_insert_single_thread.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_disabled.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_disabled.test
index 2014a8fa476bdaa84461897bfc79e0b81f590ff4..d84112b49525ebcc3e90e87ec0de8b32d499fe7d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_disabled.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_disabled.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_and.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_and.test
index 3c63ecc9c1279e52b8984e2a735039e79357ff95..691497be13ed8d426402c8715edfafaa5f637868 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_and.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_and.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_between.test
index cccb0d3f48ff86c7f53957ab5291fc40abed0487..c3fb2bec507a30abd03b7e0127f2b66e7340882c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_equal.test
index f8ebad5d7bbf5ff2e60efc009b4edf744857693b..b422e06e5fd4bf5f444cc9c4e647d91e1ac28103 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_boolean_mode.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_boolean_mode.test
index 9e3c6fd8a32c5089ca1bbb11f5af2728384908e9..b59ca7f552f630379606b975d883500824d05562 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_boolean_mode.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_boolean_mode.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_natural_language_mode.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_natural_language_mode.test
index 634428c5c95945d6344f76884356fc038f0d3894..c8de7b95cbc5dda64afdaa8cceb5a74eb657f989 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_natural_language_mode.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_full_text_search_in_natural_language_mode.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater.test
index 0feababfbf233ba925a86a5c841aab46c505b0d9..4b814e494f98eaa792d85108a3b6c7f15706ae1b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater_equal.test
index 5e69f1684ec5ac4492628c40191804b864a67e42..f26ed636b5a88f65ec1be57d66251a14cf3a19bd 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_greater_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less.test
index 8aa1ba17621ae6a8115fee2fb7774460a5c5dddf..0a7be348bd589b4363ab6d9dc67dc6e0d3de3d25 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less_equal.test
index a6e0f3a51ed9c9b683b153a8ffc3e00d0c13425d..190d242d932a69f2b8d332f4f4fe4273a8866f1a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_less_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_not_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_not_equal.test
index f07d1b9beae85757ebdd40759fe7feca1d9b7144..3948d218a699015aa3bc213bea6586f0cf5979ca 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_not_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_not_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_view.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_view.test
index cc3de7c3ce693442bb6bd7568fba5c214900646e..85ee2d450a3cac61bc3978afba1f0854468dde79 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_view.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_index_view.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_multiple_conditions.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_multiple_conditions.test
index 1f49597bb27456e3f315e90718d8f95ef06620b6..917d6a1b4d68646cc2b501b333836d7615cefc5c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_multiple_conditions.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_multiple_conditions.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_between.test
index 1c9e7354c357b80abb20cb42c79b14ff2bf10864..73754afda63f2a7782977d9aa0cca075b5018977 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_equal.test
index 23fb2152f94302fdd7b0883624754e64f267be43..c0db5729425146fb33191909b06472136cbcfd48 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater.test
index 9020dd11efa19b0caec8377cc00583d519b029a9..44ba5ead9f210cffb1cca764821908f0ee1a0971 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater_equal.test
index f4c1e0687c5678a6fed6ac8fa6e409e4ec1577ed..8d442692950c612925ff73b70f51418be56a8371 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_greater_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less.test
index bcf5afa52de5912344e8429f93ec577d93535066..529dfde678e90967f7a68ea989b38b3a96831b60 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less_equal.test
index ddfad77ceff0013bd68ab828584c779340293929..d2a863ae43b7fce2a00b7f576915ab064b76bf31 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_less_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_not_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_not_equal.test
index c49385ed849b1df739720f5dcb19ad2565521f25..7e8c3180ccf484b8f47af514403bd7aba2612091 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_not_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_count_skip_primary_key_not_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_disabled.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_disabled.test
index e65e44d1f6091361398e127c54cbc95f3823e4a0..c0dab28363bb0a95a2bbf8f4144337f8afa39c62 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_disabled.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_disabled.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_multiple_match_againsts.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_multiple_match_againsts.test
index 14f548db12499e9f3b8ce67e19db9cb39b74295f..ce1f63604e7404008a9741673ee816bfabfe8b73 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_multiple_match_againsts.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_multiple_match_againsts.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_no_limit.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_no_limit.test
index eb9e7ef55bcbf467bd3d7c6698818ca21e453d90..99abc0469fba3ee92893ee387d7de8c7cd670c42 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_no_limit.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_not_optimized_no_limit.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_cp932.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_cp932.test
index c14ee787f1abfa7fa7887626e4955f59d57ee48f..19c2bc4009ad49bd0c80abd228cfea3c5cd1825d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between.test
index 04cd30ab337e337b12300e66c33df02bf5e89860..9ad4a6966b433b359da041dce119910a6a0afc9b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between_over.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between_over.test
index cdc7b4335328883f6febe5f3d36231f81d40f10f..170e979613e218c30b0e27df3cf5a801307a34a0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between_over.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_between_over.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_equal.test
index c7a5244042c58f15939bbcca7b86d0a1de09cb0c..32555b2a4480e7573a82fa1346543859afaaf003 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than.test
index 0f87b70186c6a4255bc712180c75893ebcbebb97..9c4c87547508ff98b5e4f579486e8c4ca7f6ddf8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than_or_equal.test
index 922e72e2bbb9b12fbb7e2cf1897121079e5fe220..375080ca70b127ac1316ad748cbc60a366f28ba2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than.test
index 78f8f19a14d1acf2e73fffad784c4126bd1d9e41..cdd4a2ba19dc90a9ed9911f48071d86ffb077bab 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than_or_equal.test
index 2b12fa6ccc141c085a016765d8ae222d23225d8a..b0af56e0e1971d1e795943fbd3897d2f444651ae 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_datetime_less_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_duplicated_order_by_columns.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_duplicated_order_by_columns.test
index 1908ce34d8a66853cc1c99e9c0081888c4e38c08..e9d1ca2909e692e497fce0cc5564735e2adb7d8c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_duplicated_order_by_columns.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_duplicated_order_by_columns.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_name.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_name.test
index 834a39fe75c8b5f03bfa7f31c1ea9d07e520d4ed..3a4f4faa2fb0e30c2fc0d960cc0ac8e2f7ba3b28 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_name.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_name.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_value.test
index 703d79dc8e174013b14c3241a2c16a02783924cc..b8126b3fc833d91611f3c2c6df96c57e95543597 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_enum_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_have_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_have_primary_key.test
index 9c44110bfd51d694afce78f86f635b33c67742b4..64f5a605567ddadc816244f1d9a54641d300b132 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_have_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_have_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between.test
index 32345f661391815ba5cb35e75421e975ed521528..2fa838ea06921ef842bd35fbf38bfc39926e8de9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between_over.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between_over.test
index 508f85f3a738998e8da7b389d86beb4440fe829b..5981c99f870badba6ebd2cf1d4f520ddd49f9d05 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between_over.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_between_over.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_equal.test
index a2024e8dda52c9e239a89602a598c2aa4a682758..f2158a8224f872f9556664ce85f509c8175e34b9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than.test
index 4924cb374e992eed0cd0b98bb65a743b2f6673e7..856c9f710552a9744e949e33b0f1b62198acbc17 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than_or_equal.test
index b81247ed2f93bf04b9354769ac9d340c82799d84..6115bf68a79ed2e8a6972cd08e87dc3ccab99a6b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than.test
index d32d9f1128c9bf8459072029a0f9ba071396b27c..f5001bdf9807386b85bed881de5518f3702e7249 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than_or_equal.test
index 9289bee30688ffa173bf1e2a043431dfe855a618..790e8f14bd1b23a53183ee27052b49f2333b7155 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_int_less_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_primary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_primary_key.test
index 23adb84f91c45cda6df81921ebaf356edc1dbb82..2aad7f0f7b5f7d0f12d56f874f8d6b12c267cb43 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_where_clause.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_where_clause.test
index 1031427f9cea37694abcf62f99da2e871d8c4b67..72889f96be599545446a4972ad3fafc4e8311fdb 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_where_clause.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_no_where_clause.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_asc.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_asc.test
index 78b42e5d8d7b028717b73d13f9a812a244d98b6a..c58d7353d0ba18a89f1692ccb1ac31082bb21171 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_asc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_asc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_desc.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_desc.test
index f09a2a0e3b46a6855f5e00d18bd5d3757b02d260..a979e88cb15b208f26999a83cd370dc23401ad2d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_desc.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_desc.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_id.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_id.test
index 9a7585609136d6057e6751ff5c7a0ed0d2153f11..6bf3c6a8ceb2e9e247eb2dcaaba5d8cc335e9b39 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_id.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_id.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_match_against.test
index e49a79a7db25f452bd22df77b3336c852c4a4b01..bd86c6a277897053f404a9d9dcb721f210c043c4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_order_by_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_select_match_against.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_select_match_against.test
index b563028c81db3c8ca6283607fb8a120a84a3a3d6..5272037098c951301fb0d7cdea30ffb42053e8a0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_select_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_select_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between.test
index c11603c94f8beb4b18d3aa4cc70fe0fe2935a078..23bb71032d3cee40bb459454e3d2091ddb36b56c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between_over.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between_over.test
index 71f93c6ee1b142a7cd8fb87f2d770bcad3ed4019..2450f8a2d0c1b9dfb8aabd3da5981902adc5f16e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between_over.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_between_over.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_equal.test
index 883f676e45e8e9cf2bacbc13963b1ffe0de9459e..46dc7cb5d48e5ddc3992d9f0fe93589ca533e932 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than.test
index a8af0bbb78185c593dc27c2cb7957b8ac22c2fe5..62acda78dc5b4fae0fa75152b5b211a3c4aaf91c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than_or_equal.test
index a0795f8eba6d1e6743d5237a51de55fc2f951969..ee706c5f3e084e3fa6f56ecaf8dad9c92d0f394c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than.test
index 4087207c2a874cb97f2e6c24fc3a4e9da4c56b74..01764064cc7867d78d274c31845634e161436d1d 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than_or_equal.test
index e423a4b937b852955ff7e44b5d6b0d67dabf0279..51423125bbfeb465650a1615f03c2785b4555ec2 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_time_less_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_with_index.test
index 60565dd7bab16c3ea961418c561e93faad77eb06..c3456c25827d897a009577640bba8d8bef2be219 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_without_index.test
index dcde9373317b8ed5f64f603cac5b61920fab4195..2ce06201ee3bc4a7cbafdc66a2e1295af3f38b60 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_varchar_equal_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between.test
index 4e7c117d65404d1196949f76d6d804831f26e1e8..c07368fb4dad9b8be5d870028b3f9e39fb4a0625 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between_over.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between_over.test
index d6e7b345c0583a7cbe43dd5d355c6474ce8eea79..599cc8fa0972888a69c0f7aa03d4f8ae2e49ce24 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between_over.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_between_over.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_equal.test
index bac10448269e59ec1f19decdcb15813876c6701c..35ce60663fb53ccb9ab91611db9dc9d148cb22a0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than.test
index 9ffae4a65281ae3a69c9fce6ab2caac0a7663e4c..88bb6a27ffc5244bf7bcaac62e0e3767121a327c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than_or_equal.test
index 09015f9c2c380f7db073265cd2d5f015a0572128..64b9f831cafe41d2215e24c682b51f165dfee66b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_greater_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than.test
index 35adc29839f7deca80d7761312191270a498a372..5f3f89fe77a50f49d5ceec05e063a86aedc359b6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than_or_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than_or_equal.test
index 831ef4c3e6a189a18d30bcaebd03707153f37097..5db8d96eadbed46366aeec4341211dd9abc73593 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than_or_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/optimization_order_limit_optimized_year_less_than_or_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/partition_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/partition_insert.test
index 4e59a2ca3abfafc14cba223dbb20a4aded05b92d..c60a66647ae816d24c86422baccc772349a29339 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/partition_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/partition_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mariadb_10_0_or_later.inc
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/partition_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/partition_update.test
index eaf3304dac59059ce56f73660af8d50394ab192e..0620de86131d9a4c2ba9c42b78a150bb57c40cde 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/partition_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/partition_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mariadb_10_0_or_later.inc
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/repair_table_no_index_file.test b/storage/mroonga/mysql-test/mroonga/storage/t/repair_table_no_index_file.test
index 22fade591b6d3b5d2b72c1f639e84982300c8ca3..0f04bd3e4232e86712d8f6f251fc1be93bb8afd6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/repair_table_no_index_file.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/repair_table_no_index_file.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/skip_solaris.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_geometry.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_geometry.test
index e9ba60c2c28821161ed1a287c6a105f2b52c4d9f..854a93a2f89a35bd9990af0f447cc363094db007 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_geometry.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_geometry.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_geometry.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_select_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_select_varchar.test
index 3ff23185741f559bc7053b57efd80b3f3ddb391e..80b566395408493e44cc50a2c03989e365208de4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_select_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_select_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # Based on #910.
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_text.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_text.test
index 4aba5eda256214915630595f843b22bd075a3970..add74ad7bd8c36bed578daf4fad9a544fbbb112b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_text.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_text.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_varchar.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_varchar.test
index da3faa03053bc81fe9ade2196f8d95367a5f8801..ef4739f175b4a213f1dd749d2539eb3f5554ec9c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_varchar.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_varchar.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_vector.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_vector.test
index 22cbf13889b434c25634f54a496f4cf4f3ad418f..72d233bc577032a517b7ae7d27d4f1dd44d37542 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_vector.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_vector.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/replace_without_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/replace_without_key.test
index db5b90ab0b1664263dbd731995ded02831aa84be..4e408522f220a30613777f049f57409265e799fa 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/replace_without_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/replace_without_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_all.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_all.test
index b607c314a8478aaba0931de7e2e5b89b66e7482f..47f6e65c771f595d4e21c899fdc2551557bdedc8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_all.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_all.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_equal.test
index 52630fec0f077fe06f68fac17fcb3124516a686a..686a9aa206122acab164560d76b8fb610f432825 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_not_equal.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_not_equal.test
index 75d00e7a737896cc05eb1961a6a91addc956062a..2c40b00e4df9a572cb7d6e065be0aa17ee4d9a6c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_not_equal.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_empty_key_where_not_equal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_with_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_with_index.test
index ad71ac7119b392f375b81fc4638917e882b601f1..1d8e84a951838c141ef5cebfdf76acd7cb325293 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_without_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_without_index.test
index 710bea0dd5a0ea85bc5583c59c1fca870a00b20a..5d695d6b7bbd0388bc377a0b8128d4b998b8843b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_without_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_group_by_without_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_pkey.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_pkey.test
index 0bce1387b3f5550c27bd442fc16053c8bcb28ba1..8bfecaf72f09eb7d58345b0c9baf6dcfc465ffb0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_pkey.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_pkey.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/select_secondary_key.test b/storage/mroonga/mysql-test/mroonga/storage/t/select_secondary_key.test
index 32bb5758a10a88d21884324c07925ab2061f1a90..838c01e4ec543c18af8bca098c3e045182d6e820 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/select_secondary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/select_secondary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/show_create_table_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/show_create_table_TODO_SPLIT_ME.test
index 95007d8032fee2bf1bad33d63081f6180c1ec2fb..81004f9bf5def7bec0f1236db48f01b214114404 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/show_create_table_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/show_create_table_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/sub_query_fulltext.test b/storage/mroonga/mysql-test/mroonga/storage/t/sub_query_fulltext.test
index a7460343c266cabc836fd832753574fce4fd2bbe..819a27c1d21bf02a1d13c03e0c260658a92de7ce 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/sub_query_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/sub_query_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/temporary_table.test b/storage/mroonga/mysql-test/mroonga/storage/t/temporary_table.test
index ef26b467dbc891004b91fc715d2c14c980f26c09..14aa7f266dcb8d9c14af2cc998edacd583410b07 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/temporary_table.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/temporary_table.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_osx.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/truncate.test b/storage/mroonga/mysql-test/mroonga/storage/t/truncate.test
index 840ff375489efeab65aeae6c0ddb38770800531b..12adecb640e8ad30935f35479c306ac58b1583f3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/truncate.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/truncate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_binlog_row.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_binlog_row.test
index c90a8cbf1cb35eb42a6be28005ea6e13ff9ddebe..c97b0e4e4cc7ecf6290bf92557b863ed96c2d5e3 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_binlog_row.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_binlog_row.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_fulltext.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_fulltext.test
index dbcfd66546481ff5f15a923001525d8a7ab5b239..73e57dac1541bd1ff67c57b6c6738546e9832d66 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_id_hash_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_id_hash_index.test
index 526d6f18c2055c7496637ec528f512886e4e4ae4..bd1d4537d860bd4927f0c6fdf952f33ed6698bce 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_id_hash_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_id_hash_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_id_unique_hash_index.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_id_unique_hash_index.test
index 0f9ecdbf337972f07ae5ec6f9f257718eecbcbbe..3e05cd494c290c06f67f6820dbe6e45b93db9400 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_id_unique_hash_index.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_id_unique_hash_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_int.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_int.test
index eb4af2c117ecc26bd2787fad9d8fc1d86bc525ad..02151964c56105ae31f067dd477db7831ed5e7ec 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_int.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_int.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_last_insert_grn_id.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_last_insert_grn_id.test
index 872f1673569b72b8c426d0e0b80ee5da8026f52d..7496f7a0b6e6c09e98da3757c4299a8e50a4f48f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_last_insert_grn_id.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_last_insert_grn_id.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/update_virtual_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/update_virtual_column.test
index e0cb953d51dc9ba088968820553c95a85e766e7d..c0f2aece9a88cd071248692a9f4d3a2e0335d29f 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/update_virtual_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/update_virtual_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_column.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_column.test
index 83dc25e498914d4188462d8fd735d38c082eb7c5..b84e955fc81eff849f08962925b0150337be49e0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_column.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # TODO: Remove the check after MariaDB 5.5.42 and MariaDB 10.0.17 are released.
 --source ../../include/mroonga/have_mysql.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_leading_not.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_leading_not.test
index 21879480c7d63535e35f92d20422fe6eca964969..bb9eb04bfe7227f57609249c8687146c6346cc0a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_leading_not.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_leading_not.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # TODO: Remove the check after MariaDB 5.5.42 and MariaDB 10.0.17 are released.
 --source ../../include/mroonga/have_mysql.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_update.test
index 77c4c1db2b14d66f2bc2d2df11bdf22cfabade3b..940b4484a26cd6722c1dd9f80f79b6ebb413645c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_allow_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # TODO: Remove the check after MariaDB 5.5.42 and MariaDB 10.0.17 are released.
 --source ../../include/mroonga/have_mysql.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_query.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_query.test
index b312b31ad393c812799728a997b134b664a5c218..0da5eed73265caa4eb8449c0157b367abd3cadd8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_query.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_query.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # TODO: Remove the check after MariaDB 5.5.42 and MariaDB 10.0.17 are released.
 --source ../../include/mroonga/have_mysql.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_script.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_script.test
index 6509eeee2bf247b98d095d4f4b9879a4a2294340..3c73e214a3a1e38ca3452fdb7be72a38d1cab2ff 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_script.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_boolean_mode_syntax_flags_syntax_script.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # TODO: Remove the check after MariaDB 5.5.42 and MariaDB 10.0.17 are released.
 --source ../../include/mroonga/have_mysql.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_database_path_prefix.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_database_path_prefix.test
index b7a4b80b6f198b7f2541ed9d3ff9c22e69c058c8..9a3b571557571df322863bc66128762adb42f303 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_database_path_prefix.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_database_path_prefix.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_new_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_new_value.test
index 83138aee0ec308b03765413508049f23e617e33c..b3bc8815cb461d335ba0403c91f6cd38f0e39190 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_new_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_new_value.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_same_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_same_value.test
index 41aac1a146fe83c8a32983b1f646c5cbe534b140..46065e415446174d21a66fa09b9fef1f21087d76 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_same_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_parser_same_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_new_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_new_value.test
index 4c518b28e9f9fa801146b1abd540d9f785a4dc1d..5aec9b4fc976d6c765394c8ae7c5b0235ecb2142 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_new_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_new_value.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_same_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_same_value.test
index ebd08460b3c1776780d963ea14fc77c5a0c61dc0..f2ee331eaab63195e71e08629585d6a5c6bfba7e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_same_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_default_tokenizer_same_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_delete.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_delete.test
index 767ce3f9286528b3582e7b27009ce5341bd93f02..349293319d4a15fda45f84dcdfef1f1ef87f75ef 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_insert.test
index 4ad242dd59df84a8407f7c52f65b88d3f612e3d9..ece2a65de0f222f0d0ef743061d2203a7b3f426b 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_update.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_update.test
index 66f82a5c05290e7878cf0c425b197ea867393f6e..a9b3005f6168738f87a8ae7b769d5b9025548d78 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_update.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_dry_write_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_enable_operations_recording_insert.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_enable_operations_recording_insert.test
index ad2b8167d814fbe6f73f4f2dc0ca79b6697f486c..2a77a0133a589852d480e45af868ffdfa26ea7e7 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_enable_operations_recording_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_enable_operations_recording_insert.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_disable.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_disable.test
index a3720f2ef5b355028f17b86017a0cc22dffd6fed..bf9387c8903d0c0aa508e18f544f6dd95e4f16e4 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_disable.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_disable.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_10_0_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_invalid.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_invalid.test
index 54c834d7e4c7647cd82b3bb2dd7d19b89e430aac..1126628d6f47de18b3dd6bd1c0ee023dcc9a1f0c 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_invalid.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_invalid.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_version_10_0_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_no_retry.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_no_retry.test
index 60e468bf0a6eb818876f4f08ca5bd617c91aa46e..aae419e658732437a982315f92dc8c26b36d35a8 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_no_retry.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_no_retry.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_valid.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_valid.test
index 4b490b8a74da87b02b8d5b21551aac8b6b5ac39e..e8eb2952cb0e55a229d2996b7bed758544690ad0 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_valid.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_lock_timeout_valid.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_new_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_new_value.test
index 07a4afbe76e8a066fa7d853fc3663ac1e6c84668..b17163c8f30c8c21ad0d1cc10921c40b61946f38 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_new_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_new_value.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_nonexistent_path.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_nonexistent_path.test
index 13c544b95a57752f8edbe94e06f0902b700a2c3e..40000b4506b0531f6503529e23cdc7983a551dfa 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_nonexistent_path.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_nonexistent_path.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_same_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_same_value.test
index e2cda37b79b391cbc1fd168917b32964d55d2c1a..8333ed4bfb81b988fd211edf41deb1a723fd6e2a 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_same_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_file_same_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_level_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_level_TODO_SPLIT_ME.test
index 2cf196f49ca03344d80d8de8674c4e1cf39d6462..72de94c5d0a5cd78d3c1a3d5a063e7d06acf8d3e 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_level_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_log_level_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_global.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_global.test
index fda1f8768f61f7898b75a6c120d024eec6d886e8..fe026a311ede19a05b79ee96033ae3aeca49e1ee 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_global.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_global.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_session.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_session.test
index 0a7d192f76f1811d7562d14ba3fbd1d19e76c68f..24c5c484d12920bc208933a8372bfcce56b757a1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_session.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_match_escalation_threshold_session.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_global.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_global.test
index 9ce8cf8bae79f82932704a3dd6fad32aa09bb735..56117e2bafc12e7b5c0b50468fe18b1aeaadd414 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_global.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_global.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_global.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_global.test
index 757a7f9590dbdd8439e53a8caf196708464cff90..57e2a186b811b5fe89acb0c346fb6de02bbe26f9 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_global.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_global.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_not_found_in_limit.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_not_found_in_limit.test
index df9f498632e9c1dd0f7f6fa76fe8d8da5b2698a3..f0f548f61b2ff92079f1ed2c068c5da415a57aff 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_not_found_in_limit.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_not_found_in_limit.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_session.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_session.test
index 19b4b2836b16588c505bbc1a7cbee6859190189f..b25e01b78f018c118f7cd104f6f5a83b4ae68786 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_session.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_mysql_5_7_or_later_session.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_not_found_in_limit.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_not_found_in_limit.test
index 0b9357e06c052956d47f49d63a50ac1b0390dcdc..d67a832ad95b6fb710d654a1db06499aa5597617 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_not_found_in_limit.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_not_found_in_limit.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_session.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_session.test
index 5e31c8b0d63b8be230b2891ce917f2c1c4ef5b01..59af3e6a6f0d909ac7aaa2b1eca98d3a45e8cafc 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_session.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_max_n_records_for_estimate_session.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_empty_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_empty_value.test
index fdd21cc0f4dee1e75052f877f854adf54efbf53c..57c62b2b0f34294905d4b6eb812db7b286718675 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_empty_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_empty_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_null_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_null_value.test
index b84fc3978ede9110450eaeb089aa7a9f243f9155..97590b349d51386e97f2f4b323dd73f3a791a2c6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_null_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_disabled_null_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_empty_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_empty_value.test
index 0cb1a8d243af883bbee33ccd9a713c963c191508..3021fe1271dcd399f570285057e661e4377d3eac 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_empty_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_empty_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_null_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_null_value.test
index d1704a43d3ab4d01538ce728331d6e3a1088102c..f233b7ca429e714231c72848ce2326823de29688 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_null_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_enabled_null_value.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_new_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_new_value.test
index e298aaa43b1205ab558c54a7e6b094f88ace9d8c..a98824cf63672fb3daeae0c4df463fc65809aefc 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_new_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_new_value.test
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_same_value.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_same_value.test
index 4c500f1e67414ec72c027bb740799da01d27f6c7..faeb90ba8ce81ee97bd266386491fe6ec4853aef 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_same_value.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_query_log_file_same_value.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_vector_column_delimiter.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_vector_column_delimiter.test
index f1fe11864d91cb10c11270b83d503a9903466089..94e8cb9babb1cd29de11e45f2272c74119a0e6d1 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_vector_column_delimiter.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_vector_column_delimiter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/storage/t/variable_version.test b/storage/mroonga/mysql-test/mroonga/storage/t/variable_version.test
index 2bd4496a2de22c92d6a4510961a243709a945bae..d9795eabdb63a627f6ce98f0be9dd92c2687f3e6 100644
--- a/storage/mroonga/mysql-test/mroonga/storage/t/variable_version.test
+++ b/storage/mroonga/mysql-test/mroonga/storage/t/variable_version.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column.test
index a6d25d3f438262e7603f92cd0e8a9efd32e46760..92e48bb1c157dae23534e03ac9c360b3529d0c99 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_cp932.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_cp932.test
index 49f65449a4d7f7e5c2c3a34ec5b52e57a1907261..21e80a74fd653f95820fef873396f0fbc05ed011 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_utf8.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_utf8.test
index bd5c7389bedf034fb3b1b7a9829a7499c6e8b5c9..f98d0e0da2c5162f6e89f6cd49743c71f6582c45 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_add_column_multibyte_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_column_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_column_comment.test
index dc98dc9c531dcdea2d2e5696db550e430c8a99cd..024da5ece2a8a0d6465923686060d02cbb46efe2 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_column_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_column_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_engine.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_engine.test
index d466b4466f1cbec9fdc659e6463e98124bd6f679..fc0379f280d3b3657d0bbe77827397ef3f5262be 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_engine.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_change_engine.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_comment_change_engine.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_comment_change_engine.test
index ff2b6b47ef1bf5f9eedfa1e08a779f191bfd6e64..ff54f1b53d4484b7fe558a1e7eabc4834cf4a2b2 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_comment_change_engine.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_comment_change_engine.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_create_fulltext.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_create_fulltext.test
index 13344843ebeeafae84fd8a865b9c7b362d74f7c8..80d3ee72e1bbf40cf2e886f89912e9f26a07675f 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_create_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_create_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_fulltext.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_fulltext.test
index 7bfd5fe5070913d927eb4695675b704f2605fbca..867ca370445af7fdd7d934e2f6f848613b14217b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_multiple_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_multiple_column.test
index f05945e1b761c3eb70efa7d47d9f273d3d9533d4..4bf97aace971bea0af2a0cb34d37b074168e76da 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_multiple_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_multiple_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_normal.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_normal.test
index f272698c1a836f2123d3e1eb12ea875a426b936c..0eccfded92f3b34ff7f3e56cfbf85687eec7e5e5 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_primary.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_primary.test
index e1de36d25d1f7b7102a4678f4b28f776d9ffd81e..76cce0c909a38c3985ca7da2a3744fc6a7a68de0 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_primary.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_updating.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_updating.test
index 2c994bdcc769923260df9b894fd16f4b0b919697..de1af71ddd7bc9de267e578b5beee6043634d56a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_updating.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_disable_keys_updating.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_drop_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_drop_column.test
index 01fce22c3f0cf31e9a662fd6bc833c0bda3c1066..9a8c972276bc2f6019ed6ede9463c46850b04681 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_drop_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_drop_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_fulltext.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_fulltext.test
index bc451c354b1991a7841094140c6ee8683ad1e0e3..844093070a512b3bba4fc3caa825889e5aa368ab 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_lock_tables.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_lock_tables.test
index 66ee293bff11fdc061ebd3f86eb76a3a820d7dbf..1532c9169c8cd762945a9fe7d1e7cf9b4fb5fe5b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_lock_tables.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_lock_tables.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_multiple_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_multiple_column.test
index f364ba3d706931ab66b0ed3a04ffdfc69b2a0e0a..78707797425250fde7fb1df0f3faa9e97a65f968 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_multiple_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_multiple_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_normal.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_normal.test
index 7b72b113c790fe2409262cac23d3c3e7195fe13d..2427353ab52ffabbfd9f8f514a6f7631d4e15049 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_normal.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_normal.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_primary.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_primary.test
index 25cdc13ac3599109c44c9f1e73d6da8140f3db9a..7c3c7176bab433528d26b940e187b0f49f83e31a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_primary.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_enable_keys_primary.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_fulltext.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_fulltext.test
index 671b96172319442d6e54c416a2cde197e1269b78..95220759c197d6eaeabe958db77cfe9c5f7d3cc7 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_fulltext.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_rename_table.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_rename_table.test
index 288e5cdc0de610a512b42aad3ac80b9b840cf917..46c57f050004f9e22a3b24e123027d109c758e24 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_rename_table.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_rename_table.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_spatial.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_spatial.test
index bcc043485a0239b3f2a1972aba351cacb2a88869..727557f88fa4e54fbcc02f8d9475a060f0a3e3d5 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_spatial.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/alter_table_spatial.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/auto_increment_text.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/auto_increment_text.test
index 57af6f121cc860b16fc40b7b12b13ad0cf781d1d..e8cd2585b3dd032b7c610383b967724fc21e015e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/auto_increment_text.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/auto_increment_text.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/binlog_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/binlog_TODO_SPLIT_ME.test
index 1c120f364577fafd6dd308c48509ef632bc72f0f..328d2f7d5d16f9360335cae1293b0b01eee961a5 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/binlog_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/binlog_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_log_bin.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/check_table_for_upgrade.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/check_table_for_upgrade.test
index c6d4a92469164f7929096e90a34d94ce4989944d..f846cce797dee050957e0459b7c0c8277e50cdbe 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/check_table_for_upgrade.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/check_table_for_upgrade.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_comment_index_not_for_mroonga.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_comment_index_not_for_mroonga.test
index de195a5b9817b612ea41e7fef34060709f013c56..3213693e25f74c43c3ff04301fe882414647bbad 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_comment_index_not_for_mroonga.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_comment_index_not_for_mroonga.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_add_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_add_column.test
index e10ecfe9b56ae082345752745232b1e73a1e135a..b1c5a80cf3780f4511af4edd893bbe44e7cb4a25 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_add_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_add_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_delete.test
index 784f419e24c82fe40a35b3a9b27ad025e2341a99..5ee4c000348dd58d495f754b44fcd4be415ad68a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_drop_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_drop_column.test
index de2e40680df42548a963eefba1137fa6a70e08c6..4193b268ecba6e0649fc18b7ed1442537a010ef9 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_drop_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_drop_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_insert.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_insert.test
index a8fcf191e081850245fbaccb428538c394929316..bcea1738b049e96d6425f63c70dadad8d9c95923 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_reindex.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_reindex.test
index db4f0ed44603e4c3ca805cca6d4fe97ef881725a..130d41d19007a92ff7216ce5f4feac84a23fe2a5 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_reindex.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_reindex.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_update.test
index a59e5b6c4f10401f2910e98a35f3b4c5ce6468d8..77562cb683191d3a60849b629717365f8bc7928d 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_stored_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_column.test
index 502fb1502ff6e0a37478eaa0bf481aca4b7baa53..68567b8047ac7ece5eb9b129c112c26fd80653a4 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_fulltext_index.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_fulltext_index.test
index 5103a91e909cc08ed74dfe978594ff935553b6c6..ebf7213b63e1f4d9bf0b2641fdf391707533bf4b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_fulltext_index.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_fulltext_index.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mariadb_10_2_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_index.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_index.test
index 3b3b67c9747bffa11393ce2d24e3dda1999a1504..c5719ff7925ceb8ec2084aa5dcb59b2f76ba3e53 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_index.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_add_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_delete.test
index 73848a3f2cb42841981b2561fbe7c7fb345e2599..df3715348bddf497aca72d54a168d557dd237f42 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_drop_column.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_drop_column.test
index cd5a9cb404b76b1ff2488e3b58fa12d7ff07a577..b025fd790550a5ada4775f09197d1cc5787a8eaa 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_drop_column.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_drop_column.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_insert.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_insert.test
index a5180a973d51af20c7ae56a8a66d9ef7098558c8..4ef127f3cf2338a7d7831ffe84625652e313bc14 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_update.test
index c266ffe6ec5acd9ff2c3a5876752c41313e04768..fe9b662bff92ded8fcb5ed0b85a28040b6706f53 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_generated_virtual_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_version_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_cp932.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_cp932.test
index cea67376fa6d419179ee3c0116b9fd0b9d9b96a5..5898e3772c6f45d4af34bee393ef200ac5b1a369 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_utf8.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_utf8.test
index f1e0f39411fe5b412afcf022bb419c65cc490bcc..c646a1d2eba26e241fcc468c0e27831c7d5bb48c 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_utf8.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_multibyte_utf8.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_normal_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_normal_comment.test
index ba5786d05ab2ec03f2b2acbda52ea64ed8abe7c2..802f5beb967743188cf037db9c327cda223f6baa 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/column_normal_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/column_normal_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star.test
index b557a96518aa7baac445983a710b4df35af1b08f..de9e810854648c403f1bfa6d7fef32b5183c0c26 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_mysql_5_7_or_later_with_index.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_mysql_5_7_or_later_with_index.test
index b329d9a5ff61f96514795b1eda291341546b0f88..9a082c69e620665011d711c4d0f1996fc8a083bd 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_mysql_5_7_or_later_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_mysql_5_7_or_later_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_with_index.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_with_index.test
index 0a3a5c818650c8b581c312dfbc82a6c0a6ac173e..dce0899e92c8b30c37e55d7f3a1c26e88c7ce291 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_with_index.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/count_star_with_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/skip_mysql_5_7_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_TODO_SPLIT_ME.test
index 1c0d445013c281e1230a1eb83d56a17dfec19e13..997410b5df856172ed0ae6f571d7a71d7e365263 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_comment_combined.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_comment_combined.test
index eaad5ed47cfc73e112d61fedbbdd7f048ed66d77..e6dd99080027a96654489d083ae1f87e54e19793 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_comment_combined.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_comment_combined.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_comment.test
index 6daa5acfd0f657d7934d0e80d459202389ef1fbf..e5c66243c186a91bff479881fe11d43e2d26008d 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_comment.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_none.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_none.test
index 22d28e941fd459210c8fc87dea6fd9d7ac3039c5..e8b57a93cf9f90e939ea15d0ad6dad0fb78eb5a9 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_none.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_none.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_parameter.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_parameter.test
index c3b689580f6d80ae7733ff7345d82a6eb224b5a2..ca536cc3b4e64268124e51d7ffbd8f126e14389f 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_flags_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_none.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_none.test
index 06cb7658c21c8ced59d18be44e5cb49adbcfe7d1..0b02780dd816c7b1b9d5884873fe171525db8761 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_none.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_none.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_with_position_and_with_weight.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_with_position_and_with_weight.test
index 84dc9d8526a76428a42ad49b043f3e24500a419d..aa0737f445df2576aaa79205835ed28469f34d66 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_with_position_and_with_weight.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_index_flags_with_position_and_with_weight.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_comment.test
index 8846821cfc18c8776fb6a3708ddd679d75792b5a..b393c59ae93d75d2f82c669987106e6799746c13 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_fulltext_index_bin.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_fulltext_index_bin.test
index 5454b176313492ccf1e67f02d33e8e5351c7e0fb..000d2d5bc44a7f5511b813c159a9b81f9e87040b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_fulltext_index_bin.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_fulltext_index_bin.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_parameter.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_parameter.test
index 287d594b7f54c6d7c83508875017cb5e3dc56faa..354d27c66217042c87cbe959bb3c06c44040b95f 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_normalizer_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_parser_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_parser_comment.test
index 54d63fbe49c9abfbb7643221cd10eca8b11cc92c..064685d20b9c5bc2e66df1667f433da4ba0f19e9 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_parser_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_parser_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_multiple_token_filters.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_multiple_token_filters.test
index c79744993e9bfd6585f81de37b6d9eed3c1f2f65..45c758173d40eff3c1b773454dff812877b09ef9 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_multiple_token_filters.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_multiple_token_filters.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_one_token_filter.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_one_token_filter.test
index 80bb5cf8701f2bfea262991ad92bfcb6fe095da6..64732efd8ecdedb7db3bd52037288eed43666b56 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_one_token_filter.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_one_token_filter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_parameter.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_parameter.test
index 99343ec60cffd9aaf073d4801003b5a196ff2021..3fb0caeadf8f143a375d900698209a25b03f7cb2 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_token_filters_index_parameter.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_comment.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_comment.test
index e3e6d671ac6d7ae41120f6311d9aca09dfdaa1f0..29233d0130ce54f1f4853259455fc02c41bf3205 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_comment.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_comment.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_parameter.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_parameter.test
index 3eadb51a73ad30a6688aa5083af57f5384b5f9dd..072ad450680441c3175d3cdeaf6fa1d34f8b2fb1 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_parameter.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/create_table_tokenizer_parameter.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mariadb.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_TODO_SPLIT_ME.test
index b06a60671440c2d639b61d6d40089195f1c639e3..9491ba7f0764318328b01f14a9f6a51b349cc67e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_all.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_all.test
index ca33da8c30972780c2b2162b873763b7f4371793..50ebec44997e46625e22eee86139dab31ba72af8 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_all.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/delete_all.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/drop_table_new_connection.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/drop_table_new_connection.test
index c0f492d1920ad0ad8d0032ef9f3e6287a6e378a4..5e761376afd2696126a284808cdd2e39b31ceb97 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/drop_table_new_connection.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/drop_table_new_connection.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/not_embedded.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_leading_not.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_leading_not.test
index 0234f831fb13b7ac3f4cb0d8420d8c3c3291eed2..92c6b3fd4a4c3a6fff42819a040ec64b8dd6b3c3 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_leading_not.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_leading_not.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_multiple_match_against.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_multiple_match_against.test
index 73de4d5e70e3807f97db6f5862f18dc823a2c8c2..5acbbe5c61ae5f8e91e0715801da20fd187deaea 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_multiple_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_multiple_match_against.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
index 14fba8d22754c46497e696ec051ebbe63090f640..bbd8223b8dab56a495de24a3cf0d3a8bc1e4dc4a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_no_operator.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
index 9cfd841b753bdfa8c70fd0b27dcaed4310201c0c..d49e7e92f44a6366542db11ab7c16e544ed98e34 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_or.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
index b28caa87e2fd1ecd731579d1ee09578cd22c5238..2f90b9656ef5c9909aa4dea93b576b97daeae12c 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_minus_with_plus.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
index 1dfdc49695b11c3c855ec4872bfaa8d31316b28d..dffbb6e37e4a93e6602c2c112fa0932d4de55162 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_no_operator.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
index 66f7aaf880e4bc83aa1542ff90a40c86b9e661c2..310ca900d9dfe96afd72ac281a9c2db19a26079e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_minus.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
index 54278e9768142d6df6f21d3a356dd1893089bfa6..cd65c79242b87941ad7ba163b6512425e7153b5b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_or_with_plus.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
index 459fd91355289c1fdf82840df35b0478751d00ea..3c8145f1c385f4a23f834e25135c07eeb058b806 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_no_operator.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
index 3245501d6b7313d1fb273911bfa2569b39d3d1fc..f7e45706413c3f1646dfdf5ef3719b57496a6b9e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_minus.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
index 0e69941134e4f85824563dbfb48cee5f64315181..94069f9affa9fcf682e01d9aebe60de77383917e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_default_operator_plus_with_or.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_full_spec.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_full_spec.test
index 3191ff6c44c7f534dec7f5049e6c46110e907b55..5c36b04b394a13220356a2bc704444531d2cec13 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_full_spec.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_full_spec.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_no_weight.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_no_weight.test
index 90216c0a438e32ceade9a2e7942c490223b66701..a8ee6cf3cab26d7e8fa2646b855baa6f8117e7e3 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_no_weight.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_no_weight.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_omit_section.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_omit_section.test
index 4a5512791a13f0699bcdf2388aacba9f47865b2a..63379dcd029ee8e01dd30b93a21278664a6a7224 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_omit_section.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_boolean_mode_pragma_weight_omit_section.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_ascii.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_ascii.test
index 27af7f5d8801b030dde2279ac07c7a949ee225e3..5f42b534ba78e2e687fdf86c75679acfdc2fd71c 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_ascii.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_ascii.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_cp932.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_cp932.test
index 912b3c9eec1775682d9796a93d45f02c2e945f6d..b7b5ccf27036851fbd03694c18c3efdbffe5530e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_cp932.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_cp932.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_cp932.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_eucjpms.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_eucjpms.test
index 56309998b426fb13deb4c110261f7484213e6b6e..afe2202775fe4799df836c843cfcd6efca54b44e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_eucjpms.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_eucjpms.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_eucjpms.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_japanese.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_japanese.test
index 589b4d79dcf7687065961e27f7c4584cb1a9f6e3..d013abb587a00ab0b73f61d54df00ed9d7388c5c 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_japanese.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_charset_japanese.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_index_recreate.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_index_recreate.test
index 6b07647625d5ffb316b2f860802e545f600e412e..e6f3d81136bcb95ca77ea3f9bbf30cefcc91a890 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_index_recreate.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_index_recreate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_select.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_select.test
index d4364af2da780171d8b7a6edaf923b547d453fce..38adadeaf77506bf39b5218e92eab00c16e9572d 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_select.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_select.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_values.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_values.test
index ea76dd055dbac3b14c59b81a994db71a851b6bc1..b8e55db4f81819259bbf36672918eacc81955758 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_values.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_insert_values.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_many_records.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_many_records.test
index 38e17700269520ddbc4db36fd75e5c214a5b7b23..a036a5215232440b5ebe09e6266757f9ce5bd642 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_many_records.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_many_records.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_matched_order.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_matched_order.test
index 61ef72370f04604beb342fc04d2bdd7d343d8927..306a12bd34a5f4d3cf58e5b1439ed97c9c281c0e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_matched_order.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_matched_order.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_no_order.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_no_order.test
index 1cc2f6c297af3c662ebac33cee36c37abcacbf05..488af677f1396c67a0fdd7c0ca8d0211170a4ca1 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_no_order.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_have_where_no_order.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_no_where_both_order.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_no_where_both_order.test
index 673ed5619d9b33ea215b2d0ee05371bf2c055cc5..89a0804ee2cd36c7189cf36dcf4c741561b8b692 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_no_where_both_order.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_matched_and_not_matched_no_where_both_order.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_delete.test
index 2d2ffe7b014841723c9f86399c2ec66922e75fe3..0d2e0056bebe5afe78b982f301fcf6fadd2b8134 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_insert.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_insert.test
index 81047e78302c2d127fdb91f0b3df7195a6320437..2886edafa981e9e1b836fbc8be4a9fe3de5470d2 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_recreate.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_recreate.test
index 037784e42511e535f5af2b978506259360bf65b9..249abeedc466acc1473515a27983d07988f05bef 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_recreate.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_recreate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_update.test
index 72662d7809398ed03946f2f655f424469f45fc75..63b5943fa2f895ce5122bada48bd3fe53a72f3c3 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_column_index_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_index.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_index.test
index 8ecb8eeec65cf883dea614cc5c44af97e346a4fc..749b08ee090e4cf1a693fcd90ce5c31077af428e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_index.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_multiple_index.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_myisam.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_myisam.test
index 818624392a4e9dba7ccd9c36c372b94e708b89fd..dc92fafdc0d94882b3c11b61c0a681db5bb36042 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_myisam.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_myisam.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_not_match_against.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_not_match_against.test
index d65fdefd647fc4cc83eb9cfffee9c1777d3a14a4..473fd2d7e58cb9e69d1013b8767409895d741ac8 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_not_match_against.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_not_match_against.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_TODO_SPLIT_ME.test
index 55813bd3fdcc5f4fcada3f903c06aeaa0eb18e67..6949ecd6c849e3928bd679d45572c495d3b6e06e 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_TODO_SPLIT_ME.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_transaction.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_transaction.test
index bcab5307e18b702de2e3f241a2d994d14f0711d6..aa5100121eca49a8936b0cf012596fc88ea4a68a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_transaction.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/fulltext_order_transaction.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_reference.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_reference.test
index f08337af9d1b6a2af1d4823a57c8749865cdd54c..0423e9486a7db2d2e381779b2dafe20a4e59d68d 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_reference.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_reference.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_set.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_set.test
index d1be7ae64da19fb746f54419a19c23d251f5e6b6..046e9d74bf398ab6771eeced16d88287d75f5309 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_set.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/function_last_insert_id_set.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_contains.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_contains.test
index 8c669052d2ecd5179e05d708d6184c95afc985db..80dc209a2203b0d56ad169da99008d878ad5287f 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_contains.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_contains.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_geometry.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_delete.test
index 3a4d399beec21de74d58f1011f07961d6da7de7f..cc4d50b835aa19ca1c97a4c57b22488ed5d293b4 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_geometry.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_update.test
index db7aa344e0af394429275c1e1940dc662cc91264..b340cf710a016b5e409ce3c1ad2a710799962833 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/geometry_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/have_geometry.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/index_force_index_not_used.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/index_force_index_not_used.test
index 1c73f30b60c472a71f01e34bdce6572dffa4ca46..89e873606c76139622325ee657f2fbb6b42b0f0b 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/index_force_index_not_used.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/index_force_index_not_used.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_TODO_SPLIT_ME.test
index 021d3f8e95d5e2a2e31e1685ceceb7293a4eced7..03aa71cd55e2db0f108d3dbc65412ca8335cc42f 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_bulk.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_bulk.test
index b21dcc5b8938854b3695feed22d4038b6da37a27..e315ac5d3b75266bce150450c82b2483172a0942 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_bulk.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_bulk.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_primary_key_myisam.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_primary_key_myisam.test
index 3006bac6d21b561c534966a3d8508786e59f1ff8..e7fba640eacaa34eeb2961d26bd5b6db4ed7a5e3 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_primary_key_myisam.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_primary_key_myisam.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_unique_index_myisam.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_unique_index_myisam.test
index ae993b76b09d56b56ef62ec708751cd7cd142861..dc5d8b5a8828909635f4d972a074fe4ff197a433 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_unique_index_myisam.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/insert_on_duplicate_key_update_multiple_column_unique_index_myisam.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mroonga.inc
 
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_disk_sweep.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_disk_sweep.test
index ce9cf85e7dc13fbf03be3d5b0caa76ba90a454b8..436904e21a22407d718c3e9194c6fff202e77ed5 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_disk_sweep.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_disk_sweep.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql.inc
 --source ../../include/mroonga/have_version_5_6_or_later.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_mysql_5_7_or_later_disk_sweep.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_mysql_5_7_or_later_disk_sweep.test
index fb6529ef782cdb649eb7b52d8ce6f1a4b653dc7e..c883e493863f52b9cd37157c907c8d733961ff75 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_mysql_5_7_or_later_disk_sweep.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/multi_range_read_mysql_5_7_or_later_disk_sweep.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source ../../include/mroonga/have_mysql_5_7_or_later.inc
 --source include/have_innodb.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_TODO_SPLIT_ME.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_TODO_SPLIT_ME.test
index 9aeeef0e8421b48aa266dc5c295c937c7a5eb91f..a47e73f5bfb008db7e673e39a7727ad6f546f098 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_TODO_SPLIT_ME.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_TODO_SPLIT_ME.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_direction.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_direction.test
index 4a2338714e4139112d8388974bef9d47d86fa8d5..21180eb95933d1c1b3b5b6a0d9f55666c10c84df 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_direction.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_direction.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_where_clause.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_where_clause.test
index 8b8e4754dc29f138f9f732a290ac15f7fb0764f3..d40328299b654eb553bd3c01c0dc18b5804f2255 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_where_clause.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_no_where_clause.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_order_by_primary_key.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_order_by_primary_key.test
index f1b6ad62c88a63838634555cbcd0b23a78dc0e2e..2513df8e73424bc479d1f1d65d702e4a83aa820a 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_order_by_primary_key.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/optimization_order_limit_order_by_primary_key.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/performance_schema.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/performance_schema.test
index 5ea33c4e150ce65aa48fb85131ad899c2969e354..6270ea66efbc5835b5cd7e3b4a8e9dfb2ba06a04 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/performance_schema.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/performance_schema.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_files.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_files.test
index 31b4371226136f03bc09fd541f41ddf87d37608d..5d9c5bd221fa1ea16c3315083d25ab6a1ecdbf94 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_files.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_files.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_index_file.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_index_file.test
index f2b1f63a8e03495e97e14dfd8f1c0eeebc2ae0df..2fefadc254d0e8f02a7a17785138a0f92d137094 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_index_file.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/repair_table_no_index_file.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source include/not_embedded.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/temporary_table.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/temporary_table.test
index 143270dcf202f4e34fe2d668ce552b4ef64ede3d..e93f7f794fbb992dd6b79d43ff5ad39e8ac79147 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/temporary_table.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/temporary_table.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/skip_osx.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_query_cache.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_query_cache.test
index 7c848641626d564043f6ea9e937a95bfd44c2f02..4284f60af089ba2e45d33d9fbd4845f4c493b360 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_query_cache.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_query_cache.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_delete.test
index f11ca4a98393d5ab46af99fb57d780af4e192a66..8d3a569d2883136c20b7b3e85dcb9bee5627f6fa 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_update.test
index 36bc09be73bfd0b4e6e6444de82d84f6b5ea6422..df568a79c827f83c0a93fa9d391bca454942e1f3 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/transaction_rollback_delete_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/truncate.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/truncate.test
index b021b26b5e375d41357c0df1b6ed7b7d2d72a249..f538c3d5a5f55dec27e5069950757ab6a9a68ccd 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/truncate.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/truncate.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/update_fulltext.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/update_fulltext.test
index 9052c434c317c137f81286c86d085bc645b20c27..fae21d7b9f0784a0d01e47393e9dade9868f863d 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/update_fulltext.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/update_fulltext.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/update_int.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/update_int.test
index ffa26994efea1098418c05fcb3dcd628f533a96d..a42c06e6e8d8105eb5b6ce298092c61b22da6c66 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/update_int.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/update_int.test
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_delete.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_delete.test
index c6f2a2a14da5c68a697cbb935ffb0238216e287d..2669423ff681f7b292522f2bcd831223d59eca25 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_delete.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_delete.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_insert.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_insert.test
index b80f60fcba553cc96ad3f6fa2abb1840861feddb..5e369b24dce2afd7f7960e98ba656d17b9538679 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_insert.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_insert.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_update.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_update.test
index ab75babfbac946e9b925dbffc090e5576b8222eb..f27e9c7d4402e6976e95a577dea505889cd50189 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_update.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_dry_write_update.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_global.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_global.test
index 71d44ab57043f275397cfc9b1869b85fc28a1901..a81468ea3ad32f56bc914adb0237d94da22b16f6 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_global.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_global.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_session.test b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_session.test
index 91196faf6121ada7a80e6cf9cff95e837457818f..94f1a3ca06b10bc94aad24ec493b2ff72efe5ca1 100644
--- a/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_session.test
+++ b/storage/mroonga/mysql-test/mroonga/wrapper/t/variable_match_escalation_threshold_session.test
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 --source include/have_innodb.inc
 --source ../../include/mroonga/have_mroonga.inc
diff --git a/storage/mroonga/packages/ubuntu/upload.rb b/storage/mroonga/packages/ubuntu/upload.rb
index 1fedb2ecbe644ce50f5fbecad894bc94882b9c0c..c8ca8aa5aa410b640efec07c32667bcaa419eb37 100755
--- a/storage/mroonga/packages/ubuntu/upload.rb
+++ b/storage/mroonga/packages/ubuntu/upload.rb
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 require "optparse"
 require "fileutils"
diff --git a/storage/mroonga/test/run-sql-test.sh b/storage/mroonga/test/run-sql-test.sh
index d3aaf6aecf709e0cde497b10f851e5cf980f3432..589de4788c6fc65bc0d3e6f476f31a0d40866012 100755
--- a/storage/mroonga/test/run-sql-test.sh
+++ b/storage/mroonga/test/run-sql-test.sh
@@ -16,7 +16,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 export BASE_DIR="$(cd $(dirname $0); pwd)"
 top_dir="$BASE_DIR/.."
diff --git a/storage/mroonga/test/unit/test_mrn_path_mapper.cpp b/storage/mroonga/test/unit/test_mrn_path_mapper.cpp
index 54a9f35b03f5325a86cad01c2022e29eafd41ae8..3ede8726f10f77619bc03434b48acbaf6ea84f96 100644
--- a/storage/mroonga/test/unit/test_mrn_path_mapper.cpp
+++ b/storage/mroonga/test/unit/test_mrn_path_mapper.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/tools/travis/before_script.sh b/storage/mroonga/tools/travis/before_script.sh
index e3e22c8768aeab72094eb34794a5a496edc8d7a7..10c319495f375c607961ba6f286bf665cd28f174 100755
--- a/storage/mroonga/tools/travis/before_script.sh
+++ b/storage/mroonga/tools/travis/before_script.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # set -x
 set -e
diff --git a/storage/mroonga/tools/travis/install.sh b/storage/mroonga/tools/travis/install.sh
index 7596c1ccc323007fec7d0a9b98eabddaabb08c35..2c8cdbb838eb51a2d15d503fbae44a896564872d 100755
--- a/storage/mroonga/tools/travis/install.sh
+++ b/storage/mroonga/tools/travis/install.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set -x
 set -e
diff --git a/storage/mroonga/tools/travis/script.sh b/storage/mroonga/tools/travis/script.sh
index bc2a83e8387ef1cbcff4d0e25217d7f0d591db56..1c0121e07edfaa91979851acc34589a32fba1a41 100755
--- a/storage/mroonga/tools/travis/script.sh
+++ b/storage/mroonga/tools/travis/script.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # set -x
 set -e
diff --git a/storage/mroonga/udf/mrn_udf_command.cpp b/storage/mroonga/udf/mrn_udf_command.cpp
index b4d0f8b20a3a43cb60ce396dc96fa1e11c1e9311..10123c6252dac42219ec61209f2f1632fc9f539b 100644
--- a/storage/mroonga/udf/mrn_udf_command.cpp
+++ b/storage/mroonga/udf/mrn_udf_command.cpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_escape.cpp b/storage/mroonga/udf/mrn_udf_escape.cpp
index b97327fb1d0cec0d8d7b97afc9a9c1349e0770a7..72182790fead4b6832eeafcb71cae5531105fab1 100644
--- a/storage/mroonga/udf/mrn_udf_escape.cpp
+++ b/storage/mroonga/udf/mrn_udf_escape.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_highlight_html.cpp b/storage/mroonga/udf/mrn_udf_highlight_html.cpp
index dc46ef5f2055c5dd50ffd13cb1115a440ce931be..12f54a7d16a921bedc16bce7a1a9f09ceffea371 100644
--- a/storage/mroonga/udf/mrn_udf_highlight_html.cpp
+++ b/storage/mroonga/udf/mrn_udf_highlight_html.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_last_insert_grn_id.cpp b/storage/mroonga/udf/mrn_udf_last_insert_grn_id.cpp
index fb4b5440ef10f0aa2e3a34a5bee63ecbfc823b15..46176bc86416506ff34b66ce757345ca37782673 100644
--- a/storage/mroonga/udf/mrn_udf_last_insert_grn_id.cpp
+++ b/storage/mroonga/udf/mrn_udf_last_insert_grn_id.cpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_normalize.cpp b/storage/mroonga/udf/mrn_udf_normalize.cpp
index dd597946ea8ff2688cace9d6487e1bdf82b529b8..303623516f1014465c066a063522a399b378cba1 100644
--- a/storage/mroonga/udf/mrn_udf_normalize.cpp
+++ b/storage/mroonga/udf/mrn_udf_normalize.cpp
@@ -15,7 +15,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_query_expand.cpp b/storage/mroonga/udf/mrn_udf_query_expand.cpp
index 562499242fc085ceda73407acebe87cbef870a8d..03bef3215c74f30fdebdd46a03434eb8d52bf5c1 100644
--- a/storage/mroonga/udf/mrn_udf_query_expand.cpp
+++ b/storage/mroonga/udf/mrn_udf_query_expand.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_snippet.cpp b/storage/mroonga/udf/mrn_udf_snippet.cpp
index 7a35225545d4097b98a95fccc23c61a755321158..a4b37d03a4f62743d7497390e1acffe9fd3a7473 100644
--- a/storage/mroonga/udf/mrn_udf_snippet.cpp
+++ b/storage/mroonga/udf/mrn_udf_snippet.cpp
@@ -16,7 +16,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/udf/mrn_udf_snippet_html.cpp b/storage/mroonga/udf/mrn_udf_snippet_html.cpp
index 99c9edfbba84f5427addf5cdeb29539cc3a8b1c9..311c91bf66585039edbeb5453389721e6cc127eb 100644
--- a/storage/mroonga/udf/mrn_udf_snippet_html.cpp
+++ b/storage/mroonga/udf/mrn_udf_snippet_html.cpp
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/CMakeLists.txt b/storage/mroonga/vendor/groonga/CMakeLists.txt
index ee526646c092a50b73f345ce7355aa8ca7e6a077..e1f45b7fda95e70eeb96f39412079acff93f52d0 100644
--- a/storage/mroonga/vendor/groonga/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # https://buildbot.askmonty.org/buildbot/builders/work-amd64-valgrind/builds/5263/steps/compile/logs/stdio
 # says CMake 2.6.2... We want to drop old software support...
diff --git a/storage/mroonga/vendor/groonga/COPYING b/storage/mroonga/vendor/groonga/COPYING
index 4362b49151d7b34ef83b3067a8f9c9f877d72a0e..a22bbf7e16f19e00bfff2412010b19bbb8eb3805 100644
--- a/storage/mroonga/vendor/groonga/COPYING
+++ b/storage/mroonga/vendor/groonga/COPYING
@@ -2,7 +2,7 @@
                        Version 2.1, February 1999
 
  Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -485,7 +485,7 @@ convey the exclusion of warranty; and each file should have at least the
 
     You should have received a copy of the GNU Lesser General Public
     License along with this library; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-between-sequential.c b/storage/mroonga/vendor/groonga/benchmark/bench-between-sequential.c
index 53bc3af53885575d2940265c9712daed9345861f..f0b7cf05fa01a8b6471bf451ebea9f992c547ad3 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-between-sequential.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-between-sequential.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-cache.c b/storage/mroonga/vendor/groonga/benchmark/bench-cache.c
index ee54209c7ab1123f1a3793b949e9af00ac86e31b..104a7c19e24d9df84e020a9e60b12445ddada803 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-cache.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-cache.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-ctx-create.c b/storage/mroonga/vendor/groonga/benchmark/bench-ctx-create.c
index cd6a99a401f56ad067b49df3511ed71ea38d469b..576ac8ee634bed9bba75600dea5f243fc817b407 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-ctx-create.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-ctx-create.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-geo-distance.c b/storage/mroonga/vendor/groonga/benchmark/bench-geo-distance.c
index f77cfb1d3e757689c3cb33d0afe26771cfecca42..0b648a1c1348328db87205265b1aec9a6e426095 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-geo-distance.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-geo-distance.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-geo-select.c b/storage/mroonga/vendor/groonga/benchmark/bench-geo-select.c
index 31be2c7ad17a9df6d5de49fcaeb623c80e9b4871..dcad47fdf253bf90202f98e2d1d62ed15e9af2fd 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-geo-select.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-geo-select.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-nfkc.c b/storage/mroonga/vendor/groonga/benchmark/bench-nfkc.c
index 96b1c9bc6e27ef5ceb91348f7905acf0bf5d005c..ebae95b273beb9c282e6655d1cd09669257744c6 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-nfkc.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-nfkc.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-query-optimizer.c b/storage/mroonga/vendor/groonga/benchmark/bench-query-optimizer.c
index 4ce55c55b6ab2b4b8da9e3ad7ab56ab6fb8aa30f..48c2cb0f4426eb5c99a2a6034181c46d0daabeab 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-query-optimizer.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-query-optimizer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-range-select.c b/storage/mroonga/vendor/groonga/benchmark/bench-range-select.c
index a0664d582706e21a93ecf272d0aa93c3ba0a96b5..11df9c10d4d3118e3c6136a3257ca899aef95fc0 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-range-select.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-range-select.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-result-set.c b/storage/mroonga/vendor/groonga/benchmark/bench-result-set.c
index cd4866e5033c95e8eea91a4ed6e054dfdfa5c9b5..bba5baead327bd0beafe9017ebea508f457836c4 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-result-set.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-result-set.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/benchmark/bench-table-factory.c b/storage/mroonga/vendor/groonga/benchmark/bench-table-factory.c
index 9e378f5530b88dfa1e8eabb4e8ee09f841acc851..025b0750cebb9c3bef622a0f4b10ef282aa36308 100644
--- a/storage/mroonga/vendor/groonga/benchmark/bench-table-factory.c
+++ b/storage/mroonga/vendor/groonga/benchmark/bench-table-factory.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.c b/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.c
index 3eb86a2645a46d7a6ed8f2d682cb97bca340a49e..cb43597626f6ad79af29cbd24a59cc8d90167deb 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.c
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.h b/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.h
index 7ac51518d677b8ccd942479dfb63392260196436..d2c408c799f28ed7f01274b41786fa3273daff5a 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.h
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/bench-reporter.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef __BENCH_REPORTER_H__
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.c b/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.c
index a4279731374bf77238dab52048baa6685dc8a4fd..ef731b5191fa5e6faf5da24cc42f24b8d625fa75 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.c
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.h b/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.h
index cebf5c2e6ac9f662541762c274198bdbe9587025..b48e6f34281d947a579963c06cf7b9396c2e26cb 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.h
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/bench-utils.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef __BENCH_UTILS_H__
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.c b/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.c
index 3bcbacbb8bbfbfd11115be71a74d7f136cb62322..679889a4cc287c58cfb6105e3a984e186c14af1b 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.c
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "benchmark.h"
diff --git a/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.h b/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.h
index 87f4ed871ca003261fd98ab9669897e05063ac5a..7d34b8f2b1846066413b7aa8360febde92ba893f 100644
--- a/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.h
+++ b/storage/mroonga/vendor/groonga/benchmark/lib/benchmark.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef __BENCHMARK_H__
diff --git a/storage/mroonga/vendor/groonga/bindings/python/ql/groongaql.c b/storage/mroonga/vendor/groonga/bindings/python/ql/groongaql.c
index 2eae9dacc68933c31cacfbcf5b3041f051d8ee75..27a35ab9d3329cc45e1fe668b3db1680f8822d3d 100644
--- a/storage/mroonga/vendor/groonga/bindings/python/ql/groongaql.c
+++ b/storage/mroonga/vendor/groonga/bindings/python/ql/groongaql.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include 
 #include 
diff --git a/storage/mroonga/vendor/groonga/build/cmake_modules/ReadFileList.cmake b/storage/mroonga/vendor/groonga/build/cmake_modules/ReadFileList.cmake
index 018587991d8d3a4c385d5d27896ea32d543f9b0c..204f59f60bf1be669497999b43baf512b3e78f3b 100644
--- a/storage/mroonga/vendor/groonga/build/cmake_modules/ReadFileList.cmake
+++ b/storage/mroonga/vendor/groonga/build/cmake_modules/ReadFileList.cmake
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 macro(read_file_list file_name output_variable)
   file(READ ${file_name} ${output_variable})
diff --git a/storage/mroonga/vendor/groonga/include/CMakeLists.txt b/storage/mroonga/vendor/groonga/include/CMakeLists.txt
index 7594c6e6c66815b050a25621e84082d1368ec902..791395f74e7abe7276fff261825cebcb42fdebb1 100644
--- a/storage/mroonga/vendor/groonga/include/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/include/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 install(FILES groonga.h DESTINATION "${GRN_INCLUDE_DIR}")
 install(DIRECTORY groonga DESTINATION "${GRN_INCLUDE_DIR}"
diff --git a/storage/mroonga/vendor/groonga/include/groonga.h b/storage/mroonga/vendor/groonga/include/groonga.h
index 6e1be29d27910c486eb6cb9333cd838495911542..4476eb1e88fdf92be883349dc72cf869076886f0 100644
--- a/storage/mroonga/vendor/groonga/include/groonga.h
+++ b/storage/mroonga/vendor/groonga/include/groonga.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga.hpp b/storage/mroonga/vendor/groonga/include/groonga.hpp
index 3d8313b4e373bb20fea566bcf936719b622dd20f..010ea41bd41d66da80c619aef417cf264f707868 100644
--- a/storage/mroonga/vendor/groonga/include/groonga.hpp
+++ b/storage/mroonga/vendor/groonga/include/groonga.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/accessor.h b/storage/mroonga/vendor/groonga/include/groonga/accessor.h
index 43953287bef44da69388a6f9f6a0e67a26754497..4fc062c57b517a08ea9abe5dada2302aecb21148 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/accessor.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/accessor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/array.h b/storage/mroonga/vendor/groonga/include/groonga/array.h
index 9c5e5c02adaf17b2f96e276ff437ecd6c2af5942..c16ef216db871f103e99652892da95d68e943ef1 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/array.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/array.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/arrow.h b/storage/mroonga/vendor/groonga/include/groonga/arrow.h
index 248b44df43cf89915646fb66b2ea509c40045b5b..82e945cca814a4d68738dcd04aa4f25939b291da 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/arrow.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/arrow.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/arrow.hpp b/storage/mroonga/vendor/groonga/include/groonga/arrow.hpp
index a35a4aba61d937479d1f787e86b2e7de4751e117..0b434d395090988773bb9d5fceb1ff4416125824 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/arrow.hpp
+++ b/storage/mroonga/vendor/groonga/include/groonga/arrow.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/cache.h b/storage/mroonga/vendor/groonga/include/groonga/cache.h
index bba72243fd7f9a43c30b871ae2e70b54c7093a8b..68325e52416548ba19711777f22150a3aa1509d9 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/cache.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/cache.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/column.h b/storage/mroonga/vendor/groonga/include/groonga/column.h
index 434543c22353ec3fca554a91df7a97110692e96a..6eacc89e05a9bb481e2e43fb3a69c6da650b1f63 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/column.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/column.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/command.h b/storage/mroonga/vendor/groonga/include/groonga/command.h
index 6e0880965d9808ebfd10df2dd91c075aedca4119..cccb6a97d2b2826c44151f2650a80883c56e0e15 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/command.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/command.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/config.h b/storage/mroonga/vendor/groonga/include/groonga/config.h
index 8a8a5fc3f91b58a84c393f3d4f11e6aa4788d5ba..bf4b94196ef2e4f0aaafecb4292d1a38b3c56749 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/config.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/config.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/dat.h b/storage/mroonga/vendor/groonga/include/groonga/dat.h
index 164c7e7935efddb9d54a17c7b2bfbe5dab30c17a..e30df402c5dbaf6c165415070c0d1b2fb84adac9 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/dat.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/dat.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/db.h b/storage/mroonga/vendor/groonga/include/groonga/db.h
index cbfbfec302f76ca68e27394797343864f8ef8be7..e4217b4f5e843d918ed01f962003744f9ab6145b 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/db.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/db.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/dump.h b/storage/mroonga/vendor/groonga/include/groonga/dump.h
index 4f292f480a86128da4389e1c901c074c128a4002..6c673ea91491608d0bfa204f340292e7607dfa7c 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/dump.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/dump.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/error.h b/storage/mroonga/vendor/groonga/include/groonga/error.h
index abf3aa293e677b6a85b875a55b336522cf5a564c..a63a52b6dbdc89a45e9b570fdc156dbf6d888305 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/error.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/error.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/expr.h b/storage/mroonga/vendor/groonga/include/groonga/expr.h
index 0665f7f5907499a81703638831730b8c44c8f0b6..8090bc780d434c9e934b4d1ecb3197fe1aa7cbf7 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/expr.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/expr.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/file_reader.h b/storage/mroonga/vendor/groonga/include/groonga/file_reader.h
index 743240716a2e8616d098320e52edcf3ce26b8980..4b3fee70a24312fdda63c9bd2aec66580bd113a9 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/file_reader.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/file_reader.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/geo.h b/storage/mroonga/vendor/groonga/include/groonga/geo.h
index 30fbb8d25ee01322b6caf300878f4da0794f4973..d1049350f5ff8b7aca871d236ad37dc266eecccb 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/geo.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/geo.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/groonga.h b/storage/mroonga/vendor/groonga/include/groonga/groonga.h
index e289bf97f3777ed6ed5c19dab1b6f426529ebf84..b08403676c0f1a1adc13978d88c03fce4003d7a8 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/groonga.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/groonga.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/hash.h b/storage/mroonga/vendor/groonga/include/groonga/hash.h
index 7dc2df45f4b5022ffa9d80fa48dedb7723ad2b84..6a008176d80419a686f91010dbce125c4e0678c7 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/hash.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/hash.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/id.h b/storage/mroonga/vendor/groonga/include/groonga/id.h
index 3284320edd753bdbca5c94096de54b170d496e27..ddd7dff184627c6238425cb6bacdcd4741733a23 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/id.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/id.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/ii.h b/storage/mroonga/vendor/groonga/include/groonga/ii.h
index 2e8aaf7dbd1df089879708d32c1275778007b56c..d1913961214420c46d2c3d3e5668e994d2072767 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/ii.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/ii.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/nfkc.h b/storage/mroonga/vendor/groonga/include/groonga/nfkc.h
index f77ff118de47f1363d1e355be20311eb638987f0..e771fd9b9b46bfd6d5989d5934e76fa448e97e39 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/nfkc.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/nfkc.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/normalizer.h b/storage/mroonga/vendor/groonga/include/groonga/normalizer.h
index 8276892650977a265cc8198df621cc1a559ca67c..b95ef6a2ae787ffc84609e137ce0ac5fd5c3c1b1 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/normalizer.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/normalizer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/obj.h b/storage/mroonga/vendor/groonga/include/groonga/obj.h
index 7bc554950fcc6c63b6bb17b044fa725f3028407d..32cc2d2c0d2c10ae73aae498a8b8bdc030e57b1e 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/obj.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/obj.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/operator.h b/storage/mroonga/vendor/groonga/include/groonga/operator.h
index 3e79e4015deb157a8ac12af9d7e1f5187b6cbfd3..7b45ac9eda8029bc1e69750d15ead45fcd810e4f 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/operator.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/operator.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/output.h b/storage/mroonga/vendor/groonga/include/groonga/output.h
index d5241aec638d938865434bf4b4158b1db07a2599..cc33693cef02e4a759d1f53900c43963e4a50018 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/output.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/output.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/pat.h b/storage/mroonga/vendor/groonga/include/groonga/pat.h
index 27f45c0f63c3f6dfda22ed43ba7929195fe18b5e..c700851560592240eaeb100308a647c995c6ba06 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/pat.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/pat.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/plugin.h b/storage/mroonga/vendor/groonga/include/groonga/plugin.h
index d241444549ff8327aa9597e38400b57341a8153a..23d3d606ec8a92ebf4a39c19366c80e2bcb4f573 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/plugin.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/plugin.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/portability.h b/storage/mroonga/vendor/groonga/include/groonga/portability.h
index a45ba2f5702185c2362f660e583a45e0dc44a211..faee70b9c814cbf327cbe8235caed5d34f0ebf03 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/portability.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/portability.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/request_canceler.h b/storage/mroonga/vendor/groonga/include/groonga/request_canceler.h
index a837b606a38cc6803cf891a26ca6ca704f123ce7..5cb4702aa7f6892a23598985c09f33cdf56affb3 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/request_canceler.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/request_canceler.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/request_timer.h b/storage/mroonga/vendor/groonga/include/groonga/request_timer.h
index ccc093b05952665b8f201fa50b0e1c9d50d1a0cc..4bae968bc0dc13e4430a96feef87ec4631067005 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/request_timer.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/request_timer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/scorer.h b/storage/mroonga/vendor/groonga/include/groonga/scorer.h
index 7ee3f92a1c08269cbcf94dd3d6a2799caf8aee21..5ef4db5d9d0a0bc73d9ed645d7296c0c7e196d12 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/scorer.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/scorer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/table.h b/storage/mroonga/vendor/groonga/include/groonga/table.h
index f9de43f46e8fcff28bcd62d41fe55e7aaf76196e..c276df99903a55ec10dfb7c7c7857295beee8f81 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/table.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/table.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/thread.h b/storage/mroonga/vendor/groonga/include/groonga/thread.h
index c7c8f80147b86ccb752416f393289f0513428e74..20bfcb39dba684ef31a732af98d8a209d29d48cc 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/thread.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/thread.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/time.h b/storage/mroonga/vendor/groonga/include/groonga/time.h
index 44379598e8e5cb5f060cc17ac34a4233f4444613..9f9427a71f11533c96199aaa3686e889817b5981 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/time.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/time.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/token.h b/storage/mroonga/vendor/groonga/include/groonga/token.h
index af5e656a305f434153534d192a4e1728e174130c..c40203c607516444cd615895a8867574110f9687 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/token.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/token.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/token_filter.h b/storage/mroonga/vendor/groonga/include/groonga/token_filter.h
index 6b09add127d4b63797a178bc243838f806e642d9..982f7df7a3e593ce8073ee39f3cd35c4afd51d2a 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/token_filter.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/token_filter.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/tokenizer.h b/storage/mroonga/vendor/groonga/include/groonga/tokenizer.h
index bdb1c41aa3a048e032b283df3da33c64c1286f84..a29c9e9eaae6082de38fc8a30998e7f5c170648a 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/tokenizer.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/tokenizer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/type.h b/storage/mroonga/vendor/groonga/include/groonga/type.h
index c68dcd1acd7e8dff740b4a53006d2fa46f12de14..7e9c15946ca3dd78cba63dbda4862fa1c6b8b6b7 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/type.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/type.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/util.h b/storage/mroonga/vendor/groonga/include/groonga/util.h
index 0a574c665bff077aed0b69d742d0eac468a0854c..4c9b704c15ba3acc4b820c2146b2daaa5c714356 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/util.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/util.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/window_function.h b/storage/mroonga/vendor/groonga/include/groonga/window_function.h
index 404fd04bbeed4c35bc77a477078f625aea80fee7..56ca323c858077b7f54650c4b4358f9cf99096e8 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/window_function.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/window_function.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/windows.h b/storage/mroonga/vendor/groonga/include/groonga/windows.h
index 1984a773297d27a47779bfd690a3f5f77bf82772..fe4e5227624b7fdc0323b744217cbaa34cb7e780 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/windows.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/windows.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/include/groonga/windows_event_logger.h b/storage/mroonga/vendor/groonga/include/groonga/windows_event_logger.h
index 7fe6ea8f5cc115450f289cb32ff3631286a99c81..ca838f8145bcd9861a436836defb1c6b507fecd1 100644
--- a/storage/mroonga/vendor/groonga/include/groonga/windows_event_logger.h
+++ b/storage/mroonga/vendor/groonga/include/groonga/windows_event_logger.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/CMakeLists.txt b/storage/mroonga/vendor/groonga/lib/CMakeLists.txt
index 64fadb8bbdd0bd2e2bb9421ae5ca244408f120e2..21628b26ce2ceeee40a524168faf185befde303c 100644
--- a/storage/mroonga/vendor/groonga/lib/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/lib/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 add_definitions(
   -DGRN_DAT_EXPORT
diff --git a/storage/mroonga/vendor/groonga/lib/alloc.c b/storage/mroonga/vendor/groonga/lib/alloc.c
index 5d77c19e74c098cb01ed919cf7afb78cb6f4054d..0adade0f402ce51ec6005aae8f16aff0f6f20065 100644
--- a/storage/mroonga/vendor/groonga/lib/alloc.c
+++ b/storage/mroonga/vendor/groonga/lib/alloc.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/arrow.cpp b/storage/mroonga/vendor/groonga/lib/arrow.cpp
index d96231f76e45210edc31cb83fa1466c9b6ebfe34..5f022ed179eb8ef540a89645dfd366c3b689f8cd 100644
--- a/storage/mroonga/vendor/groonga/lib/arrow.cpp
+++ b/storage/mroonga/vendor/groonga/lib/arrow.cpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/cache.c b/storage/mroonga/vendor/groonga/lib/cache.c
index 38238f6894baec050d794a130bc4dcec255cf412..79a2c678244d7015e805e0002ef67b0e66af5623 100644
--- a/storage/mroonga/vendor/groonga/lib/cache.c
+++ b/storage/mroonga/vendor/groonga/lib/cache.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_cache.h"
diff --git a/storage/mroonga/vendor/groonga/lib/column.c b/storage/mroonga/vendor/groonga/lib/column.c
index 63c5d5921327c90b9a49977762b3fc1870b4865b..ecfc71b7cb67c89df8526c90aab3b2a9177cb52d 100644
--- a/storage/mroonga/vendor/groonga/lib/column.c
+++ b/storage/mroonga/vendor/groonga/lib/column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/com.c b/storage/mroonga/vendor/groonga/lib/com.c
index 59ce80b4444cbe04c7e2dbcf93093ee0316a116f..2def22efd39352d9aa7819e5c5af6a26f841c0a1 100644
--- a/storage/mroonga/vendor/groonga/lib/com.c
+++ b/storage/mroonga/vendor/groonga/lib/com.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/command.c b/storage/mroonga/vendor/groonga/lib/command.c
index 82db2170da9a5eb0821935e4a7b8045e6f600279..3da5871b2c9c605afb788e9fdc58e0bd301f4341 100644
--- a/storage/mroonga/vendor/groonga/lib/command.c
+++ b/storage/mroonga/vendor/groonga/lib/command.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/config.c b/storage/mroonga/vendor/groonga/lib/config.c
index ef40cc9c4de4e231f7fbbdfb6f85bf74c808e5aa..8a0e3a5268c43fdea467960ca9506de395d60bbc 100644
--- a/storage/mroonga/vendor/groonga/lib/config.c
+++ b/storage/mroonga/vendor/groonga/lib/config.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ctx.c b/storage/mroonga/vendor/groonga/lib/ctx.c
index 1b9bcc3acb1825e540d074facea8b78da4abb4f7..dca4d1d90ba476df6e2801314c937ffa8630caeb 100644
--- a/storage/mroonga/vendor/groonga/lib/ctx.c
+++ b/storage/mroonga/vendor/groonga/lib/ctx.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ctx_impl_mrb.c b/storage/mroonga/vendor/groonga/lib/ctx_impl_mrb.c
index fdb25108d886eebdbf82307304ecf5cea8584c56..7f554f3fd8f3d0da2a0f6241d23779245a50bc6a 100644
--- a/storage/mroonga/vendor/groonga/lib/ctx_impl_mrb.c
+++ b/storage/mroonga/vendor/groonga/lib/ctx_impl_mrb.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/dat.cpp b/storage/mroonga/vendor/groonga/lib/dat.cpp
index 51f625f0b3fd753fe92160b90cfb4eaef4f827ca..1446be7cf63f9b5b141f39a94c794f8fb0294bf5 100644
--- a/storage/mroonga/vendor/groonga/lib/dat.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat.cpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/dat/array.hpp b/storage/mroonga/vendor/groonga/lib/dat/array.hpp
index ba297e81c4bc9d2227611e78bea22af4ab0286cc..de60e3bd59038eb13911fa138d7c2c5b6e8ddaa1 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/array.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/array.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/base.hpp b/storage/mroonga/vendor/groonga/lib/dat/base.hpp
index 6f80d7c29fa3efc93ae469e500693c6d431010af..51ec6f2f615c6b07f56481d782dc8965365549c8 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/base.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/base.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/block.hpp b/storage/mroonga/vendor/groonga/lib/dat/block.hpp
index 4f1e78b0bf796126e83572448e1024b040e4d289..34e3620a73b6766718c026ce1ac797575ad15d24 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/block.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/block.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/check.hpp b/storage/mroonga/vendor/groonga/lib/dat/check.hpp
index 27abbc9873e9844f25ee54b3f00ad78f67589711..f77148c60a953afef423cc5d43573efaaf686272 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/check.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/check.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.cpp b/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.cpp
index b47323a2b2988326109f3cf3bc3fbc3b07ee50dc..0e97e527ec4efb9c3d1c82d469816864faae4605 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "cursor-factory.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.hpp b/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.hpp
index 48a0ac5052f7fa3a19ef46cf1447d7449f5a97ed..d48ab16da1709431c2c93d91e3a56c34f9b24ced 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/cursor-factory.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/cursor.hpp b/storage/mroonga/vendor/groonga/lib/dat/cursor.hpp
index 2dfd98ff1de03383d34b9f7fe4554f06cb65c5d6..357b5250e99203ba2895e4c4c8334b0055a5df66 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/cursor.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/cursor.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/dat.hpp b/storage/mroonga/vendor/groonga/lib/dat/dat.hpp
index a454ae7caec3e401b333c53a6b6be716c9b47040..1afbd0955bc3be5b4370a1fafdca490edbe1f735 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/dat.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/dat.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/entry.hpp b/storage/mroonga/vendor/groonga/lib/dat/entry.hpp
index 47916e282fcb814eb345c1aad64a1f80167e1018..ecb9b53eda71b32bf124323272bc1a43a2dafc4e 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/entry.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/entry.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/file-impl.cpp b/storage/mroonga/vendor/groonga/lib/dat/file-impl.cpp
index 5bd442ef4b7e2fb358a2e4aae73187b39ff40249..7032eff39bcfc58e1fcedf1be2ae4d2291ddb592 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/file-impl.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/file-impl.cpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "file-impl.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/file-impl.hpp b/storage/mroonga/vendor/groonga/lib/dat/file-impl.hpp
index 830cf773799d1997478b05c3292991b468711c97..7b9c8c766f1fed7d4b7729b804de300dd321a3f6 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/file-impl.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/file-impl.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/file.cpp b/storage/mroonga/vendor/groonga/lib/dat/file.cpp
index 82d6159ed09519878461aa34276ecd0e87dbdce6..84f2a1fb2ba8db511f3b9a9b1088b2390c584073 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/file.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/file.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "file.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/file.hpp b/storage/mroonga/vendor/groonga/lib/dat/file.hpp
index 25d988d3e1ed4b591b34ec11fc654a3fd279faac..722b93dda4836d96ada7caa277360cdcbe4bab99 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/file.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/file.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/header.hpp b/storage/mroonga/vendor/groonga/lib/dat/header.hpp
index cf213076275f8ef68744a07cda30f89b50f667bb..dbbb1efd97ebeb7a399d74f9b03b7eb347578f20 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/header.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/header.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/id-cursor.cpp b/storage/mroonga/vendor/groonga/lib/dat/id-cursor.cpp
index 784175f37ab729d16b5f26e6b714f66cf102338b..de969839586c509f9208de5029aeddd753ac89e5 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/id-cursor.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/id-cursor.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "id-cursor.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/id-cursor.hpp b/storage/mroonga/vendor/groonga/lib/dat/id-cursor.hpp
index 0e02b2250876f23d08a08f5573f5bdf357a9c7b6..60953faeb2ff09101ffe3cb160f0bd629d1c4c1f 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/id-cursor.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/id-cursor.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/key-cursor.cpp b/storage/mroonga/vendor/groonga/lib/dat/key-cursor.cpp
index 6bf864dba559c25009eb23d863863f77c2adc6db..2ce04feee603748a97d4ec5b8b8baa318f4e25fb 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/key-cursor.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/key-cursor.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "key-cursor.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/key-cursor.hpp b/storage/mroonga/vendor/groonga/lib/dat/key-cursor.hpp
index fcaa9355098939304470b71ffa1d8fd172f322b2..56392b63c23361de5214cde9e0e00db2199dd7fd 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/key-cursor.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/key-cursor.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/key.hpp b/storage/mroonga/vendor/groonga/lib/dat/key.hpp
index 95fb2b425acdf03168a6035ea94b0d35e51c22f9..eb0324cd8d3cb1abedd28f66d1563a5e99ec001c 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/key.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/key.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/node.hpp b/storage/mroonga/vendor/groonga/lib/dat/node.hpp
index 7f22d67d35d4317f7edfdb435e718da8476e85bd..29febc7d8b41f3261e1e96cb0e3cb96ed9604020 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/node.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/node.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.cpp b/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.cpp
index 4737d8412698688ece7f09b3b35441c626509555..675203057037b8b98786dcdcb9dc06909658ba13 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "predictive-cursor.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.hpp b/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.hpp
index d02b7787503ffef01c05e373b3d31b5ffe384179..88a950b8bbad2db685231d23942da911f8a12b0d 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/predictive-cursor.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.cpp b/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.cpp
index 7f994b5dc57221fe4327eba9a0369bbae58b234a..83adeb3731e092e5fbdc7dccc61106d40c2ecbb8 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "prefix-cursor.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.hpp b/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.hpp
index 9d2a62666ad7a5f8f37b94129153ec05e62256c5..07a59186b373db555acf5083dbcb04eb40fd4078 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/prefix-cursor.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/string.hpp b/storage/mroonga/vendor/groonga/lib/dat/string.hpp
index c6bee8641d51ef2ee528647d4eea37f62810480f..aead21cac1804cdae96a767c5a1601b73788ca2a 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/string.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/string.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/trie.cpp b/storage/mroonga/vendor/groonga/lib/dat/trie.cpp
index 1022c2da0a3762261a98174daf3d9969434e5fed..b2c6a84ffa7dc29fb3f5f9442ad7be27995306c4 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/trie.cpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/trie.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "trie.hpp"
diff --git a/storage/mroonga/vendor/groonga/lib/dat/trie.hpp b/storage/mroonga/vendor/groonga/lib/dat/trie.hpp
index d6e5b9c284c7f41a41b91cbee4363300864c22c2..bf7d0b988c797823522be7eedfb880b6d9669524 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/trie.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/trie.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/dat/vector.hpp b/storage/mroonga/vendor/groonga/lib/dat/vector.hpp
index 202203334abc815024f0ee38a2e4f884261fd156..8a67b27b253fb55fc2e05c4b04827688ea201328 100644
--- a/storage/mroonga/vendor/groonga/lib/dat/vector.hpp
+++ b/storage/mroonga/vendor/groonga/lib/dat/vector.hpp
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/db.c b/storage/mroonga/vendor/groonga/lib/db.c
index 34e3392244cfd3d0ff6724840441f538d8d32bb3..aeaff66f0f4781f36856ccee40843bb4fa521b51 100644
--- a/storage/mroonga/vendor/groonga/lib/db.c
+++ b/storage/mroonga/vendor/groonga/lib/db.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include "grn_config.h"
diff --git a/storage/mroonga/vendor/groonga/lib/dump.c b/storage/mroonga/vendor/groonga/lib/dump.c
index 0c6eb6801804bf41e7b907ad2f5767eb8f0ef55e..72017fe332465a64689aff6386c8ab9d87dbcc1d 100644
--- a/storage/mroonga/vendor/groonga/lib/dump.c
+++ b/storage/mroonga/vendor/groonga/lib/dump.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/error.c b/storage/mroonga/vendor/groonga/lib/error.c
index a745dd8fa0897a66ae757c20a2a10186a3c37a6b..9fd03291f82f66bbc53365bcbc589e0aacf8aa20 100644
--- a/storage/mroonga/vendor/groonga/lib/error.c
+++ b/storage/mroonga/vendor/groonga/lib/error.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_error.h"
diff --git a/storage/mroonga/vendor/groonga/lib/expr.c b/storage/mroonga/vendor/groonga/lib/expr.c
index 5b1d01678b04b23da5924089d09b8b45af378ab0..d190d3e0de4b24b65611d3d363db556cdddb1ce4 100644
--- a/storage/mroonga/vendor/groonga/lib/expr.c
+++ b/storage/mroonga/vendor/groonga/lib/expr.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include "grn_db.h"
diff --git a/storage/mroonga/vendor/groonga/lib/expr_code.c b/storage/mroonga/vendor/groonga/lib/expr_code.c
index c12a3cbc8d2474e2349673313d75d70d984f194c..a2dfc60b537a1eeb17c4b85ea45b097d51d92dee 100644
--- a/storage/mroonga/vendor/groonga/lib/expr_code.c
+++ b/storage/mroonga/vendor/groonga/lib/expr_code.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_expr_code.h"
diff --git a/storage/mroonga/vendor/groonga/lib/expr_executor.c b/storage/mroonga/vendor/groonga/lib/expr_executor.c
index 4fcf93a40f91ccf7b3b970bf909fdddbf0967eca..bc78a650037769ad1b11e01e01bd4438325fbf46 100644
--- a/storage/mroonga/vendor/groonga/lib/expr_executor.c
+++ b/storage/mroonga/vendor/groonga/lib/expr_executor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/file_lock.c b/storage/mroonga/vendor/groonga/lib/file_lock.c
index 3f00e45a93a8fd06a741f7030d1bb286eb5f39d1..3cf8acf1a6c008f476dc228ff28dc4f2ecebdec1 100644
--- a/storage/mroonga/vendor/groonga/lib/file_lock.c
+++ b/storage/mroonga/vendor/groonga/lib/file_lock.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_file_lock.h"
diff --git a/storage/mroonga/vendor/groonga/lib/file_reader.c b/storage/mroonga/vendor/groonga/lib/file_reader.c
index b19a626d7511f17adea88155665fa86fe945ad2f..0ba23274970b84f91f25331efceccd7699adaa3a 100644
--- a/storage/mroonga/vendor/groonga/lib/file_reader.c
+++ b/storage/mroonga/vendor/groonga/lib/file_reader.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/geo.c b/storage/mroonga/vendor/groonga/lib/geo.c
index deb8399d6d761a358e0db7fecfc8ecb8ea91deff..26aca4458cee8d624dde8dae7e77d501c3a70a33 100644
--- a/storage/mroonga/vendor/groonga/lib/geo.c
+++ b/storage/mroonga/vendor/groonga/lib/geo.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_geo.h"
diff --git a/storage/mroonga/vendor/groonga/lib/grn.h b/storage/mroonga/vendor/groonga/lib/grn.h
index 0d0768eba41cd7c28e48138541bdd1e0d3a76241..c213a3625f94e9e2b02b6de41a34b59d61db350f 100644
--- a/storage/mroonga/vendor/groonga/lib/grn.h
+++ b/storage/mroonga/vendor/groonga/lib/grn.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_alloc.h b/storage/mroonga/vendor/groonga/lib/grn_alloc.h
index 8ea98cdb99886f447e9967c1fa3d47bcdaca3304..c90591136f6b744043a8325e8c29c8bc2083f927 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_alloc.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_alloc.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_cache.h b/storage/mroonga/vendor/groonga/lib/grn_cache.h
index 15a36f8176c4830fbe43de70eaf0e89d383bce4f..a0cb9c378fae851dcc4fe0c7e75d1ac55c2862ea 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_cache.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_cache.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_com.h b/storage/mroonga/vendor/groonga/lib/grn_com.h
index f4077237105c113ee7714fa03e9b03c34055a0ca..505e87a516f708a77980547dc5766940f034aade 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_com.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_com.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_config.h b/storage/mroonga/vendor/groonga/lib/grn_config.h
index 18d29fa0039aa518017a86b979f3a088bca40731..75e23a461bbcac1f7f0a5a49e218f9e41a4518f0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_config.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_config.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_ctx.h b/storage/mroonga/vendor/groonga/lib/grn_ctx.h
index 51eebaf3d0b21413a5cef8ee21c924297dc900e8..9e82785f9074069204be2b2441c9096df0df5e6c 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_ctx.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_ctx.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_ctx_impl.h b/storage/mroonga/vendor/groonga/lib/grn_ctx_impl.h
index 2d72065d4f0e84c9082adae8f2b043cf8dc04f38..8f300f092c9e52e6f45c5586ec052ee944a709db 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_ctx_impl.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_ctx_impl.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_ctx_impl_mrb.h b/storage/mroonga/vendor/groonga/lib/grn_ctx_impl_mrb.h
index caa303461efccebc78537665249f840ef4c0bcd7..e3d619abef7f9eac7c3c190a80d8919f6a944a06 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_ctx_impl_mrb.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_ctx_impl_mrb.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_dat.h b/storage/mroonga/vendor/groonga/lib/grn_dat.h
index 774c026940c84f813668004b52380083236692be..7d0d0c8dfd6235bd35b97ccd4119e73b142885dd 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_dat.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_dat.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_db.h b/storage/mroonga/vendor/groonga/lib/grn_db.h
index f0fbddad882f31e63f2e901a5bed000b3b36a746..d3a6b48b4cc5cc4cde9caa70aaff77bedd99fea0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_db.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_db.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_error.h b/storage/mroonga/vendor/groonga/lib/grn_error.h
index 897ae50070e935080d4be4c6b95ae56d21c3a9bd..6917de83e1e083e7f08a8b4b0038f0d5631a0d99 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_error.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_error.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_expr.h b/storage/mroonga/vendor/groonga/lib/grn_expr.h
index c20821f995f7008c9b95bf01bd515c9b3c2a40cc..e270e1854c836efb534481fffa77e2c584563a7b 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_expr.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_expr.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_expr_code.h b/storage/mroonga/vendor/groonga/lib/grn_expr_code.h
index f33c532ee54a332872d4c5c3108a92c6daed50df..48c907d50ebd4f0dd969309e83647f00fc796644 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_expr_code.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_expr_code.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_expr_executor.h b/storage/mroonga/vendor/groonga/lib/grn_expr_executor.h
index df00134cf21a4dc65ec466fcf4715c95ecbbd7a5..1f2a1f4eda6d88a7af6420fbaa8e9a3f8bf6aaa0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_expr_executor.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_expr_executor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_file_lock.h b/storage/mroonga/vendor/groonga/lib/grn_file_lock.h
index 43ab576337cb22684d436801ed1dac25a17d37df..538e88af54a269ee6444e620d3f14e09e00e83e3 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_file_lock.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_file_lock.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_geo.h b/storage/mroonga/vendor/groonga/lib/grn_geo.h
index 884287aeaebe877843fb242eb6cef4c131ff475c..9597336ab561c6599529cab4e33ba21d8b5788d4 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_geo.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_geo.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_hash.h b/storage/mroonga/vendor/groonga/lib/grn_hash.h
index 6e851c212108f76e3a885607db690abbcbd44147..4038909bde910e3b275a302072c84ea521a8d749 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_hash.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_hash.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_ii.h b/storage/mroonga/vendor/groonga/lib/grn_ii.h
index 21f57e2f1070b97741661ec7c5b050680dabcb54..0598c9e7013c4413a080026d7e0697618ac90762 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_ii.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_ii.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_index_column.h b/storage/mroonga/vendor/groonga/lib/grn_index_column.h
index afaed9c90107339387afb9fb7a02227be5174674..b9142d5c1a5e6f7344cb0299a3d5e7a9cadcbe3f 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_index_column.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_index_column.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_io.h b/storage/mroonga/vendor/groonga/lib/grn_io.h
index 6cea27f29b23d99dbb80d113dbbbcb1484d0021e..bc5ecf7fa1e9b6587f82bc139e7496f11c943f8e 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_io.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_io.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_load.h b/storage/mroonga/vendor/groonga/lib/grn_load.h
index b4345c953a8113c044647fe04d7bd06a63513e9e..a3b909b2db39658ac5fed5571fba9ca24bd3fbab 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_load.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_load.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_logger.h b/storage/mroonga/vendor/groonga/lib/grn_logger.h
index ea0a85fb2e7aac81b2557fc755e2c9f46d1118e3..58d745cff3aae806a6285acccc788157c78581f0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_logger.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_logger.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_mrb.h b/storage/mroonga/vendor/groonga/lib/grn_mrb.h
index 2fd00b328f508851dd574a4087bb4e8cb0076f8b..d1e20a66752e9109216c29337bb89d3a8c4abfa0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_mrb.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_mrb.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_msgpack.h b/storage/mroonga/vendor/groonga/lib/grn_msgpack.h
index c153d83bbad71b3223822b090241fabeb7d2cd40..3452d588be36e31f4455a983457e6e63fc05df54 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_msgpack.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_msgpack.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_nfkc.h b/storage/mroonga/vendor/groonga/lib/grn_nfkc.h
index 139cd5b952e65ba9febfa7d0c350ebbdd7a5d36d..33119d55d2db7469eda1717d37bb0f18a3c04a54 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_nfkc.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_nfkc.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_normalizer.h b/storage/mroonga/vendor/groonga/lib/grn_normalizer.h
index 3afc9bcef09ad1226932adc5b6eeffb5738ab472..2ff500473607e99330068f5fcc3c41859bf2bd69 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_normalizer.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_normalizer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_obj.h b/storage/mroonga/vendor/groonga/lib/grn_obj.h
index b05a3778dff0191593c2b31775bf227e39d4ad66..48eb503b2fcfc3692818ab86d2d4e915dc0a89f7 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_obj.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_obj.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_output.h b/storage/mroonga/vendor/groonga/lib/grn_output.h
index af99b0c9ccd2426bb5cbdd3eb82d4a818203e74c..1436410745728d283d069fed4ef82ad39d039842 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_output.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_output.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_pat.h b/storage/mroonga/vendor/groonga/lib/grn_pat.h
index 69a5d0c10755b8c748ce49939d6352cc225fdb24..1a7e3cfbd7e01c1e47fa2f5519e51c847c3cc599 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_pat.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_pat.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_plugin.h b/storage/mroonga/vendor/groonga/lib/grn_plugin.h
index 3e7b9528848eca46540b9812d276c9e5e2d82919..0bed139c7c7b1e2f8085022f10a3e7a33ebdca54 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_plugin.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_plugin.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_proc.h b/storage/mroonga/vendor/groonga/lib/grn_proc.h
index 961ce3e46a956004846f51e0c6d51da691267904..267ef01becd703a173d6c5cb4b82a7e10b6057b8 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_proc.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_proc.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_raw_string.h b/storage/mroonga/vendor/groonga/lib/grn_raw_string.h
index b115ad8381356e58120adca2110754411cd1e7f4..2b5fdc9c72d6af1c6d610d903f3a519862469d3e 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_raw_string.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_raw_string.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_report.h b/storage/mroonga/vendor/groonga/lib/grn_report.h
index a8bd52fcd1b8b04f38402653877975001d5b8d5c..bb76caf7ebb1c8d010ea8d288039faac2369972a 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_report.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_report.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_request_canceler.h b/storage/mroonga/vendor/groonga/lib/grn_request_canceler.h
index 212605394e41276826675e7c6180e3c99d9e973b..ddb4031a8e19fbecc41287327daf035bd5f33c8c 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_request_canceler.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_request_canceler.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_request_timer.h b/storage/mroonga/vendor/groonga/lib/grn_request_timer.h
index 696687d0c66672a92d63cb8a5a20bf29376ac111..4a45751c51d1380ee3bca518db16e2790fe40b4b 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_request_timer.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_request_timer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_rset.h b/storage/mroonga/vendor/groonga/lib/grn_rset.h
index 6a6a8b83fbef167e8260169b2edcfcf51e50dbb7..5ca6e8d566343762062fc826c2ced531bf177e90 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_rset.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_rset.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_scanner.h b/storage/mroonga/vendor/groonga/lib/grn_scanner.h
index 617c2b89abab2647f4a21540191f6053fa2dc364..8ea8597bfd9367b376229648a5689766bc57bf09 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_scanner.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_scanner.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_scorer.h b/storage/mroonga/vendor/groonga/lib/grn_scorer.h
index 438fd87abf70c77b058afcabd5b3e065e3b8bd47..04e8bfd52ef2a775c3a6e198d4c3cfd8befbabda 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_scorer.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_scorer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_scorers.h b/storage/mroonga/vendor/groonga/lib/grn_scorers.h
index 4a6f1e255a227494825be4b9c74254290860c822..1f136a9c16746818f9f1e50dbf4adb5bd3e40102 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_scorers.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_scorers.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_snip.h b/storage/mroonga/vendor/groonga/lib/grn_snip.h
index 023a1d1b2b374b1518cd07133a670cbc57a66c10..3989a17d5377c03471f8ef2ccb9b62aa54c905c3 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_snip.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_snip.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_store.h b/storage/mroonga/vendor/groonga/lib/grn_store.h
index 67f183e71e817c285b1e08e97596d243fa520c45..8de6fd66eced597410926b67623f630317b9f13a 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_store.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_store.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_str.h b/storage/mroonga/vendor/groonga/lib/grn_str.h
index 61711aa7a43649767e5ac610cbbfacfd4be739bd..9efd28e3bcd825c7de9da466533650cc999f5a5c 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_str.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_str.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_string.h b/storage/mroonga/vendor/groonga/lib/grn_string.h
index 95454ef0e850f16e67c56e6560e00c3c3c3303a1..39e76c96881edf836a370359dc42fff804013608 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_string.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_string.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_time.h b/storage/mroonga/vendor/groonga/lib/grn_time.h
index 1db99481e675304de9475a9a2d6cb55e043b4d7e..b34f6687ff0d9fe53bdcc6f8cf055a223a85abb0 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_time.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_time.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_token_cursor.h b/storage/mroonga/vendor/groonga/lib/grn_token_cursor.h
index 17858f2362d33c77927fe032dcb110a2fdeaf41f..a89f4c684524e08f48ff42609d3140ed1086c7e2 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_token_cursor.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_token_cursor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_tokenizers.h b/storage/mroonga/vendor/groonga/lib/grn_tokenizers.h
index d52bbbb63ef14785adfe471d20ae64273a3fd2ef..e90dbfc0b3112bfcf1708061f5aa3654d8ab1dbf 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_tokenizers.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_tokenizers.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_ts.h b/storage/mroonga/vendor/groonga/lib/grn_ts.h
index d6939646e5cd5caa99e64cf5b9e6f534cb201306..83f4dca80b6c44ac49f1a187ebb32becff373667 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_ts.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_ts.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_util.h b/storage/mroonga/vendor/groonga/lib/grn_util.h
index b9ed347a97a9b71dd3991eb9807b8b5273b3e13a..5b888fd5eea975fbaf9bb35a195efb49f2810ba6 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_util.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_util.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_window_function.h b/storage/mroonga/vendor/groonga/lib/grn_window_function.h
index e5179848704101dfda250adfb4b53d701c504c45..c5894241dd081a79d778d31b8658122498ff0c4c 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_window_function.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_window_function.h
@@ -14,7 +14,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_window_functions.h b/storage/mroonga/vendor/groonga/lib/grn_window_functions.h
index a9d1e6fd9c38cfe166dcb55ac4085c17370ae378..c44e65a1ca9ee752d1cbadb0021afa4411d48215 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_window_functions.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_window_functions.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/grn_windows.h b/storage/mroonga/vendor/groonga/lib/grn_windows.h
index dd80aa54b7a10ac5545128067cb42f704c613e40..aee18aec738cfd641ab6e16a421385a89e8ae6dc 100644
--- a/storage/mroonga/vendor/groonga/lib/grn_windows.h
+++ b/storage/mroonga/vendor/groonga/lib/grn_windows.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/hash.c b/storage/mroonga/vendor/groonga/lib/hash.c
index 905d27c0a59e547d6148dbe3324828e69d0eb559..8fe180481c97d10ff5d147ab9329d20ea662df56 100644
--- a/storage/mroonga/vendor/groonga/lib/hash.c
+++ b/storage/mroonga/vendor/groonga/lib/hash.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn_hash.h"
 #include "grn_output.h"
diff --git a/storage/mroonga/vendor/groonga/lib/icudump.c b/storage/mroonga/vendor/groonga/lib/icudump.c
index 233aef7bfef36e1b57b7cb4ac5912f9342a6bb88..91751f94290998d1cd0acb4d7203cf4c2509958e 100644
--- a/storage/mroonga/vendor/groonga/lib/icudump.c
+++ b/storage/mroonga/vendor/groonga/lib/icudump.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include 
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/id.c b/storage/mroonga/vendor/groonga/lib/id.c
index 5cf96c8a08fdccbdffd40510158a02530520d05c..96eae9f989921a88c1fb925fc930155c72bf1fed 100644
--- a/storage/mroonga/vendor/groonga/lib/id.c
+++ b/storage/mroonga/vendor/groonga/lib/id.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ii.c b/storage/mroonga/vendor/groonga/lib/ii.c
index 04f8ec0d408b6f7c891c9207049122703a87c34b..3a62d03ab0a3c416d17e9a15d628ff179280f2b9 100644
--- a/storage/mroonga/vendor/groonga/lib/ii.c
+++ b/storage/mroonga/vendor/groonga/lib/ii.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/index_column.c b/storage/mroonga/vendor/groonga/lib/index_column.c
index 9838eb5250895d2142732401465cbefe0e982071..c4a2a7c6f70253835d4024c9874f340979da3c63 100644
--- a/storage/mroonga/vendor/groonga/lib/index_column.c
+++ b/storage/mroonga/vendor/groonga/lib/index_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_index_column.h"
diff --git a/storage/mroonga/vendor/groonga/lib/io.c b/storage/mroonga/vendor/groonga/lib/io.c
index a20fef614c731a718e5eb90629a4f2482dbd7cfa..013595218799e914b57c04e6558e18c0dd14ffe5 100644
--- a/storage/mroonga/vendor/groonga/lib/io.c
+++ b/storage/mroonga/vendor/groonga/lib/io.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/load.c b/storage/mroonga/vendor/groonga/lib/load.c
index ee0a1e2a045a4180f62729b2bf2ff96cfaa7057e..b840a0dc8cb0facb2ead0e0e3f1fb43b4822c215 100644
--- a/storage/mroonga/vendor/groonga/lib/load.c
+++ b/storage/mroonga/vendor/groonga/lib/load.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_load.h"
diff --git a/storage/mroonga/vendor/groonga/lib/logger.c b/storage/mroonga/vendor/groonga/lib/logger.c
index d86b0b92579a97a10607379a59141975a765c7c0..9c1a2dbd84074e711b067f8c9b8e9b69e50db580 100644
--- a/storage/mroonga/vendor/groonga/lib/logger.c
+++ b/storage/mroonga/vendor/groonga/lib/logger.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_logger.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb.c b/storage/mroonga/vendor/groonga/lib/mrb.c
index 3293c0196ad1b820f7723e41e416358c187e2458..f5bb49fbd6e8a1d691e72748d0cbf7722ce6e2ad 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_mrb.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.c
index 0ef790544baaea72b48e87ba332b0363e39cd314..ef341d3a151d6829c736a511a16e4b152ec4b198 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.h
index f8aca1e870f538f2acb2f577b784ddedf051e8da..4443f7d5c83c35c7d82ba3dc8760edb379caebfd 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_accessor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.c
index ab0b3e57bbd325937ee7d91dbc7ca1d8a16a045d..2d1e84cc9217e5d00e9deb0164541fde53c48111 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.h
index 39e8f5f81c8ec7e49dcac431ed91e6e7e06ae834..77ef94d5c30d0cf109f51c5ac3cf27579bd6f235 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_array.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.c
index 6fa4258673e060dc3aaa3ab691ec50ec2fecd573..b3c47795812f477634dffc79dca57f97579e4a33 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.h
index b351a78ce812b50308a26487e37b32f5770e5eb7..f8f14b5f98cdc3efc7efa95f43e042da25e2e0f5 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_bulk.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.c
index c0fa33b89c49b5ad6fc0f1533c613d01b1c954ae..843350f917042e0a88859085e8eee6937e8ed186 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.h
index 0eb7963b2bd7540e9361e11aad1e76549c97bd4b..14628ba803378ccedf90e41298172b0b03ac18b6 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_cache.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.c
index 268558dd35908bf37a072eb7ce10acbb7dc33ed4..b36a42bfd12d7efdeb69ecf5c1e45b91a4120fd3 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.h
index c692e76f5878785e26a2185bca1289faea4c694b..110b294c1c31bcd0120ea6161e8035a5df8b3ea6 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_column.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.c
index 802012ebdf9186e953e01325aea6a4733f82d8c1..0c9c74811b26305262fb2d42282f1678e092875f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.h
index 6bbe4830a89fd859a9d53d03196c6bb81e7bfbd4..1872ca9f911b1d56ef36791352dcb58e82590c46 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.c
index 07c0a74dd3105cfedc436e4307233e21ac9eaa0d..36570fd1d16b44e2148b8561cb092c914828dbde 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.h
index 074912d92958f9a7f378caaea0a2810304158262..7766d8196316c740e81898c3a154da0b22bdc512 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_input.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.c
index 89ecef30981ebae71cff3140069c491834587a27..8c7c0789513c6534896caa13553ed0bc1d5544ff 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.h
index 556964a7b71f4b5e9067e6e92f3d2094c8f6240a..167b7cb9a7bfcc0b6e02052321e442f4c184e3bd 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_command_version.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.c
index ae94d2d5118846312143f4e7a469f1be369b3933..52c722a456f464bb7e734fc68ce8d7681bea1c2f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.h
index 5b6c95eb8495aa00d87c9ac4e0a60193c9d4ecac..a460db09b9006a63e9a0aec213229408f84cbe7c 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_config.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.c
index 7f4ff139de15c5097d29180c73b5a5d14275f5ac..1010a42919133eff385a5e15170b0c4fc399424b 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.h
index ed0b999a721ed925b7fa7d5ef3c3a888065e4b34..094f3df0cacbf2c3b6f5742b11d7e92e16b5eaa2 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_content_type.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.c
index 4dae6ba2c4db6823b31db8d3820abcf86ae2be76..147c47a334112e0f7e0338c32dd0814b8329cf93 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.h
index c7628a66e867b27e8f74516e7faa81429471fbe5..9b8546ddc70957502aa4d2f09217403bab659762 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_converter.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.c
index e4d9eed651f63b42c1e3b6db4b530837e3970367..e89df53e40ad6e5e3a49bb490f1323bab2382ec9 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.h
index b94128292afe28b014e6d3f5e9fed3c786aafc95..72519ae62ba84b0dd30d69d9a0ae88e6648c15cd 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_ctx.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.c
index f9133167a4fa83a7875ec23e3ea96ca8bd795cee..5ff2bdbef0d941500414338b373b2beb019862c7 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.h
index 7601cddfc94bb819da57557781abe6601f0a0e93..512e33c9084747bb62139de157b471350b874af0 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_database.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.c
index 5c034090b29cb51c50dd2a93e78da4f85da57996..20007fef5d69f82df022b1aca64ddacbd06724c6 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.h
index a9109a499773fc5deec235e7665b2791f0069ec1..4e7bd59dd789f74f64b8069c9a263d9dc9ecd35f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_double_array_trie.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.c
index 5ba86341f92487d74d12a9e74bd5befc53248879..f162d49950f1b54167c7173684c3d98a3928ae2a 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.h
index e68805076be91cbd67be837ba8dc95a85bc1ec4c..917bfec5099c8db57396100ca435e4a6e90b1d5e 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_error.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.c
index cd23c4eb1eca9a2299cb124c2852de2d53861809..fd5be59ca47e6bff498188372b0a2c36836614ba 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.h
index ef61ed5dd2623714caf84344bf6169936a91bc11..c277ed5e086a8504ff1a917554a0266222791456 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_eval_context.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.c
index 47ef3b5b11d92fd6f46115d8ed775d1c3b4b55b9..2b8f6a04cc7810e5ed08030248ba5c411fb2562a 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.h
index 14a5f975d3e45053c94f1efa5b69360d8b84b699..22b20220b78a879253b2f50ecd127a9d61ce82fe 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_expr.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.c
index 130225029a2d65023fa103f8642a0656b4884b3b..b1545dbcff26547ebe48d88c52b84ded7301dafc 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.h
index 95d8f507a7b1031d79ab182cfa62c221e2953009..9498d3373130f4c64a5e4b52c1de4882eb71523d 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_fixed_size_column.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.c
index ee71987b01c010dc2c575421017fe7e0645455c2..cf9a0d91ac4bccd6651287008aabe942ff3f46c8 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.h
index 0fc40b2ba9975ddbc2b85fdd2d6b0d6091f83887..d6b747f0ded10227119db03ae8b98558c984838c 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_hash_table.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.c
index f55960716e9c41c028366d92f6ac97711174060c..d5970fee017a9b0002500c61994f9bfad344af47 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.h
index ff277340c4c082bf414dc70e5a0233308e55928c..b5418b736049bcf9eb9dc2ff3292dc5840551ce0 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_id.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.c
index d31336f0a38b87ddf24d5dade9985543a9be0615..02a3901b49390a804a874661c22569dc3ff9156e 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.h
index 0aa29eea8e9f42f0a64f5fffc7b705909b29364e..085a2d3a6db45db891e51a524e833fabe19bb55e 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_column.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.c
index 0992661318c16f72fa4b545ef10d2caa371d8031..20f1e64f3f18e2ccc7befb720b74d0e675ce388b 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.h
index 0c9d7b5495227f4644d179e85a6c165d53432be9..c1026002d831acbb7c224c09f35a9532ac0ca40b 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_index_cursor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.c
index 47a469358d02599607eaff2bed3369d019c33506..cd8f44aed62643e7b88c3506e96adacb37f1d6c8 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.h
index 7634dd6f5ba689677328c2667b48b6828366abe2..3b191c723b07b27cc75f787537d47febfb6b665d 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_indexable.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.c
index 3ba09d0295b23881a8556a29446007e7c536b84e..d5ed72dfad3c134be25354ada06176cb0b9a6c8b 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.h
index c6a1ede9df229304597f87a0daddf92016c91acd..d23ddb19ba8017f279932322d8475b5aabcc1190 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_logger.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.c
index ffa2c55aff7f736368628132bacacc93912a202e..874d4addd0a879d4a3cfab35db476c852adcd363 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.h
index 0eebe54771f9b5dd9cfd6fcb489a8926403ee2c9..5650ba28523fd1fd72f9f427371a66880a84331a 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.c
index 21d5b310f28a81efe9efaecf59aa6170b46d67cd..1fb70299c25aa7a5b69f890eb768f154b4162d63 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.h
index 59e5680ea2d0c1a88d3d890aefd4e71be9a9df7a..6f7bd7f7ad1368d3d7340cf2edd14a4cbc6919b2 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_object_flags.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.c
index ed16a02303492f5f21d0da50d305ff6d83641457..e0ef4727251d4de40e7f1712126a41c656a35335 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.h
index adbb3e24b56c90061235bf04b45970c90449e1fc..6f27e1371b9355cdd628d036c11af518d2163703 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_operator.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.c
index ff3a1c0e7314a23e5726f7449a4f11e9883acac5..445bcaf634a2ccdf90b4f08f4ecf13e482057cb3 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.h
index 1523f05e2d30c2f225d45db7a1d694a495efce0a..0cbd7bb71f344ba88a2f855d08e022ae60275a8a 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_options.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.c
index d2486f21c377ce37a4a6594b9b7217a60ce66fa7..bd206b5c2a28c606acdc59e479f8415320a3774f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.h
index 9a34bc2ae534f2d04015b2fcfe096eff152ce7ee..11da13a385eba32638ed386152953e86ce0d5ff9 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_patricia_trie.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.c
index 7440dc0b140fb7b4f2120e7485b8273c416d32f3..b0d60f18183a5209db2ecbd49d707e936c654cf8 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.h
index 2ee7fba4bdcf7e07d1797a7f40424e866998ebd0..5fe1dfb479dd6c66818b9ff57452f8284a17e020 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_pointer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.c
index 2b425d6a5ce1e4948d6bad2fd337409683fe00a3..f5045dc1a8e7f6f8e76a2460defef7b34176a92d 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.h
index 32135335a7228ad3674b8ee11ce5d216b79831b5..5d64fcd00a9a5d871e5404c0b43d95c7d649b039 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_procedure.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.c
index b2f5e79ed4526d76b811507033af84bee06ab8de..d19ca78075e1abea51d8cd0dd7c9f933776a9aa8 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.h
index 8293f3993205099bba93d718d14f6d92bef13ab2..c0ea5eaff60e75e66f02686c3e10f6a2e855d554 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_query_logger.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.c
index 84d061ad4974ab6cdff362cbab22841d076e55ec..57411d271fc673c5ceb550dbfe373f2088433ea3 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.h
index ad6e01d910f10d9b726ed0f8f65aded83159d94f..9c0e6eceed4f03cd4549e8fc722d70550a398d42 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_record.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.c
index baf110ad6f8f44489d003aa400ed760f9ebff89f..fecc6e3de26e2bb587930ce2a8e01935e5ea323c 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.h
index 3af173aa314131da8cd734914c83534a79f5d4a8..fd06db5618700708ee079d6d8782c045e1c26bbc 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.c
index 4a3ad93e53ec4550a4e7961fb06ca6afe8e33990..a7748168f04e2399149816a39659072cdf45b7f8 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.h
index 6d3e2c4bef0132002583a1a073b342ec312c84a7..6ffd51af7dd100e10131a283cd42d1ed2245f8f1 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.c
index 8b889fc5b47bc09f48d09afea0653b189987aa99..58a3137a30e0a2c70a3da8e470e01b724d691926 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.h
index 058de5ee6a452abb4798bea2da40977703c618c0..5db915a716fdd3c8474228226eef29e48e73b649 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_cursor_flags.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.c
index 9419f1b7939de3306996f09d8efbfc2523be4f02..8984ebefa1848fa42e18425b23995c60bc6ba5a0 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.h
index 1c80df39dceff475fc36836b12a5b02c5d026b74..4230a2404409ff6301113e73963369bb9538c8a5 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_flags.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.c
index 02c73c759c181e77c14885ffc8a6b5b850420e4b..c4aaafa410b8843bd40fc10e7f358ecbc796264c 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.h
index 87615ebdc774d11056d48d4f712703b5052bfb73..c3b17af20b910a52a5904ea1cad9d70b2919aa14 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_group_result.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.c
index 0c402591042b135f92bdb04c877790c7de5f2b48..47f0169ef48c00de1e5c8e62f22d42616a1e372f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.h
index a8e35f4952065cff2530f40a82cc8dbf9f7cdff9..7450399e2e39911707cd1af1be3d5ed973ae102f 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_flags.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.c
index 860dd2b476d6d549330b3094f765f48cbd38257d..f8692d48c410ad6fcd5b4caec68f3bef5ab2a3b3 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.h
index 9825ca80c6f38600116330c07efd3ae914f2b818..9ca38bfcaaa5ca956d541b8d661e421c9f5af571 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_table_sort_key.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.c
index 6085543e19227bf351a46e3b885c5dc3e687d561..ba3a7e7b2d90ef317b84fdf040a3f7e308265c84 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.h
index 946dd698e4c1339647c1725920a22036fbb819bd..030eafed79baaa5ffa3a5aff363fada3e57295e2 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_thread.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.c
index 9fe602e6c40345a9811c33baa19c8380ef7badae..a288d60f12a597a3003ea5374c92660052a8fe6b 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.h
index 17b43944699f3a4c30e6f6bd0cc66ef4dff1f004..8dc74b79d48e95d3ca37a0d345d414d95ab49da5 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_type.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.c
index 153b28066d8ad9072cc3fc629192892b6deb308e..78f3de86d81e1ea094580bad33c656618d657c75 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.h
index 16d5403a9528abbfadbebc3bf765c88aa0651046..1bac1238b3b79fd8a8b41893d8d78af2c1d3c81c 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_variable_size_column.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.c
index bdc451930f6d76b32566fd4c215b38e84b6efc4b..33cdea6c45031cfafedbb2623e1718c38ae35dc5 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.h
index 3169334fe25f51753f4e5850a1e57301017a8bc9..dced27476ce9f1a7ca7aaa66f6163059786eb907 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_void.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.c
index 964a84211532945f46706d78ef76c61c0dcb696e..86ff372e77324d0b7d09330a75dab9b57649f244 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.h
index 871be3432a5733375eebe746aeca57f07c366e61..ea1b8ef6242b34262913ccee675e27c095b69a9a 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_window_definition.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.c b/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.c
index 20ebd6ab92b411aa3c98eb0b36d634bc6f93c8a8..b2ca09f94588396634f481af00d6747b4a8cd607 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.c
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.h b/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.h
index a4de02615ea0017a5dc1a384b2641e43d593e42d..7b5b32d4f0bbd1ba91ce6694e5d3cf9bed2d69f1 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.h
+++ b/storage/mroonga/vendor/groonga/lib/mrb/mrb_writer.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/nfkc.c b/storage/mroonga/vendor/groonga/lib/nfkc.c
index 2330fbbe705240d64fa1f4e51bd8788af7af06a3..e83fe6106a1ec46c8fda24014d4393b6c5d01e36 100644
--- a/storage/mroonga/vendor/groonga/lib/nfkc.c
+++ b/storage/mroonga/vendor/groonga/lib/nfkc.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/nfkc.rb b/storage/mroonga/vendor/groonga/lib/nfkc.rb
index 9ad25bba9ffe6f8b0fd3a53d9e58c0862e3f2c04..0c0e7fe7116c02a6a2247699c47e85c77757d29c 100755
--- a/storage/mroonga/vendor/groonga/lib/nfkc.rb
+++ b/storage/mroonga/vendor/groonga/lib/nfkc.rb
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 CUSTOM_RULE_PATH = 'nfkc-custom-rules.txt'
 
@@ -872,7 +872,7 @@ File.open("nfkc#{unicode_version}.c", "w") do |output|
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/lib/nfkc50.c b/storage/mroonga/vendor/groonga/lib/nfkc50.c
index 06e802962a08da88ae913d15cf025ee5dc537187..f734e832c265cff01f2e11ba8bb310c0d5741621 100644
--- a/storage/mroonga/vendor/groonga/lib/nfkc50.c
+++ b/storage/mroonga/vendor/groonga/lib/nfkc50.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /*
diff --git a/storage/mroonga/vendor/groonga/lib/normalizer.c b/storage/mroonga/vendor/groonga/lib/normalizer.c
index 6004372f01f7836870ebff15904a5562ae54e0d8..7e69d68447c60167194bc5a49119f511715f8812 100644
--- a/storage/mroonga/vendor/groonga/lib/normalizer.c
+++ b/storage/mroonga/vendor/groonga/lib/normalizer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/obj.c b/storage/mroonga/vendor/groonga/lib/obj.c
index 09d71ec0709d67048bd9486580131675455c560c..8160daf5b4b681517b402f398cb234efdecc1905 100644
--- a/storage/mroonga/vendor/groonga/lib/obj.c
+++ b/storage/mroonga/vendor/groonga/lib/obj.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/operator.c b/storage/mroonga/vendor/groonga/lib/operator.c
index bece4388383b21442911fa3c3dfea2d06028dfb5..1d371fe4f8588c4a601dc43b8cb833e75f1fb23e 100644
--- a/storage/mroonga/vendor/groonga/lib/operator.c
+++ b/storage/mroonga/vendor/groonga/lib/operator.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/output.c b/storage/mroonga/vendor/groonga/lib/output.c
index d894280ab822622038162bc110daca75ca60d0b6..3c1fb21d33bcc95ac03bae351864bfa978180eae 100644
--- a/storage/mroonga/vendor/groonga/lib/output.c
+++ b/storage/mroonga/vendor/groonga/lib/output.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/pat.c b/storage/mroonga/vendor/groonga/lib/pat.c
index 8e20fde4043fdffc1abdda17f1fba1b1575faef1..e2f98fba0d2205cc59365f9e42ded70b17bdf1c9 100644
--- a/storage/mroonga/vendor/groonga/lib/pat.c
+++ b/storage/mroonga/vendor/groonga/lib/pat.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/plugin.c b/storage/mroonga/vendor/groonga/lib/plugin.c
index e60c22ed998dd5c22aaa6ab62a2193013280f752..ce4e334716b39fe7ada722099967d30cc21a6974 100644
--- a/storage/mroonga/vendor/groonga/lib/plugin.c
+++ b/storage/mroonga/vendor/groonga/lib/plugin.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include "grn_ctx_impl_mrb.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc.c b/storage/mroonga/vendor/groonga/lib/proc.c
index e21769f3f196ec52da9efa29da3da5d04257d3ea..4897364146ea610a050de33447e07f01cf2c7471 100644
--- a/storage/mroonga/vendor/groonga/lib/proc.c
+++ b/storage/mroonga/vendor/groonga/lib/proc.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_column.c b/storage/mroonga/vendor/groonga/lib/proc/proc_column.c
index fa6dacf861a29a7d36144d7b831f392a5b52d2d1..2e92f35fbbcbeb82c6562f673bab118e9329bdf8 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_column.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_config.c b/storage/mroonga/vendor/groonga/lib/proc/proc_config.c
index 98533e3bccc9634251b99553f9eb6a26354d2287..61a1c5a8053d3c7aad91a88750b8aa62abbabb35 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_config.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_config.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_dump.c b/storage/mroonga/vendor/groonga/lib/proc/proc_dump.c
index 9439e0cdaedac21ea63d99dbc5207619adbbf81f..7915ddfd3292d060779bef6b9083540a2735ff88 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_dump.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_dump.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_fuzzy_search.c b/storage/mroonga/vendor/groonga/lib/proc/proc_fuzzy_search.c
index bb1b6a65fe44f79e230a5a1d2a988f6de6cb9803..943a8fdf74d61bf25f1b14df2de7290113a56e50 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_fuzzy_search.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_fuzzy_search.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_highlight.c b/storage/mroonga/vendor/groonga/lib/proc/proc_highlight.c
index 7d815184a0e98e52b4fff3b8acef2e3f05d88ad4..80551a104b86c831502c39907da7243a76738da7 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_highlight.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_highlight.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_in_records.c b/storage/mroonga/vendor/groonga/lib/proc/proc_in_records.c
index ca85678e756006560eda054ee60ae1778d8477c2..e3b8a7e378a9c0144571f78bdea00174694d3dbc 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_in_records.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_in_records.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_lock.c b/storage/mroonga/vendor/groonga/lib/proc/proc_lock.c
index 5dbcf5bbc2910b0d45d592400cbcb19e176f8650..9eaf808a80812bd57f7c0da7b6437fdb3194f503 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_lock.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_lock.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_object.c b/storage/mroonga/vendor/groonga/lib/proc/proc_object.c
index a4b2fbe4a0518e5c0d28711c3a47d17ce3555ab1..380e65531a1ae8c6acba7cb7f01ed876f51c1e0a 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_object.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_object.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_object_inspect.c b/storage/mroonga/vendor/groonga/lib/proc/proc_object_inspect.c
index 3b03ccb5e7cd0c89f0d0ee06908a22f8c8680bfd..eaa6ec4bfcbbb5b0803d17c7a6e44f2ee29bd267 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_object_inspect.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_object_inspect.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_pat.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_object_list.c b/storage/mroonga/vendor/groonga/lib/proc/proc_object_list.c
index a15e27825bafdce365777053b9b484ca4acaf5bb..adb4c91bc1f1aa1701d088a11cdb042c08430f9d 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_object_list.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_object_list.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_query.c b/storage/mroonga/vendor/groonga/lib/proc/proc_query.c
index 981da834bcddbc36e4043ba66122a3e23017744b..6dcf63e13be0e19f120155714e997926bca1bfc6 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_query.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_query.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_query_log_flags.c b/storage/mroonga/vendor/groonga/lib/proc/proc_query_log_flags.c
index 1c0560929b93f57888bc959d2f281e4ff5c793f8..b05d1abf52955d3467b63881f37e4f8f76fab78a 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_query_log_flags.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_query_log_flags.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_schema.c b/storage/mroonga/vendor/groonga/lib/proc/proc_schema.c
index eb1e71943d6745926ec863ce0190b3274fdec0ff..061c145a11223766f9f53235bf46f4389c81a209 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_schema.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_schema.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_select.c b/storage/mroonga/vendor/groonga/lib/proc/proc_select.c
index f902f160d0e5fad19208a5b1dae8734848a54298..605fd42239ff08b91971f0c514086bc1f7eb8aed 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_select.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_select.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_snippet.c b/storage/mroonga/vendor/groonga/lib/proc/proc_snippet.c
index f98438d6792d4c1e3d1afc7ae9490fed71937e9f..0c6ea6818c53afc302a8383fa315ea416e783eaa 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_snippet.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_snippet.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_table.c b/storage/mroonga/vendor/groonga/lib/proc/proc_table.c
index 3501555969ca5919031800d32a2a8f48e38fcda3..c3cf2b214991e031e77a89f5005a5ddf8fb403f7 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_table.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_table.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/proc/proc_tokenize.c b/storage/mroonga/vendor/groonga/lib/proc/proc_tokenize.c
index cf65b13ee5a81dff2bd39a01068d3cec73b14391..d69b044c5ea100a7e151472ca6f78ac89eaeb9e8 100644
--- a/storage/mroonga/vendor/groonga/lib/proc/proc_tokenize.c
+++ b/storage/mroonga/vendor/groonga/lib/proc/proc_tokenize.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "../grn_proc.h"
diff --git a/storage/mroonga/vendor/groonga/lib/raw_string.c b/storage/mroonga/vendor/groonga/lib/raw_string.c
index 81905bf695208bfd74487929757446583a1f95de..794450f82a2a0a42aa61dea9409e8edd0fc1c455 100644
--- a/storage/mroonga/vendor/groonga/lib/raw_string.c
+++ b/storage/mroonga/vendor/groonga/lib/raw_string.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_raw_string.h"
diff --git a/storage/mroonga/vendor/groonga/lib/report.c b/storage/mroonga/vendor/groonga/lib/report.c
index b9e396e04912518a5d10cdb90455068b34ca3635..c16e6e680218b040ce044c1e86c303a5aed0e19d 100644
--- a/storage/mroonga/vendor/groonga/lib/report.c
+++ b/storage/mroonga/vendor/groonga/lib/report.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_report.h"
diff --git a/storage/mroonga/vendor/groonga/lib/request_canceler.c b/storage/mroonga/vendor/groonga/lib/request_canceler.c
index 9ffe1f41c4f3212ca10b8ea6c6ff4c4d7949ce1d..c5aedf3eed47f16fb4c6ba6d16899bf41d0b523e 100644
--- a/storage/mroonga/vendor/groonga/lib/request_canceler.c
+++ b/storage/mroonga/vendor/groonga/lib/request_canceler.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/request_timer.c b/storage/mroonga/vendor/groonga/lib/request_timer.c
index 9a5d85f79c6a52e965936591cf906c39ce4d6199..23a0c644c2ee39ce3e1671fcd9d88c3fffd79adb 100644
--- a/storage/mroonga/vendor/groonga/lib/request_timer.c
+++ b/storage/mroonga/vendor/groonga/lib/request_timer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/rset.c b/storage/mroonga/vendor/groonga/lib/rset.c
index 85a9e1c529e3dee29eff0c7881e2a1494d0b51de..f7b50039ba7d0f16d65c579afa5f2fed6464986b 100644
--- a/storage/mroonga/vendor/groonga/lib/rset.c
+++ b/storage/mroonga/vendor/groonga/lib/rset.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn_db.h"
 
diff --git a/storage/mroonga/vendor/groonga/lib/scanner.c b/storage/mroonga/vendor/groonga/lib/scanner.c
index c7d86ff7b0c7a479f3dac3b5af2782da6a823948..9ac0f164cc27d1d94ed4ddbb1c3d33696e50926c 100644
--- a/storage/mroonga/vendor/groonga/lib/scanner.c
+++ b/storage/mroonga/vendor/groonga/lib/scanner.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_scanner.h"
diff --git a/storage/mroonga/vendor/groonga/lib/scorer.c b/storage/mroonga/vendor/groonga/lib/scorer.c
index f1c110dddaa97f8e00059a62fe792690e0c1108c..5791ad356c576cf8f9472e35ef14a4a09ec47669 100644
--- a/storage/mroonga/vendor/groonga/lib/scorer.c
+++ b/storage/mroonga/vendor/groonga/lib/scorer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/scorers.c b/storage/mroonga/vendor/groonga/lib/scorers.c
index dcec87c8ecc6f8d2227625e0d0bf7f0777211a22..44a3e9b4b70d3979a594d2037532a48b022258c6 100644
--- a/storage/mroonga/vendor/groonga/lib/scorers.c
+++ b/storage/mroonga/vendor/groonga/lib/scorers.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_db.h"
diff --git a/storage/mroonga/vendor/groonga/lib/snip.c b/storage/mroonga/vendor/groonga/lib/snip.c
index da5ba704c85803d8ee417418d2130c4a43504001..4693dc2b5f31c98f00ed8460bfb97042b0530a03 100644
--- a/storage/mroonga/vendor/groonga/lib/snip.c
+++ b/storage/mroonga/vendor/groonga/lib/snip.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/store.c b/storage/mroonga/vendor/groonga/lib/store.c
index e814a85c3614c03ae524b448e028bf3806a488bc..d0fe974eddb3e8225ecceb90f6ead26dc9231b24 100644
--- a/storage/mroonga/vendor/groonga/lib/store.c
+++ b/storage/mroonga/vendor/groonga/lib/store.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include "grn_str.h"
diff --git a/storage/mroonga/vendor/groonga/lib/str.c b/storage/mroonga/vendor/groonga/lib/str.c
index d5b4e716bd2a7325be5f85503146bfa85cb447ce..6b2d17769ca07a18cc448af33edf8339f5d92aeb 100644
--- a/storage/mroonga/vendor/groonga/lib/str.c
+++ b/storage/mroonga/vendor/groonga/lib/str.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/string.c b/storage/mroonga/vendor/groonga/lib/string.c
index 3ba8b8678c02136f24766eab37557a05c1e52836..8e591100bf89fb3cec9ef05e83d23621d4f90380 100644
--- a/storage/mroonga/vendor/groonga/lib/string.c
+++ b/storage/mroonga/vendor/groonga/lib/string.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/table.c b/storage/mroonga/vendor/groonga/lib/table.c
index 72a2f280b2f348c385d5c8ab4432d9c55c54b454..0047c78711d659b2d57c3fd225efd7ae9c6dcc9d 100644
--- a/storage/mroonga/vendor/groonga/lib/table.c
+++ b/storage/mroonga/vendor/groonga/lib/table.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/thread.c b/storage/mroonga/vendor/groonga/lib/thread.c
index c598b7aa2831ef098d4bdb09a748ba2127b2200d..7e823ab3eefae8d918e4c89924d32c0279092f3d 100644
--- a/storage/mroonga/vendor/groonga/lib/thread.c
+++ b/storage/mroonga/vendor/groonga/lib/thread.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/time.c b/storage/mroonga/vendor/groonga/lib/time.c
index 38fa5086e3903c42e30cd29fd6e1930a8c021e2e..b11bc7a0ef6099b247f42f35692a91e43df12f0b 100644
--- a/storage/mroonga/vendor/groonga/lib/time.c
+++ b/storage/mroonga/vendor/groonga/lib/time.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_time.h"
diff --git a/storage/mroonga/vendor/groonga/lib/token_cursor.c b/storage/mroonga/vendor/groonga/lib/token_cursor.c
index 7aff6ec9c24996c0b943cbe940b255b07d5d164a..179d0f31fe41b698938edf1bc963f3618e9ef46e 100644
--- a/storage/mroonga/vendor/groonga/lib/token_cursor.c
+++ b/storage/mroonga/vendor/groonga/lib/token_cursor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn_token_cursor.h"
 #include "grn_string.h"
diff --git a/storage/mroonga/vendor/groonga/lib/token_filter.c b/storage/mroonga/vendor/groonga/lib/token_filter.c
index a564bdfb8bd19cc3399715e123d9f4648eda328d..55367762b7e703b492e55fdc0ef5c7769647b1e9 100644
--- a/storage/mroonga/vendor/groonga/lib/token_filter.c
+++ b/storage/mroonga/vendor/groonga/lib/token_filter.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/tokenizer.c b/storage/mroonga/vendor/groonga/lib/tokenizer.c
index c247efd2f612df3df68fcb3aa51f560d0119739a..faf47fd63f0430afcda18581cda8ec194e920e38 100644
--- a/storage/mroonga/vendor/groonga/lib/tokenizer.c
+++ b/storage/mroonga/vendor/groonga/lib/tokenizer.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include "grn.h"
 #include 
diff --git a/storage/mroonga/vendor/groonga/lib/tokenizers.c b/storage/mroonga/vendor/groonga/lib/tokenizers.c
index 6bd0a1b9e1851b8a92a6ed7c40574ea8c20eb841..11f274e72db3a5682214583797fd98caadb4efd9 100644
--- a/storage/mroonga/vendor/groonga/lib/tokenizers.c
+++ b/storage/mroonga/vendor/groonga/lib/tokenizers.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include 
 #include "grn_token_cursor.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts.c b/storage/mroonga/vendor/groonga/lib/ts.c
index d1e5f0950401e5c7f6d60c190617374ed073a628..68e363a27d7fb446a67f685e68a05c2e100acebb 100644
--- a/storage/mroonga/vendor/groonga/lib/ts.c
+++ b/storage/mroonga/vendor/groonga/lib/ts.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /* TS is an acronym for "Turbo Selector". */
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_buf.c b/storage/mroonga/vendor/groonga/lib/ts/ts_buf.c
index bee724ccdcd44a6d6c67324446457882b686fbf9..65521d714f05804ff096b2b6360b06a0c1d57d2e 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_buf.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_buf.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_buf.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_buf.h b/storage/mroonga/vendor/groonga/lib/ts/ts_buf.h
index 64caec933b0b972359429ca430371c50c5ce19a9..f8077f0f88c2e3aa910fe719ae51f559f3d39cb5 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_buf.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_buf.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.c b/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.c
index 5329571ffb000c7e4c05886851c61d9826321a95..779e4caee87617e602dd7205dd295090cd6901dd 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_cursor.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.h b/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.h
index f05aa7518dfec18565275bc90b71c00792a843d9..f12034f709030c45b02e98b2a3a727d50fed3ea1 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_cursor.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr.c b/storage/mroonga/vendor/groonga/lib/ts/ts_expr.c
index a7fcde6570eb016d496c53922c3886628d858628..16576fbc98e22d973a764598eeae10b5e182fd75 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_expr.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr.h b/storage/mroonga/vendor/groonga/lib/ts/ts_expr.h
index be370e8b56b27c420431002be0cabcc72d112d41..b50e886d85df7b49b595b38193c35c951f8c82cd 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.c b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.c
index 4577ede2611adb0db81f13c49a445d3f1b2a8578..a742e062b1ddc2c62dea4ec3b566a1f3485ad915 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_expr_builder.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.h b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.h
index 2e2eb436db4c5087a9bdeb15d0729294eaf387b8..f9795ed191008184ca97ad2de72ef184e28d0b82 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_builder.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.c b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.c
index a3d838c327f086d7844228112db83e29f6c92ebe..dc64e802fbb15d2d2b7261112e0e3aed6bcd9588 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_expr_node.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.h b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.h
index 40e7022f10f01d2a7f64c2c710577126a4231822..bcc9f3714c82bff461e24da4cd798341f071f7fb 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_node.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.c b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.c
index 425171d421abb6e991100c22ff5f0ef9f79be529..10e6d2fcca772ae706b31f248139b2a2e306aa95 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_expr_parser.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.h b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.h
index 1023356e82d4d92be373d96ae4c631df8c1abf89..77205983aa723976e487a46ca32863a4f9c4da50 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_expr_parser.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_log.h b/storage/mroonga/vendor/groonga/lib/ts/ts_log.h
index 7619d60543f378b3f7ed3f32c7b0a6598b999f11..844a0ee698931c63a620c1e161946d8ff9bb2a96 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_log.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_log.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_op.c b/storage/mroonga/vendor/groonga/lib/ts/ts_op.c
index 956aa7dc7b39c594d3fc676e565814376ca46010..64262b7757bcf439a4a289622e6fd81fcb20044b 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_op.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_op.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_op.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_op.h b/storage/mroonga/vendor/groonga/lib/ts/ts_op.h
index 3bdfcf43f81d2086121b9d40a507d4f0b409e6cc..7c34de969138a50e2132eaf687e9db76f033d89b 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_op.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_op.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_plan.c b/storage/mroonga/vendor/groonga/lib/ts/ts_plan.c
index 2bd2a4b50e906979285c282d2fa71fc3d6bd2c38..3a8c9c0fe7d90f73bc6f3e3d06b06189c63c39fc 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_plan.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_plan.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_plan.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_plan.h b/storage/mroonga/vendor/groonga/lib/ts/ts_plan.h
index c441adef4cd28ce56229d9d9e1a3ef061ef7c4a4..462bccfa00515638cbffe7a37ee17201a2065e15 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_plan.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_plan.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.c b/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.c
index 1d880476ba9af0d5d24f9e86f9a2f900575ecc06..6a61466360074b9b44d1cc5ff72f783385aa27ce 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_sorter.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.h b/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.h
index 069154d26ba111546f7886636821a92dddd1c814..d80479e136188e3d952fb12f929da551ddf2d99b 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_sorter.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_str.c b/storage/mroonga/vendor/groonga/lib/ts/ts_str.c
index 6a8792eebc2473c180e24d1e3fd06b739b511d49..9f200fa307b6229b10cd11c479cb39017ca93619 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_str.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_str.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_str.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_str.h b/storage/mroonga/vendor/groonga/lib/ts/ts_str.h
index bca07b92fb790b71bc7cdd531a798f6aa4db572f..1137123379181f63047a5dd40940e3564faef470 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_str.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_str.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_types.h b/storage/mroonga/vendor/groonga/lib/ts/ts_types.h
index 5a667e2ad17f9c0b7baa5bac0e24a23bb57ba6c9..389eec42011f860f890a96b741353435022f7a4a 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_types.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_types.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_util.c b/storage/mroonga/vendor/groonga/lib/ts/ts_util.c
index 9e85aa4dc3522d42b761c45501932371917a44dd..18e660602ea5c5e86d77b878095f4389c779c92a 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_util.c
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_util.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "ts_util.h"
diff --git a/storage/mroonga/vendor/groonga/lib/ts/ts_util.h b/storage/mroonga/vendor/groonga/lib/ts/ts_util.h
index 2ffbdd6f93dd1f1bde84aa6b623d51f5ee6bdac1..24a6a50731c637b2f227d479a2cf5501e41074c7 100644
--- a/storage/mroonga/vendor/groonga/lib/ts/ts_util.h
+++ b/storage/mroonga/vendor/groonga/lib/ts/ts_util.h
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #pragma once
diff --git a/storage/mroonga/vendor/groonga/lib/type.c b/storage/mroonga/vendor/groonga/lib/type.c
index 845a28890e2e4993da281cb3ee93487439ef5020..6696444a47dd05a78e8bdb8d6c923ecccf2f926d 100644
--- a/storage/mroonga/vendor/groonga/lib/type.c
+++ b/storage/mroonga/vendor/groonga/lib/type.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx_impl.h"
diff --git a/storage/mroonga/vendor/groonga/lib/util.c b/storage/mroonga/vendor/groonga/lib/util.c
index 27fc944d6a0d48e02677f44c4c34e1f0e5d18435..43066c3f5150ed6632bf2a1524f2203e297bb55c 100644
--- a/storage/mroonga/vendor/groonga/lib/util.c
+++ b/storage/mroonga/vendor/groonga/lib/util.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_db.h"
diff --git a/storage/mroonga/vendor/groonga/lib/window_function.c b/storage/mroonga/vendor/groonga/lib/window_function.c
index 5ee182e6236f12a46038d9f624047947a3538605..27e8c9c858184f2453e45a8687d989e35f19ca85 100644
--- a/storage/mroonga/vendor/groonga/lib/window_function.c
+++ b/storage/mroonga/vendor/groonga/lib/window_function.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_ctx.h"
diff --git a/storage/mroonga/vendor/groonga/lib/window_functions.c b/storage/mroonga/vendor/groonga/lib/window_functions.c
index 1812f2922bf9601f0349b7b789f2ab9756bd2b9b..7a177cd8e5da3425c442a5a10983ec7c0d02ff8a 100644
--- a/storage/mroonga/vendor/groonga/lib/window_functions.c
+++ b/storage/mroonga/vendor/groonga/lib/window_functions.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_db.h"
diff --git a/storage/mroonga/vendor/groonga/lib/windows.c b/storage/mroonga/vendor/groonga/lib/windows.c
index 83a1d499ac46d71bd033d08df32ae8b568db9f50..a363d711fbf3c102a6e0735831c2d8d06bdc7506 100644
--- a/storage/mroonga/vendor/groonga/lib/windows.c
+++ b/storage/mroonga/vendor/groonga/lib/windows.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn.h"
diff --git a/storage/mroonga/vendor/groonga/lib/windows_event_logger.c b/storage/mroonga/vendor/groonga/lib/windows_event_logger.c
index d7447e72eb76e86533af136c08718ed85e76bba9..fb8229ad1246ba3d12d0994bae3b5025f5a1d728 100644
--- a/storage/mroonga/vendor/groonga/lib/windows_event_logger.c
+++ b/storage/mroonga/vendor/groonga/lib/windows_event_logger.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include "grn_logger.h"
diff --git a/storage/mroonga/vendor/groonga/plugins/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/CMakeLists.txt
index 244b60f90043e35779a38cb6802acfa471c0333f..d7a5f22eed0b718a7cf55e526b56dd6f004892f1 100644
--- a/storage/mroonga/vendor/groonga/plugins/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 add_subdirectory(suggest)
 add_subdirectory(tokenizers)
diff --git a/storage/mroonga/vendor/groonga/plugins/expression_rewriters/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/expression_rewriters/CMakeLists.txt
index 385b5c750d281199c629fa2d6bd352d0f8075e34..aabec4426bac9ef252051cb537a6085b29c6f9ec 100644
--- a/storage/mroonga/vendor/groonga/plugins/expression_rewriters/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/expression_rewriters/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if(NOT GRN_EMBED)
   if(GRN_WITH_MRUBY)
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/functions/CMakeLists.txt
index 611e30b9c48173170ae8ffa5b3dca55bac1dda27..65a6d2c31abf4f23c14d3b6f8ac2486c60ed9366 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/functions/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/index_column.c b/storage/mroonga/vendor/groonga/plugins/functions/index_column.c
index acb7355cf5cafda02d7833c346d489ab585457e6..0501007471f6b958d5ac9923ca13c6e71b2ae06c 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/index_column.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/index_column.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/math.c b/storage/mroonga/vendor/groonga/plugins/functions/math.c
index 2527012e9eab1d63c0eb0ae382293b2eb2ffedd5..a6a9e2608e06d45381a9de509dfcf2365f407386 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/math.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/math.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/number.c b/storage/mroonga/vendor/groonga/plugins/functions/number.c
index 285c88f58f2d1de0f5561de2c015524b88b8c411..7cdfc0e1848bd743a54d771ac891a8f3c300aaea 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/number.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/number.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/string.c b/storage/mroonga/vendor/groonga/plugins/functions/string.c
index aeef335ec55565ec95470cb7db9a50401220696e..6cd7d953df9e802cb67a4fcf180054eb6b8bac05 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/string.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/string.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/time.c b/storage/mroonga/vendor/groonga/plugins/functions/time.c
index dc54f47ea529c946799a4c8f9892888d6aa5ac07..f82ea872dc735a681357da6d776e9cc74dcc3497 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/time.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/time.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/functions/vector.c b/storage/mroonga/vendor/groonga/plugins/functions/vector.c
index a7283fc59ebe9959d78601ffb200bf8c30945641..1104b31337246ce3f426098c98687a96f113628d 100644
--- a/storage/mroonga/vendor/groonga/plugins/functions/vector.c
+++ b/storage/mroonga/vendor/groonga/plugins/functions/vector.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/query_expanders/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/query_expanders/CMakeLists.txt
index 7f622608e4ba5deb62891ca013b689efadcf1df5..c2f04cb840b752b54aa891953468a33ac1a69bc8 100644
--- a/storage/mroonga/vendor/groonga/plugins/query_expanders/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/query_expanders/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/plugins/query_expanders/tsv.c b/storage/mroonga/vendor/groonga/plugins/query_expanders/tsv.c
index 2b0a5ba244eddb7b0a0318b9f5ae188532f20143..5d5deec69c11d199c51c9dd5a4acd4f92d6bc29b 100644
--- a/storage/mroonga/vendor/groonga/plugins/query_expanders/tsv.c
+++ b/storage/mroonga/vendor/groonga/plugins/query_expanders/tsv.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/ruby/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/ruby/CMakeLists.txt
index 7d34be1854678591e879c94f6c4ac83a75c7b7ea..a2bcccd1e86d34dc2ce4a367502947d57400deb7 100644
--- a/storage/mroonga/vendor/groonga/plugins/ruby/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/ruby/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if(NOT GRN_EMBED)
   if(GRN_WITH_MRUBY)
diff --git a/storage/mroonga/vendor/groonga/plugins/sharding/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/sharding/CMakeLists.txt
index 588a434e0e00769a83cd3c23d9c8aa058d6644d2..1131520faa0e50c6a9074c88d5b74e6a5ddbd5f7 100644
--- a/storage/mroonga/vendor/groonga/plugins/sharding/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/sharding/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if(NOT GRN_EMBED)
   if(GRN_WITH_MRUBY)
diff --git a/storage/mroonga/vendor/groonga/plugins/suggest/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/suggest/CMakeLists.txt
index e7d5364979b92e816514d528812641d8fecf4eb8..8b287e65f899ca85c81cf025c426902737589008 100644
--- a/storage/mroonga/vendor/groonga/plugins/suggest/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/suggest/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/plugins/suggest/suggest.c b/storage/mroonga/vendor/groonga/plugins/suggest/suggest.c
index 4dd5f6e62caa776509a0b275a1272a2593af0a50..7f64f3c17d9a0bc4c8675ab1a0ddd83cf7a28e90 100644
--- a/storage/mroonga/vendor/groonga/plugins/suggest/suggest.c
+++ b/storage/mroonga/vendor/groonga/plugins/suggest/suggest.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/token_filters/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/token_filters/CMakeLists.txt
index 55491b20bd78363af3bcbec886ce93570f82d986..4aa7d09b8bf352497254878d6d2b8d0335558990 100644
--- a/storage/mroonga/vendor/groonga/plugins/token_filters/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/token_filters/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/plugins/token_filters/stem.c b/storage/mroonga/vendor/groonga/plugins/token_filters/stem.c
index e918ed8a1e573efe733e1592d39d4c4db2578d58..2144eb096929edbef72fb6a9fb9bea1137517699 100644
--- a/storage/mroonga/vendor/groonga/plugins/token_filters/stem.c
+++ b/storage/mroonga/vendor/groonga/plugins/token_filters/stem.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/token_filters/stop_word.c b/storage/mroonga/vendor/groonga/plugins/token_filters/stop_word.c
index e5a9a77de2ebe5aded1723bf6ea50941c65049e1..a06d772fdb3f208d37f56a487354ca07a58c788d 100644
--- a/storage/mroonga/vendor/groonga/plugins/token_filters/stop_word.c
+++ b/storage/mroonga/vendor/groonga/plugins/token_filters/stop_word.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/tokenizers/CMakeLists.txt b/storage/mroonga/vendor/groonga/plugins/tokenizers/CMakeLists.txt
index 8eec25d683cbb357cca86a3d9ca471d471d9f996..26aadc4e58af59c6e5876595b8b47d3bd28a7897 100644
--- a/storage/mroonga/vendor/groonga/plugins/tokenizers/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/plugins/tokenizers/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/plugins/tokenizers/kytea.cpp b/storage/mroonga/vendor/groonga/plugins/tokenizers/kytea.cpp
index 62ef0bb58458dee3c37786c44bb42379f4a45ae2..76d827c00067f02283bf05012a30d8fffa547d28 100644
--- a/storage/mroonga/vendor/groonga/plugins/tokenizers/kytea.cpp
+++ b/storage/mroonga/vendor/groonga/plugins/tokenizers/kytea.cpp
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/plugins/tokenizers/mecab.c b/storage/mroonga/vendor/groonga/plugins/tokenizers/mecab.c
index eeb027acb92c6ab692cb04429f42492f93e9310b..3dd969a89c55f61e8207ea70a6dfe169857c81fc 100644
--- a/storage/mroonga/vendor/groonga/plugins/tokenizers/mecab.c
+++ b/storage/mroonga/vendor/groonga/plugins/tokenizers/mecab.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef GRN_EMBEDDED
diff --git a/storage/mroonga/vendor/groonga/src/CMakeLists.txt b/storage/mroonga/vendor/groonga/src/CMakeLists.txt
index 57bded2dd1fddbb1a5b8e3f552e1a948797b5b94..17ef3a41094067788c2e83fdbb442fafe79725a7 100644
--- a/storage/mroonga/vendor/groonga/src/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/src/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${MRUBY_INCLUDE_DIRS}
diff --git a/storage/mroonga/vendor/groonga/src/grndb.c b/storage/mroonga/vendor/groonga/src/grndb.c
index 6733be93fb2ab5f3e8a2cfd979dcf97838b3cac5..11f3ff5a9b421d37be2f033104bd99cebf100a1e 100644
--- a/storage/mroonga/vendor/groonga/src/grndb.c
+++ b/storage/mroonga/vendor/groonga/src/grndb.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef WIN32
diff --git a/storage/mroonga/vendor/groonga/src/grnslap.c b/storage/mroonga/vendor/groonga/src/grnslap.c
index f9eee1081fd66c3d5dc3e91bf9af650bd9e5ef67..cdd518536a5882547f68acdfeeb4ba20d07b3db2 100644
--- a/storage/mroonga/vendor/groonga/src/grnslap.c
+++ b/storage/mroonga/vendor/groonga/src/grnslap.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/src/groonga.c b/storage/mroonga/vendor/groonga/src/groonga.c
index 9742712170d66acba18778c6ed057f4f8b170209..a7f15d13866d11d9643068523fbe43bd18245798 100644
--- a/storage/mroonga/vendor/groonga/src/groonga.c
+++ b/storage/mroonga/vendor/groonga/src/groonga.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/src/groonga_benchmark.c b/storage/mroonga/vendor/groonga/src/groonga_benchmark.c
index 77543c2063dd18204cb491cc9ca2fbdfa85e71bc..267bb27876406db3aea7790e11cd9bf29c13620d 100644
--- a/storage/mroonga/vendor/groonga/src/groonga_benchmark.c
+++ b/storage/mroonga/vendor/groonga/src/groonga_benchmark.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifdef HAVE_CONFIG_H
diff --git a/storage/mroonga/vendor/groonga/src/groonga_mruby.c b/storage/mroonga/vendor/groonga/src/groonga_mruby.c
index 2f442fbd1267223e892e2bdf46d607e483dbd347..3aa73aafb3a62c8010343855f72d4b3aaaf3eec1 100644
--- a/storage/mroonga/vendor/groonga/src/groonga_mruby.c
+++ b/storage/mroonga/vendor/groonga/src/groonga_mruby.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #include 
diff --git a/storage/mroonga/vendor/groonga/src/httpd/nginx-module/ngx_http_groonga_module.c b/storage/mroonga/vendor/groonga/src/httpd/nginx-module/ngx_http_groonga_module.c
index 15836a92e05c8a4c9087bbb258fd0223129aefdb..078539062cb11b705c7657e270d2caded6d70a6a 100644
--- a/storage/mroonga/vendor/groonga/src/httpd/nginx-module/ngx_http_groonga_module.c
+++ b/storage/mroonga/vendor/groonga/src/httpd/nginx-module/ngx_http_groonga_module.c
@@ -13,7 +13,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 #ifndef WIN32
diff --git a/storage/mroonga/vendor/groonga/src/suggest/CMakeLists.txt b/storage/mroonga/vendor/groonga/src/suggest/CMakeLists.txt
index 83ae26b8ce5e43a7ed8cf53ee5e7f245d9ebdef5..ec85c1fbf4cc716b534ae35bd8ab3b559feea9fe 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/src/suggest/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}/../../lib
diff --git a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_create_dataset.c b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_create_dataset.c
index 7220ca88ec5032d22e210f4178b52fb1cd5e3952..7cec2922615d39e2ad4e65583e1d966c150bcabe 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_create_dataset.c
+++ b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_create_dataset.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /* For grn_str_getopt() */
diff --git a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_httpd.c b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_httpd.c
index d42ead2c90743e8eec9c3e721a8481268c1a970a..4f542f212b8ed1985f8a0c780cb0679a6228dfe1 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_httpd.c
+++ b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_httpd.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /* groonga origin headers */
diff --git a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_learner.c b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_learner.c
index 74465beffddd44b0ab564d29ffe6fc9c91bc2093..8109ae7f4c70f3a8e5692c727fdc10426841be4a 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_learner.c
+++ b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_learner.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 /* for grn_str_getopt() */
diff --git a/storage/mroonga/vendor/groonga/src/suggest/util.c b/storage/mroonga/vendor/groonga/src/suggest/util.c
index f6a717b8d7a0bad169ea8f89f977b885908a5806..e455a2573e81cbc0643263c723188046727e9846 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/util.c
+++ b/storage/mroonga/vendor/groonga/src/suggest/util.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #include 
 #include 
diff --git a/storage/mroonga/vendor/groonga/src/suggest/util.h b/storage/mroonga/vendor/groonga/src/suggest/util.h
index 468fe1045ba87402553229f02cedb4545c325fe9..eb36edfd6c9ae4d1569e9c0335def70e22d6b2e2 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/util.h
+++ b/storage/mroonga/vendor/groonga/src/suggest/util.h
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #ifndef GRN_SUGGEST_UTIL_H
 #define GRN_SUGGEST_UTIL_H
diff --git a/storage/mroonga/vendor/groonga/src/suggest/zmq_compatible.h b/storage/mroonga/vendor/groonga/src/suggest/zmq_compatible.h
index 28bc035a46a763af5977ddd72bc5635cb318696e..e4897f68f3542e922bbae37b592671bb52d6258c 100644
--- a/storage/mroonga/vendor/groonga/src/suggest/zmq_compatible.h
+++ b/storage/mroonga/vendor/groonga/src/suggest/zmq_compatible.h
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 */
 #ifndef GRN_SUGGEST_ZMQ_COMPATIBLE_H
 #define GRN_SUGGEST_ZMQ_COMPATIBLE_H
diff --git a/storage/mroonga/vendor/groonga/tools/groonga-object-list-checker.rb b/storage/mroonga/vendor/groonga/tools/groonga-object-list-checker.rb
index 31d85c0cefe1a8bf69fbc4a8b3ef5fcc5e2f7df1..f92eec0eb2b1c49d01cc101ebf778f6a3192d0db 100755
--- a/storage/mroonga/vendor/groonga/tools/groonga-object-list-checker.rb
+++ b/storage/mroonga/vendor/groonga/tools/groonga-object-list-checker.rb
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 require "pp"
 require "json"
diff --git a/storage/mroonga/vendor/groonga/tools/groonga-suggest-httpd-client.rb b/storage/mroonga/vendor/groonga/tools/groonga-suggest-httpd-client.rb
index ac4c30778e6cff56398d2574d93ff6e0f0a39470..00b6abf6af40b64e188861a04174dfa381711202 100755
--- a/storage/mroonga/vendor/groonga/tools/groonga-suggest-httpd-client.rb
+++ b/storage/mroonga/vendor/groonga/tools/groonga-suggest-httpd-client.rb
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 require "optparse"
 require "cool.io"
diff --git a/storage/mroonga/vendor/groonga/vendor/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/CMakeLists.txt
index 9a923908472a116721824d4f60e87150c51f09ab..5a2ec9ab15bd50354a5f82690eab79e7a16bc93a 100644
--- a/storage/mroonga/vendor/groonga/vendor/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 add_subdirectory(lz4)
 add_subdirectory(onigmo)
diff --git a/storage/mroonga/vendor/groonga/vendor/lz4/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/lz4/CMakeLists.txt
index 00342223d1d9f42ec96623f606e0bd9fa1820f29..87125a8544e7b4d85c164d864177491a56f0643f 100644
--- a/storage/mroonga/vendor/groonga/vendor/lz4/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/lz4/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set(LZ4_VERSION ${GRN_BUNDLED_LZ4_VERSION})
 
diff --git a/storage/mroonga/vendor/groonga/vendor/mecab/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/mecab/CMakeLists.txt
index a0a720df294a5b0ee56af3e50ce566642815dc37..6376025c9876344145fd5c5b5f37faf1bd3adf47 100644
--- a/storage/mroonga/vendor/groonga/vendor/mecab/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/mecab/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set(MECAB_VERSION ${GRN_BUNDLED_MECAB_VERSION})
 set(MECAB_DICT_VERSION "102")
diff --git a/storage/mroonga/vendor/groonga/vendor/message_pack/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/message_pack/CMakeLists.txt
index fc0d90a1f7c4bb2d106921de9cf41a8386f87ca0..bf75f95e6a6765e53dd1372a066f5765b1c7842b 100644
--- a/storage/mroonga/vendor/groonga/vendor/message_pack/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/message_pack/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set(MESSAGE_PACK_VERSION ${GRN_BUNDLED_MESSAGE_PACK_VERSION})
 
diff --git a/storage/mroonga/vendor/groonga/vendor/mruby/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/mruby/CMakeLists.txt
index 826ea6e4ea2a38759f178a5807cef1775ec23741..54be31fb438adb3c269a14dd133054ab64957ac6 100644
--- a/storage/mroonga/vendor/groonga/vendor/mruby/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/mruby/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if(GRN_WITH_MRUBY)
   set(MRUBY_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../mruby-source")
diff --git a/storage/mroonga/vendor/groonga/vendor/onigmo/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/onigmo/CMakeLists.txt
index 27717a0b718edc047df40fe517e9e513abb883b1..664df2224661ca9b53c7c0997d3d87c0281e363b 100644
--- a/storage/mroonga/vendor/groonga/vendor/onigmo/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/onigmo/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if(GRN_WITH_ONIGMO)
   set(ONIGMO_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../onigmo-source")
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/plugins/CMakeLists.txt
index 845c57f5716c7e98265ec5c9d17dbc89d46a4178..e4428b577f8bb94bcd8be88849d235dc441f87b8 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 file(GLOB
   PLUGIN_CMAKE_LISTS_LIST
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/CMakeLists.txt
index 6f458e232ac51124bee9a522cce0c52366ebfe9d..80e531e531928337ffa7ca1a75a4d039b5beb296 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/CMakeLists.txt
@@ -13,7 +13,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 cmake_minimum_required(VERSION 2.6)
 set(GROONGA_NORMALIZER_MYSQL_PROJECT_NAME "groonga-normalizer-mysql")
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/Makefile.am
index cdc7ec525f480d74f385b637f6f95ed62b10bad0..16d8d96173533b60a1f6fee6cb12be2ddc212f51 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 ACLOCAL_AMFLAGS = -I m4
 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/autogen.sh b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/autogen.sh
index 62385ed00d6629d1a5aa2d01d19776db6571c2f9..f6f5d5af70285f25c4555409b42c832b53388fb1 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/autogen.sh
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/autogen.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 mkdir -p m4
 autoreconf -i
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/Makefile.am
index 4a73087dc26a201d5411264f7ba0f2bbae73486d..06b75071b7d21a0640287c2558479a0b803f8a60 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 SUBDIRS =					\
 	cmake_modules
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/Makefile.am
index 44ac5150c6d27e32bf992b86873bee3063c95af9..960411e1091077094e28032b82938935dc5b7ea7 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 EXTRA_DIST =					\
 	ReadFileList.cmake
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/ReadFileList.cmake b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/ReadFileList.cmake
index 018587991d8d3a4c385d5d27896ea32d543f9b0c..204f59f60bf1be669497999b43baf512b3e78f3b 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/ReadFileList.cmake
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/build/cmake_modules/ReadFileList.cmake
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU Lesser General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 macro(read_file_list file_name output_variable)
   file(READ ${file_name} ${output_variable})
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/configure.ac b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/configure.ac
index b619622744ef9d276ecce58744d547bfaba33d17..f2d1933ec510a86373d7f7e3436b2d488a3f0394 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/configure.ac
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/configure.ac
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 AC_PREREQ(2.59)
 m4_define([groonga_normalizer_mysql_version], m4_include(version))
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/data/travis/setup.sh b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/data/travis/setup.sh
index a4752f82131f7a233916d696629d0eb48a86bc13..82f6f84a1cb303771b4dd115ce8fc20c9dbd5e77 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/data/travis/setup.sh
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/data/travis/setup.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set -e
 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/Makefile.am
index 771336d84a0142f0787dc1e50b4bc28e1b22bb53..59b7697706d9c26d06fe9bce28758f8fc0f5359a 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 SUBDIRS =					\
 	text
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/Makefile.am
index 6adf4f103e92051d91894ec6051b842aa615b28a..7caeaddf13a0eaff7ee01794e9aac939db01c40f 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 docdir = $(datadir)/doc/$(PACKAGE)
 dist_doc_DATA =					\
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/lgpl-2.0.txt b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/lgpl-2.0.txt
index 5bc8fb2c8f757e34a0d8f4644f589d57609e213f..c44d41a2f69166cc3461acbbadc8b6f17d1f7de3 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/lgpl-2.0.txt
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/doc/text/lgpl-2.0.txt
@@ -2,7 +2,7 @@
                        Version 2, June 1991
 
  Copyright (C) 1991 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -464,7 +464,7 @@ convey the exclusion of warranty; and each file should have at least the
 
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/CMakeLists.txt b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/CMakeLists.txt
index bddda0a929562b1f9aa851dccaae4a082d28a665..f8b748a7f15e2b62f1f79b570b0253cd335c4c36 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/CMakeLists.txt
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/CMakeLists.txt
@@ -13,7 +13,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 set(NORMALIZERS_DIR "${GROONGA_PLUGINS_DIR}/normalizers")
 read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/mysql_sources.am MYSQL_SOURCES)
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/Makefile.am b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/Makefile.am
index 64cfe6552fa0b0b4195b0109616429ace0519245..769d43edb4d436ab0ba946f8201bba41b0f00cdd 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/Makefile.am
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/Makefile.am
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 EXTRA_DIST =					\
 	CMakeLists.txt
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql.c b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql.c
index e7961ee41f808a6885b4a2fea5a52034c66b7af4..989d62679401ed905d6e508993c1c9de42006980 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql.c
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql.c
@@ -15,7 +15,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 */
 
 #ifdef HAVE_CONFIG_H
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_general_ci_table.h b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_general_ci_table.h
index a84e449910d994a8de62e8d67a8485a83020afe4..16b43dbfdb12ad482cb649c05ec2d01b4cbc09cd 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_general_ci_table.h
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_general_ci_table.h
@@ -14,7 +14,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   mysql-5.6.23/strings/ctype-utf8.c.
@@ -35,7 +35,7 @@
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UTF8 according RFC 2279
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
index 6832d3a3b66b93370443b6eff274af2a3fa09acf..1a96312211209233f80f690975c728767cb9e0e5 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
@@ -14,7 +14,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   mysql-5.6.23/strings/ctype-uca.c.
@@ -35,7 +35,7 @@
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UCA (Unicode Collation Algorithm) support.
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_table.h b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_table.h
index 22a56d7f3002bbba791ae217be39fa0f7804dd15..6e24719b2dfdd9c0b942370a12e4cea44d2a1774 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_table.h
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_520_ci_table.h
@@ -14,7 +14,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   mysql-5.6.23/strings/ctype-uca.c.
@@ -35,7 +35,7 @@
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UCA (Unicode Collation Algorithm) support.
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
index 7153cb1872efd00e741d77008468c1d32e6490a5..98eabe8781603e37bbe74d64bc8da8ec314a77b2 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_except_kana_ci_kana_with_voiced_sound_mark_table.h
@@ -14,7 +14,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   mysql-5.6.23/strings/ctype-uca.c.
@@ -35,7 +35,7 @@
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UCA (Unicode Collation Algorithm) support.
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_table.h b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_table.h
index e3a6b4bcc4d158a64a96761d9ec3266f722a379d..77b96d77ef88b2772d41de8949c19aebec5cc7f2 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_table.h
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/normalizers/mysql_unicode_ci_table.h
@@ -14,7 +14,7 @@
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   mysql-5.6.23/strings/ctype-uca.c.
@@ -35,7 +35,7 @@
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UCA (Unicode Collation Algorithm) support.
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_uca.rb b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_uca.rb
index 45e60c2973f135bb7c770e6d2924cb1482b51fe7..b9d10584bda210593d4d1450c418713599b7e39f 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_uca.rb
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_uca.rb
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 $LOAD_PATH.unshift(File.dirname(__FILE__))
 require "parser"
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_utf8.rb b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_utf8.rb
index 8cbfe969c13b785e9c46f5a0b4add723318b6cbf..4b6fde8c7b0b6b296172e54230836d12f4d4bfba 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_utf8.rb
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/dump_difference_utf8.rb
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 $LOAD_PATH.unshift(File.dirname(__FILE__))
 require "parser"
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_uca_table.rb b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_uca_table.rb
index 4dcb14c324e5a8a06a08335bdde44bee9e129869..d70734e6653029f2c731e25757901f70b1192c3b 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_uca_table.rb
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_uca_table.rb
@@ -15,7 +15,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 require "optparse"
 
@@ -213,7 +213,7 @@ puts(<<-HEADER)
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   #{normalized_ctype_uca_c_path}.
@@ -234,7 +234,7 @@ puts(<<-HEADER)
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UCA (Unicode Collation Algorithm) support.
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_utf8_table.rb b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_utf8_table.rb
index dfedd94174cb75c45829ca82d1df8bb11ed7336a..b8fc11436034491ed7749cef141c3840e54b3991 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_utf8_table.rb
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/generate_utf8_table.rb
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 $LOAD_PATH.unshift(File.dirname(__FILE__))
 require "parser"
@@ -64,7 +64,7 @@ puts(<<-HEADER)
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-  MA 02110-1301, USA
+  MA 02110-1335  USA
 
   This file uses normalization table defined in
   #{normalized_ctype_utf8_c_path}.
@@ -85,7 +85,7 @@ puts(<<-HEADER)
     You should have received a copy of the GNU Library General Public
     License along with this library; if not, write to the Free
     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-    MA 02110-1301, USA
+    MA 02110-1335  USA
 
     UTF8 according RFC 2279
     Written by Alexander Barkov 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/parser.rb b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/parser.rb
index cc0b2f01606e2c5a2c836fecbaac0a9837db30f5..29268a43fe47a132616aace85a815b7212572680 100644
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/parser.rb
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/parser.rb
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 require "English"
 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/before_script.sh b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/before_script.sh
index 353fb53d3b3eadd39aeb16682874a33881138b96..24e9743057924a7758b364f532a4c0ddb7611a85 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/before_script.sh
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/before_script.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set -e
 
diff --git a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/install.sh b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/install.sh
index ed61a3540ed7430db4ba0ad61fb33ee0892b476d..2fc22888bcf34bfd0f817fd0cc23d1da4c7d0863 100755
--- a/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/install.sh
+++ b/storage/mroonga/vendor/groonga/vendor/plugins/groonga-normalizer-mysql/tool/travis/install.sh
@@ -14,7 +14,7 @@
 #
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 set -e
 
diff --git a/storage/myisam/CMakeLists.txt b/storage/myisam/CMakeLists.txt
index f58c942b4d7d90a13def31867406264d835f48b6..52485043e8f0e42a39c1b0b73e5bfb31b7c57f42 100644
--- a/storage/myisam/CMakeLists.txt
+++ b/storage/myisam/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(MYISAM_SOURCES  ft_boolean_search.c ft_nlq_search.c ft_parser.c ft_static.c
                                 ha_myisam.cc
diff --git a/storage/myisam/ft_boolean_search.c b/storage/myisam/ft_boolean_search.c
index 4145ca754836c1f3bcf6473faef766359d9fdb13..49bc641f800a393866cb50e976a7e3fe3921394a 100644
--- a/storage/myisam/ft_boolean_search.c
+++ b/storage/myisam/ft_boolean_search.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_myisam.c b/storage/myisam/ft_myisam.c
index 4e1879fa8cef863dedbe9f38dfc43d8d8683fafa..f2f1a2bbc9749d60e71a3c31fc59d6d4c34c52d2 100644
--- a/storage/myisam/ft_myisam.c
+++ b/storage/myisam/ft_myisam.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_nlq_search.c b/storage/myisam/ft_nlq_search.c
index 9524b6f1833b46de0313ec2974a55a552ac4d82c..2add5c5b31b04673eb45327d006ab1c151872390 100644
--- a/storage/myisam/ft_nlq_search.c
+++ b/storage/myisam/ft_nlq_search.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_parser.c b/storage/myisam/ft_parser.c
index 5612b4bec14c59a23e6ad10f2bc9c458bf68f348..a85f8cc8c78b85e4e589ee544d83c28f04cd7394 100644
--- a/storage/myisam/ft_parser.c
+++ b/storage/myisam/ft_parser.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_static.c b/storage/myisam/ft_static.c
index 92a0621fd9f507779a3ff1e1ccbb4d08feb30310..78123cdf261cf15059fa6a2ee088a866887402d1 100644
--- a/storage/myisam/ft_static.c
+++ b/storage/myisam/ft_static.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_stopwords.c b/storage/myisam/ft_stopwords.c
index 7b2d520a65a8726b6b9877fecd2bc2d14d0ca5a6..c5ca8b848edbe9744583ffd46df157ef83958a6b 100644
--- a/storage/myisam/ft_stopwords.c
+++ b/storage/myisam/ft_stopwords.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ft_update.c b/storage/myisam/ft_update.c
index 19144ff01fbb36eee2296b292683e7dbb7e6da16..a688b6704b3664bf7d3f60f629b7556947bbe9fa 100644
--- a/storage/myisam/ft_update.c
+++ b/storage/myisam/ft_update.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ftbench/Ecompare.pl b/storage/myisam/ftbench/Ecompare.pl
index c958db6e9a939aece6a4841a5dd95da1c0214661..07132ef9001932caabe3ea4976fe02a5f7f472dc 100755
--- a/storage/myisam/ftbench/Ecompare.pl
+++ b/storage/myisam/ftbench/Ecompare.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # compares out-files (as created by Ereport.pl) from dir1/*.out and dir2/*.out
 # for each effectiveness column computes the probability of the hypothesis
diff --git a/storage/myisam/ftbench/Ecreate.pl b/storage/myisam/ftbench/Ecreate.pl
index 9e0ef321b74e37de53471f238a83c5957549efff..86af9f9c0a5bdf84aecff08285b39e253a040dfb 100755
--- a/storage/myisam/ftbench/Ecreate.pl
+++ b/storage/myisam/ftbench/Ecreate.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 $test=shift || die "Usage $0 testname [option]";
 $option=shift;
diff --git a/storage/myisam/ftbench/Ereport.pl b/storage/myisam/ftbench/Ereport.pl
index c3dad3d82bed2c1fbbc9f1e8acd76693b2d2f362..d3f8961ec8591b6c721c23331dd1c038241441b0 100755
--- a/storage/myisam/ftbench/Ereport.pl
+++ b/storage/myisam/ftbench/Ereport.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 die "Use: $0 eval_output qrels_file\n" unless @ARGV==2;
 
diff --git a/storage/myisam/ftbench/ft-test-run.sh b/storage/myisam/ftbench/ft-test-run.sh
index 08e03474dac2b196d1e8e755efd5b905bcec7a9c..08294071b47833c3e6c5e31a57726185e0078756 100755
--- a/storage/myisam/ftbench/ft-test-run.sh
+++ b/storage/myisam/ftbench/ft-test-run.sh
@@ -16,7 +16,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 if [ ! -x ./ft-test-run.sh ] ; then
   echo "Usage: ./ft-test-run.sh"
diff --git a/storage/myisam/ftdefs.h b/storage/myisam/ftdefs.h
index 5c7f4c64a51c144561a4965015d8229746acf6ef..a7417813c22761ac1b4e80ffccebf1ad95152942 100644
--- a/storage/myisam/ftdefs.h
+++ b/storage/myisam/ftdefs.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/fulltext.h b/storage/myisam/fulltext.h
index 98b3247ba197ca47b43eaefd188dcd174d3f7988..d8f900a605e94ea0a0f00ba6f5b352e3a9bee73d 100644
--- a/storage/myisam/fulltext.h
+++ b/storage/myisam/fulltext.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code */
 
diff --git a/storage/myisam/ha_myisam.cc b/storage/myisam/ha_myisam.cc
index 13c28dd13933d5966fc3cb287f652450e4d41360..bfa85abb7d968015c16d6a991bac0a141beebb89 100644
--- a/storage/myisam/ha_myisam.cc
+++ b/storage/myisam/ha_myisam.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
@@ -2016,7 +2016,7 @@ void ha_myisam::update_create_info(HA_CREATE_INFO *create_info)
 }
 
 
-int ha_myisam::create(const char *name, register TABLE *table_arg,
+int ha_myisam::create(const char *name, TABLE *table_arg,
 		      HA_CREATE_INFO *ha_create_info)
 {
   int error;
diff --git a/storage/myisam/ha_myisam.h b/storage/myisam/ha_myisam.h
index b132c95579563429206347da28f22098105deb2f..8890a4c9b2a9fc528032759ba0bd70917ca1135a 100644
--- a/storage/myisam/ha_myisam.h
+++ b/storage/myisam/ha_myisam.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_INTERFACE
diff --git a/storage/myisam/mi_cache.c b/storage/myisam/mi_cache.c
index edcc3520c3524d0d69eeadbd01f6e04876782088..46e272c9d45e2957923d1b8d8433923da0f1a4b5 100644
--- a/storage/myisam/mi_cache.c
+++ b/storage/myisam/mi_cache.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Functions for read record cacheing with myisam
diff --git a/storage/myisam/mi_changed.c b/storage/myisam/mi_changed.c
index e7ceff24287b5a79f1ff8df49c9283ba204da855..1eb2b5173d5e1c5ef03d9a985df81c0bf52b393d 100644
--- a/storage/myisam/mi_changed.c
+++ b/storage/myisam/mi_changed.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Check if somebody has changed table since last check. */
 
diff --git a/storage/myisam/mi_check.c b/storage/myisam/mi_check.c
index 3bc141083e8caa8c83d98e097d9c3927e0fc1f12..334ce75cd2657f044180f299070343585278a04d 100644
--- a/storage/myisam/mi_check.c
+++ b/storage/myisam/mi_check.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Describe, check and repair of MyISAM tables */
 
diff --git a/storage/myisam/mi_checksum.c b/storage/myisam/mi_checksum.c
index baee85566c2c30136f9bfa2be1b066eac1cf08b8..ff84fa67e59fdce03c8b88da4bb5d97fc60a347e 100644
--- a/storage/myisam/mi_checksum.c
+++ b/storage/myisam/mi_checksum.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Calculate a checksum for a row */
 
diff --git a/storage/myisam/mi_close.c b/storage/myisam/mi_close.c
index f0a82bcef047600215d1a3db2b54813b0f966380..8e6515f112ca423f848b6f09a3991a86ab4f29c0 100644
--- a/storage/myisam/mi_close.c
+++ b/storage/myisam/mi_close.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* close a isam-database */
 /*
diff --git a/storage/myisam/mi_create.c b/storage/myisam/mi_create.c
index 8c02674fba57a0fb6a7879c0fe26220d24b5299d..b7aac83c368a41382c7eb816616c91548bd08e3b 100644
--- a/storage/myisam/mi_create.c
+++ b/storage/myisam/mi_create.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Create a MyISAM table */
 
diff --git a/storage/myisam/mi_dbug.c b/storage/myisam/mi_dbug.c
index 4606e0af170bae3b2448a99e611e806ef85eeb03..6f99d074c3dd51d1a5d01aecc060a6b68cc931fe 100644
--- a/storage/myisam/mi_dbug.c
+++ b/storage/myisam/mi_dbug.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Support rutiner with are using with dbug */
 
diff --git a/storage/myisam/mi_delete.c b/storage/myisam/mi_delete.c
index 6a023f35b880888dae930b4604f7a683c82eb688..419a0011f9ad852facf17b58d7b6360c84ab2db2 100644
--- a/storage/myisam/mi_delete.c
+++ b/storage/myisam/mi_delete.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Remove a row from a MyISAM table */
 
diff --git a/storage/myisam/mi_delete_all.c b/storage/myisam/mi_delete_all.c
index 37fdf2dcb04f32ade639df7a4f981678084aa9b0..31801399c7a92c8175172714ddd572c6e0fbce37 100644
--- a/storage/myisam/mi_delete_all.c
+++ b/storage/myisam/mi_delete_all.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Remove all rows from a MyISAM table */
 /* This clears the status information and truncates files */
diff --git a/storage/myisam/mi_delete_table.c b/storage/myisam/mi_delete_table.c
index 5ad63a5cc8766093a6e6c740518755e685d6d001..7990c3e8a8031161d3494bb488174bd1a1128b19 100644
--- a/storage/myisam/mi_delete_table.c
+++ b/storage/myisam/mi_delete_table.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   deletes a table
diff --git a/storage/myisam/mi_dynrec.c b/storage/myisam/mi_dynrec.c
index 5241d72014cccf867fb1656cb031a40a0dbf5f39..7c32c43408fb3c41f30231ff66b4783ed02ea7e2 100644
--- a/storage/myisam/mi_dynrec.c
+++ b/storage/myisam/mi_dynrec.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Functions to handle space-packed-records and blobs
diff --git a/storage/myisam/mi_extra.c b/storage/myisam/mi_extra.c
index bb276f0226dce068d48f08aed3bdd7a9d04e3b84..a561ab8c7a3928d45b769db0c2593a1f06d345ec 100644
--- a/storage/myisam/mi_extra.c
+++ b/storage/myisam/mi_extra.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 #ifdef HAVE_SYS_MMAN_H
diff --git a/storage/myisam/mi_extrafunc.h b/storage/myisam/mi_extrafunc.h
index 2109796763dc3c6322137d10cb1eb79e0b312028..bfefb52caf881ae3a76c582db0ce8ec25ab40e63 100644
--- a/storage/myisam/mi_extrafunc.h
+++ b/storage/myisam/mi_extrafunc.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 void _mi_report_crashed(MI_INFO *file __attribute__((unused)),
                         const char *message __attribute__((unused)),
diff --git a/storage/myisam/mi_info.c b/storage/myisam/mi_info.c
index 3b9288eeb8388bacabdce0aacdc9cb3467a001f5..29d2283bc859fa078782e3b8dff5d904b8259dce 100644
--- a/storage/myisam/mi_info.c
+++ b/storage/myisam/mi_info.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Return useful base information for an open table */
 
diff --git a/storage/myisam/mi_key.c b/storage/myisam/mi_key.c
index 18ecc9e8ba3e9a6eeb2b145e2b5f356335165535..b5ca83600e6951185c758a48592a5421fef072d7 100644
--- a/storage/myisam/mi_key.c
+++ b/storage/myisam/mi_key.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Functions to handle keys */
 
diff --git a/storage/myisam/mi_keycache.c b/storage/myisam/mi_keycache.c
index 59a1ca27614249be990fc25f3ea282468f26361e..d7f1d8b17454af9ef9c3415057ef49b7ce9edab2 100644
--- a/storage/myisam/mi_keycache.c
+++ b/storage/myisam/mi_keycache.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Key cache assignments
diff --git a/storage/myisam/mi_locking.c b/storage/myisam/mi_locking.c
index 85b06c81312eb311c28ed8dcf1ef8244b3874fb8..3ec4026d6db9a7fb0d6e2cd6c8495e9d1d535c8f 100644
--- a/storage/myisam/mi_locking.c
+++ b/storage/myisam/mi_locking.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   locking of isam-tables.
diff --git a/storage/myisam/mi_log.c b/storage/myisam/mi_log.c
index 7004144c8bcd91c848ec91759af115463d62ec8b..9b8405d0a9cdc2c9e5e7eb8e766b4cf10586d52c 100644
--- a/storage/myisam/mi_log.c
+++ b/storage/myisam/mi_log.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Logging of MyISAM commands and records on logfile for debugging
diff --git a/storage/myisam/mi_open.c b/storage/myisam/mi_open.c
index e692f31b2b45be3bf716383d0fd8e4957df37265..c1bf4f15ccb2e6f1e1bf60534e33a7e37946b05c 100644
--- a/storage/myisam/mi_open.c
+++ b/storage/myisam/mi_open.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   open a isam-database
diff --git a/storage/myisam/mi_packrec.c b/storage/myisam/mi_packrec.c
index fc32bb7e51893cdf01cc29c965323b0878a6594e..6fa968bc79e0f67423c27e30909af629d0d0aa2f 100644
--- a/storage/myisam/mi_packrec.c
+++ b/storage/myisam/mi_packrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 	/* Functions to compressed records */
 
diff --git a/storage/myisam/mi_page.c b/storage/myisam/mi_page.c
index bbcacd35d5d070cbbdf1d9ae5acd88515ac8c0dc..4d199f9e9577478ec45f5fc5048ce7aea431aa76 100644
--- a/storage/myisam/mi_page.c
+++ b/storage/myisam/mi_page.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Read and write key blocks */
 
diff --git a/storage/myisam/mi_panic.c b/storage/myisam/mi_panic.c
index 8607b8aea889d898d2386a717e2890588e4ebb00..541cf3996626946f58db97331f77c2a5f78f9b89 100644
--- a/storage/myisam/mi_panic.c
+++ b/storage/myisam/mi_panic.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "fulltext.h"
 
diff --git a/storage/myisam/mi_preload.c b/storage/myisam/mi_preload.c
index 1a2d5aac94fdcf2147d05c8361cc624876a773b4..bd61540c9122443af5b85fe40a4e49611536f97e 100644
--- a/storage/myisam/mi_preload.c
+++ b/storage/myisam/mi_preload.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Preload indexes into key cache
diff --git a/storage/myisam/mi_range.c b/storage/myisam/mi_range.c
index 2074c873979970d1b3dcc292c955a40049f2fce5..de76c4cee9311c5ff6bfb24d7bf6c4d10bca2b42 100644
--- a/storage/myisam/mi_range.c
+++ b/storage/myisam/mi_range.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Gives a approximated number of how many records there is between two keys.
diff --git a/storage/myisam/mi_rename.c b/storage/myisam/mi_rename.c
index 3c0f2e9721687d8d982c32e6bfb3a9de94305b68..19df2e54213d2b2f0c6bafbc2b697f3e5dae3031 100644
--- a/storage/myisam/mi_rename.c
+++ b/storage/myisam/mi_rename.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Rename a table
diff --git a/storage/myisam/mi_rfirst.c b/storage/myisam/mi_rfirst.c
index 5f656229b3b35ea28190a6a4c554b919606e030b..7bfe87867eeb5500fca1f01ab69a842647cb2a1e 100644
--- a/storage/myisam/mi_rfirst.c
+++ b/storage/myisam/mi_rfirst.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/mi_rkey.c b/storage/myisam/mi_rkey.c
index b70922b0505f2ab4ebea25f8d303653c075c89bd..fa56b811313d3d13b072a155b00b8a01a1d3a610 100644
--- a/storage/myisam/mi_rkey.c
+++ b/storage/myisam/mi_rkey.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Read record based on a key */
 
diff --git a/storage/myisam/mi_rlast.c b/storage/myisam/mi_rlast.c
index b5465d2eadd1c52d20763441827fbaa912a34529..30cd17d97bb487c275cb9f604089e51e68749d8d 100644
--- a/storage/myisam/mi_rlast.c
+++ b/storage/myisam/mi_rlast.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/mi_rnext.c b/storage/myisam/mi_rnext.c
index 509cd75fbab8fcf7b8fb209d56a77e0e9aa49661..4f6bddc01cdc8799b6892732be3bd4fb1504b619 100644
--- a/storage/myisam/mi_rnext.c
+++ b/storage/myisam/mi_rnext.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/mi_rnext_same.c b/storage/myisam/mi_rnext_same.c
index d6856459ae71e7c3eff70697b3ac78432c6851e6..ed9e3c55b2f1ec42605699771bc3c5dcda626872 100644
--- a/storage/myisam/mi_rnext_same.c
+++ b/storage/myisam/mi_rnext_same.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 #include "rt_index.h"
diff --git a/storage/myisam/mi_rprev.c b/storage/myisam/mi_rprev.c
index 27fbda955746a9906011912f710af93ee7f89a29..765f8a5d79f884f25a3fd327df5236517bab8eb1 100644
--- a/storage/myisam/mi_rprev.c
+++ b/storage/myisam/mi_rprev.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/mi_rrnd.c b/storage/myisam/mi_rrnd.c
index dd321e19e0041becd57a2c66ed0b50c08679c31f..4e49e7922ce7f760bc399feb647e9b5f357ed7de 100644
--- a/storage/myisam/mi_rrnd.c
+++ b/storage/myisam/mi_rrnd.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Read a record with random-access. The position to the record must
    get by MI_INFO. The next record can be read with pos= MI_POS_ERROR */
diff --git a/storage/myisam/mi_rsame.c b/storage/myisam/mi_rsame.c
index 8258dcdb8091116dd6f7d88d92a182442741a18f..7511531b26af2be5e244914dacf75143a3758dca 100644
--- a/storage/myisam/mi_rsame.c
+++ b/storage/myisam/mi_rsame.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/mi_rsamepos.c b/storage/myisam/mi_rsamepos.c
index 9a7d46eab14b021e803677cb8bb38766f24d3cf0..4570aa3b4a757f650a95eaa37447e6234ef3cc38 100644
--- a/storage/myisam/mi_rsamepos.c
+++ b/storage/myisam/mi_rsamepos.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* read record through position and fix key-position */
 /* As mi_rsame but supply a position */
diff --git a/storage/myisam/mi_scan.c b/storage/myisam/mi_scan.c
index 2ccab7ba306b338775bf407a33d0ddc3ec409590..8d436c4eadaf184d180d7dc895d72f0ebf69784a 100644
--- a/storage/myisam/mi_scan.c
+++ b/storage/myisam/mi_scan.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Read through all rows sequntially */
 
diff --git a/storage/myisam/mi_search.c b/storage/myisam/mi_search.c
index 92f28f4e32ab5acf327232030eae462c50c0518a..d16427f2d4d180f1c8b9b5aa1b1a688f156d2047 100644
--- a/storage/myisam/mi_search.c
+++ b/storage/myisam/mi_search.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* key handling functions */
 
diff --git a/storage/myisam/mi_static.c b/storage/myisam/mi_static.c
index 49019fb861c3e02352229c369dc573665a64edfb..3679ea4a3293bbcf59760959f0d528ca334ac00f 100644
--- a/storage/myisam/mi_static.c
+++ b/storage/myisam/mi_static.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Static variables for MyISAM library. All definied here for easy making of
diff --git a/storage/myisam/mi_statrec.c b/storage/myisam/mi_statrec.c
index b8fa7554034d144588b666578d93d109e80646cc..363c9707a4b717b969f294972ae77b03f8be3959 100644
--- a/storage/myisam/mi_statrec.c
+++ b/storage/myisam/mi_statrec.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 	/* Functions to handle fixed-length-records */
 
diff --git a/storage/myisam/mi_test1.c b/storage/myisam/mi_test1.c
index d90a8549e1ef49162cbc5dab4e53542a34aca36f..afa246ba7e0bff6f6d210113d31c30eb84f99abc 100644
--- a/storage/myisam/mi_test1.c
+++ b/storage/myisam/mi_test1.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Testing of the basic functions of a MyISAM table */
 
diff --git a/storage/myisam/mi_test2.c b/storage/myisam/mi_test2.c
index 32dabca0ef598529a61a4fc6736c7a2682f0aec9..48a091e80defd4840b4c2c98a59819167d8c8391 100644
--- a/storage/myisam/mi_test2.c
+++ b/storage/myisam/mi_test2.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Test av isam-databas: stor test */
 
diff --git a/storage/myisam/mi_test3.c b/storage/myisam/mi_test3.c
index 86a639ad2b021e1893be1ae281c9e197fe3457a6..7bcbddbf8d92954f8b09fa7680fc9e4d36e774d4 100644
--- a/storage/myisam/mi_test3.c
+++ b/storage/myisam/mi_test3.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Test av locking */
 
diff --git a/storage/myisam/mi_test_all.sh b/storage/myisam/mi_test_all.sh
index e6327fd82479ed0994123db48d1de63214521118..4d69051eaae777ed849e0e6dd11b98843e870ca3 100755
--- a/storage/myisam/mi_test_all.sh
+++ b/storage/myisam/mi_test_all.sh
@@ -16,7 +16,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 #
 # Execute some simple basic test on MyISAM libary to check if things
diff --git a/storage/myisam/mi_unique.c b/storage/myisam/mi_unique.c
index cdf3e618275e34e86c3c6d00587c69ea8c481a20..1f3a35b1965735e923dedf9acd957c6a6aeb551e 100644
--- a/storage/myisam/mi_unique.c
+++ b/storage/myisam/mi_unique.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Functions to check if a row is unique */
 
diff --git a/storage/myisam/mi_update.c b/storage/myisam/mi_update.c
index b75bd4bf2aabd8c536c47ee404a46feace9fda59..89ab5a0aeca30591e78f4640cc38f93c20b3174b 100644
--- a/storage/myisam/mi_update.c
+++ b/storage/myisam/mi_update.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Update an old row in a MyISAM table */
 
diff --git a/storage/myisam/mi_write.c b/storage/myisam/mi_write.c
index 896f1fdab1fcd8eae1c557ee02ce963b98a394f4..5ae09b26760a6881c6b6803353566c367a254146 100644
--- a/storage/myisam/mi_write.c
+++ b/storage/myisam/mi_write.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Write a row to a MyISAM table */
 
diff --git a/storage/myisam/myisam_ftdump.c b/storage/myisam/myisam_ftdump.c
index 55ee3795f9b1eb234aefd2bc36721854eb13dd50..7ced701ed5b801774fbb50169762d735b6443d10 100644
--- a/storage/myisam/myisam_ftdump.c
+++ b/storage/myisam/myisam_ftdump.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Written by Sergei A. Golubchik, who has a shared copyright to this code
    added support for long options (my_getopt) 22.5.2002 by Jani Tolonen */
diff --git a/storage/myisam/myisamchk.c b/storage/myisam/myisamchk.c
index 74e29a7621f62fcdd57bdbdd8ff801b250d6b30e..1d33a8fdf356b3f1905620fca5400c1918022aa5 100644
--- a/storage/myisam/myisamchk.c
+++ b/storage/myisam/myisamchk.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Describe, check and repair of MyISAM tables */
 
diff --git a/storage/myisam/myisamdef.h b/storage/myisam/myisamdef.h
index 9d94a26d30cf50e5d8442e10bdd8f76e782a6d5e..e0e8bcefd651293c1ae5764061744632bf17a942 100644
--- a/storage/myisam/myisamdef.h
+++ b/storage/myisam/myisamdef.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is included by all internal myisam files */
 
@@ -536,8 +536,7 @@ extern uchar *_mi_get_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page,
                           uchar *key, uchar *keypos,
                           uint *return_key_length);
 extern uint _mi_keylength(MI_KEYDEF *keyinfo, uchar *key);
-extern uint _mi_keylength_part(MI_KEYDEF *keyinfo, register uchar *key,
-                               HA_KEYSEG *end);
+extern uint _mi_keylength_part(MI_KEYDEF *keyinfo, uchar *key, HA_KEYSEG *end);
 extern uchar *_mi_move_key(MI_KEYDEF *keyinfo, uchar *to, uchar *from);
 extern int _mi_search_next(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key,
                            uint key_length, uint nextflag, my_off_t pos);
@@ -716,12 +715,12 @@ my_bool check_table_is_closed(const char *name, const char *where);
 int mi_open_datafile(MI_INFO *info, MYISAM_SHARE *share);
 
 int mi_open_keyfile(MYISAM_SHARE *share);
-void mi_setup_functions(register MYISAM_SHARE *share);
+void mi_setup_functions(MYISAM_SHARE *share);
 my_bool mi_dynmap_file(MI_INFO *info, my_off_t size);
 int mi_munmap_file(MI_INFO *info);
 void mi_remap_file(MI_INFO *info, my_off_t size);
 
-ICP_RESULT mi_check_index_cond(register MI_INFO *info, uint keynr, uchar *record);
+ICP_RESULT mi_check_index_cond(MI_INFO *info, uint keynr, uchar *record);
     /* Functions needed by mi_check */
 int killed_ptr(HA_CHECK *param);
 void mi_check_print_error(HA_CHECK *param, const char *fmt, ...);
diff --git a/storage/myisam/myisamlog.c b/storage/myisam/myisamlog.c
index f059d6f4c7017ec4d7717992fa713afc97070df2..d1f82237f528ced14ef0c555f4adef8cacd6ab44 100644
--- a/storage/myisam/myisamlog.c
+++ b/storage/myisam/myisamlog.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* write whats in isam.log */
 
diff --git a/storage/myisam/myisampack.c b/storage/myisam/myisampack.c
index bb9f59f86f737f4828f97dc47033841624a51877..2ab26b45f070284bcad592fff5bb3506fccac1a1 100644
--- a/storage/myisam/myisampack.c
+++ b/storage/myisam/myisampack.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Pack MyISAM file */
 
diff --git a/storage/myisam/rt_index.c b/storage/myisam/rt_index.c
index b3b7fd0e37fc64a6a3bf3d01268fa3e9df763921..08543ec2b22543b4ac97bbda942ce63392166386 100644
--- a/storage/myisam/rt_index.c
+++ b/storage/myisam/rt_index.c
@@ -11,7 +11,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/rt_index.h b/storage/myisam/rt_index.h
index e7f00b1c5df27ffc3d09ee2bd48488b06733168c..2c1009290c687406a0fdcca45494eaeaad21e51a 100644
--- a/storage/myisam/rt_index.h
+++ b/storage/myisam/rt_index.h
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef _rt_index_h
 #define _rt_index_h
diff --git a/storage/myisam/rt_key.c b/storage/myisam/rt_key.c
index f4dbf06ae2ff257620a365e98ec60b45a69bb62d..3c58a454834b2e9c343f02021d959dbd90977155 100644
--- a/storage/myisam/rt_key.c
+++ b/storage/myisam/rt_key.c
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/rt_key.h b/storage/myisam/rt_key.h
index 94d79d08feb45b5feedf6d751d72468672ac265e..56f57d847bf40213cc6919d735fe4835b5293788 100644
--- a/storage/myisam/rt_key.h
+++ b/storage/myisam/rt_key.h
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Written by Ramil Kalimullin, who has a shared copyright to this code */
 
diff --git a/storage/myisam/rt_mbr.c b/storage/myisam/rt_mbr.c
index 05576f0b5e9f856ae8cd41a2dc5aab899ab271b5..8bcaf9f644a98914d85812570978c5dad07aa389 100644
--- a/storage/myisam/rt_mbr.c
+++ b/storage/myisam/rt_mbr.c
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/rt_mbr.h b/storage/myisam/rt_mbr.h
index 597e938758f4845407e87042d28932968ed8da45..43e55d390939ccb76dd6806716ed00e3a9ec70f4 100644
--- a/storage/myisam/rt_mbr.h
+++ b/storage/myisam/rt_mbr.h
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef _rt_mbr_h
 #define _rt_mbr_h
diff --git a/storage/myisam/rt_split.c b/storage/myisam/rt_split.c
index be61734e01c97338ae24b53e0010dbd61b43f927..91465c5a231184e691ce030c4307b41f99648c36 100644
--- a/storage/myisam/rt_split.c
+++ b/storage/myisam/rt_split.c
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/rt_test.c b/storage/myisam/rt_test.c
index 8b537d134efbde7b09b50aa16201af59937edbcf..78deb80064af9d91fd48b192c2cf45037c5394b1 100644
--- a/storage/myisam/rt_test.c
+++ b/storage/myisam/rt_test.c
@@ -11,7 +11,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Testing of the basic functions of a MyISAM rtree table         */
 /* Written by Alex Barkov who has a shared copyright to this code */
diff --git a/storage/myisam/sort.c b/storage/myisam/sort.c
index f9838d4dcb5f8a4adf429c15a19a650c1ae2abaf..6e8f5c89fdf308429bc76b7a1ce8593f8ffbb904 100644
--- a/storage/myisam/sort.c
+++ b/storage/myisam/sort.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Creates a index for a database by reading keys, sorting them and outputing
diff --git a/storage/myisam/sp_defs.h b/storage/myisam/sp_defs.h
index e04f0578fd7949859419b6c14c114b4908f51842..d43fa49ed57c3de8b0a81d1b86581d005e83b9bf 100644
--- a/storage/myisam/sp_defs.h
+++ b/storage/myisam/sp_defs.h
@@ -12,7 +12,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifndef _SP_DEFS_H
 #define _SP_DEFS_H
diff --git a/storage/myisam/sp_key.c b/storage/myisam/sp_key.c
index 3837ed01bd277850566e52415490697ef4e04e37..c3aeb7553f2dd8ac4a099b5c6a3e2f2763c55085 100644
--- a/storage/myisam/sp_key.c
+++ b/storage/myisam/sp_key.c
@@ -11,7 +11,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myisamdef.h"
 
diff --git a/storage/myisam/sp_test.c b/storage/myisam/sp_test.c
index d573d96086e3fc0c68cda0bace5eb0408d7be761..4e05dec6a26147d1e8efa747d371840667844521 100644
--- a/storage/myisam/sp_test.c
+++ b/storage/myisam/sp_test.c
@@ -11,7 +11,7 @@
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Testing of the basic functions of a MyISAM spatial table        */
 /* Written by Alex Barkov, who has a shared copyright to this code */
diff --git a/storage/myisammrg/CMakeLists.txt b/storage/myisammrg/CMakeLists.txt
index eec3ca783dc511251bee1cc01cb801f49f5dc65d..b4db348d272286857faebc7e0febf86ba22fb7f3 100644
--- a/storage/myisammrg/CMakeLists.txt
+++ b/storage/myisammrg/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(MYISAMMRG_SOURCES  myrg_close.c myrg_create.c myrg_delete.c myrg_extra.c myrg_info.c
 				ha_myisammrg.cc
diff --git a/storage/myisammrg/ha_myisammrg.cc b/storage/myisammrg/ha_myisammrg.cc
index d1a3babdb2d522880184a5af9f304cf3c0f16eb2..4cc4aca3f908482f914f7ef06f466a7e9b00df27 100644
--- a/storage/myisammrg/ha_myisammrg.cc
+++ b/storage/myisammrg/ha_myisammrg.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 /*
@@ -1567,7 +1567,7 @@ int ha_myisammrg::create_mrg(const char *name, HA_CREATE_INFO *create_info)
 }
 
 
-int ha_myisammrg::create(const char *name, register TABLE *form,
+int ha_myisammrg::create(const char *name, TABLE *form,
 			 HA_CREATE_INFO *create_info)
 {
   char buff[FN_REFLEN];
diff --git a/storage/myisammrg/ha_myisammrg.h b/storage/myisammrg/ha_myisammrg.h
index b6db549119d37b2619b0bdba6c27357360ea87ef..ecf83f08d11450ea30e16746e45c9a21a07bb43f 100644
--- a/storage/myisammrg/ha_myisammrg.h
+++ b/storage/myisammrg/ha_myisammrg.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #ifdef USE_PRAGMA_INTERFACE
diff --git a/storage/myisammrg/myrg_close.c b/storage/myisammrg/myrg_close.c
index 97c3561906767cd3fc949ff0e130b6187f71c1ff..636382f92d00ad7af1d5ae2723f5d91fb86a0db5 100644
--- a/storage/myisammrg/myrg_close.c
+++ b/storage/myisammrg/myrg_close.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* close a isam-database */
 
diff --git a/storage/myisammrg/myrg_create.c b/storage/myisammrg/myrg_create.c
index 715a5bcbd320d03ab2470e5cf291e1d9c81401b5..67e94f1dedd3582363b6ade2289f61786c87e8e3 100644
--- a/storage/myisammrg/myrg_create.c
+++ b/storage/myisammrg/myrg_create.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Create a MYMERGE_-file */
 
diff --git a/storage/myisammrg/myrg_def.h b/storage/myisammrg/myrg_def.h
index cf60390b22e8f58ec98df468ead344ffdf839b2c..9ef65f220bef93eb3a4d3f0ef774dc1285f0f192 100644
--- a/storage/myisammrg/myrg_def.h
+++ b/storage/myisammrg/myrg_def.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is included by all myisam-merge files */
 
diff --git a/storage/myisammrg/myrg_delete.c b/storage/myisammrg/myrg_delete.c
index a80020d69cdd3649993496f30355014144adeb77..e13b9b4ef8cebbc8454a3f478e7849a99a447dc5 100644
--- a/storage/myisammrg/myrg_delete.c
+++ b/storage/myisammrg/myrg_delete.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Delete last read record */
 
diff --git a/storage/myisammrg/myrg_extra.c b/storage/myisammrg/myrg_extra.c
index 18cc66cf937244917da089340d57f7547559eb75..43dfc18c7101a61642ba038abdcbc9618caea332 100644
--- a/storage/myisammrg/myrg_extra.c
+++ b/storage/myisammrg/myrg_extra.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Extra functions we want to do with a database
diff --git a/storage/myisammrg/myrg_info.c b/storage/myisammrg/myrg_info.c
index 53484b430b33615757c355992a94a65ec75d06aa..1d78c65066d4c3775455d4cfe3c6f451c38914c5 100644
--- a/storage/myisammrg/myrg_info.c
+++ b/storage/myisammrg/myrg_info.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_locking.c b/storage/myisammrg/myrg_locking.c
index 2c48f51991aee867c32c9840927c89e6a3c8107d..a79e35d2364113a90a30e3f863a20e2c15a0d340 100644
--- a/storage/myisammrg/myrg_locking.c
+++ b/storage/myisammrg/myrg_locking.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /*
   Lock databases against read or write.
diff --git a/storage/myisammrg/myrg_open.c b/storage/myisammrg/myrg_open.c
index 7f3937f572d5ce9b880522dbf532fbe1ec49b5d0..46a801802a1850d3b489f8b494995938725a01e5 100644
--- a/storage/myisammrg/myrg_open.c
+++ b/storage/myisammrg/myrg_open.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* open a MyISAM MERGE table */
 
diff --git a/storage/myisammrg/myrg_panic.c b/storage/myisammrg/myrg_panic.c
index 63e7462609ef8c834e6ea81893df8d9157f8b7f2..3721b4037f1704c9f05b81096753c9d7bb92fbc6 100644
--- a/storage/myisammrg/myrg_panic.c
+++ b/storage/myisammrg/myrg_panic.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_queue.c b/storage/myisammrg/myrg_queue.c
index 2ec580e4797087ddb7f4a922b06595380404be0f..08d02bd5b1241ec7d2c3946fd72b86bb2778f450 100644
--- a/storage/myisammrg/myrg_queue.c
+++ b/storage/myisammrg/myrg_queue.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_range.c b/storage/myisammrg/myrg_range.c
index 7dddf12657b0d56bf447db08e3db03c31ad266a1..893bda208333419a4da99faa14c6b3276bd6fc7e 100644
--- a/storage/myisammrg/myrg_range.c
+++ b/storage/myisammrg/myrg_range.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_records.c b/storage/myisammrg/myrg_records.c
index 40116f8b1c5649d5bfcfcaadac27c9a51d83da12..4aa33a0870c1a296485682210afa23a4aa5d9a10 100644
--- a/storage/myisammrg/myrg_records.c
+++ b/storage/myisammrg/myrg_records.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rfirst.c b/storage/myisammrg/myrg_rfirst.c
index 157029e5c3da77f12233a7a42420075b3567a623..c8400c0a96fbffd350c04e9a765c268107812d74 100644
--- a/storage/myisammrg/myrg_rfirst.c
+++ b/storage/myisammrg/myrg_rfirst.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rkey.c b/storage/myisammrg/myrg_rkey.c
index 95056c09a49421bdd4f2b0565493db4b13af67f6..84e8297f5083bfe840c343e33b257b229b670242 100644
--- a/storage/myisammrg/myrg_rkey.c
+++ b/storage/myisammrg/myrg_rkey.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Read record based on a key */
 
diff --git a/storage/myisammrg/myrg_rlast.c b/storage/myisammrg/myrg_rlast.c
index 8fcb424732c50a4c7ea98dd2f2707281791ad430..d9402568f9fd6161e24065921456d8f6193d36fa 100644
--- a/storage/myisammrg/myrg_rlast.c
+++ b/storage/myisammrg/myrg_rlast.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rnext.c b/storage/myisammrg/myrg_rnext.c
index b19d4d5695d109ae4ed0afbc22485cf069830348..8b35e40f70f29b9c784fb96d1a68528ac6e291ae 100644
--- a/storage/myisammrg/myrg_rnext.c
+++ b/storage/myisammrg/myrg_rnext.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rnext_same.c b/storage/myisammrg/myrg_rnext_same.c
index 6b741839a70a4c1803251c6791e73bab4b079d53..f9a114a7cd563e396f3675a1039ca4ee41de6b3a 100644
--- a/storage/myisammrg/myrg_rnext_same.c
+++ b/storage/myisammrg/myrg_rnext_same.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rprev.c b/storage/myisammrg/myrg_rprev.c
index 581bc215c52ad680d404d1296ce85cb55527e2f6..72765f5d9bd792109ad1592d74c60b7b746fa792 100644
--- a/storage/myisammrg/myrg_rprev.c
+++ b/storage/myisammrg/myrg_rprev.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_rrnd.c b/storage/myisammrg/myrg_rrnd.c
index 2e6a77ee5b93e28a87035031c8c86cc810b3be9e..a97f6d300b93a6fef5ce564eaaa29ea547d9a4d9 100644
--- a/storage/myisammrg/myrg_rrnd.c
+++ b/storage/myisammrg/myrg_rrnd.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /*
   Read a record with random-access. The position to the record must
diff --git a/storage/myisammrg/myrg_rsame.c b/storage/myisammrg/myrg_rsame.c
index 34dbbe51007f46484faa6241a826e47a43ea3ef6..f76fe79fa6fb4511ea50d178e259fbc1782fb461 100644
--- a/storage/myisammrg/myrg_rsame.c
+++ b/storage/myisammrg/myrg_rsame.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "myrg_def.h"
 
diff --git a/storage/myisammrg/myrg_static.c b/storage/myisammrg/myrg_static.c
index 176abc458edb929286616ca97b85f3c46f9b0812..a2f5d074c9e6ea69a5726d1717fba32ca5169a2f 100644
--- a/storage/myisammrg/myrg_static.c
+++ b/storage/myisammrg/myrg_static.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Static variables for pisam library. All definied here for easy making of
diff --git a/storage/myisammrg/myrg_update.c b/storage/myisammrg/myrg_update.c
index add6f9f819bd6bcdb5cbafb08c6baa37cadaa677..c70bde07db813d0150afd5a59526e8dbe8755a4e 100644
--- a/storage/myisammrg/myrg_update.c
+++ b/storage/myisammrg/myrg_update.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Update last read record */
 
diff --git a/storage/myisammrg/myrg_write.c b/storage/myisammrg/myrg_write.c
index dbe3142c43e8006aae6e58c165cd2146557fd7c9..eb496911a52de367486d991b806d01c822929407 100644
--- a/storage/myisammrg/myrg_write.c
+++ b/storage/myisammrg/myrg_write.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /* Write a row to a MyISAM MERGE table */
 
diff --git a/storage/oqgraph/graphcore-config.h b/storage/oqgraph/graphcore-config.h
index 3ef9da152ad9af988660562e407a557628b04799..01c4b8b2fa57007b657c7cfa7f4c900f204a47e8 100644
--- a/storage/oqgraph/graphcore-config.h
+++ b/storage/oqgraph/graphcore-config.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/graphcore-graph.cc b/storage/oqgraph/graphcore-graph.cc
index 42366787340a81ad0f817d45e77f53161695e7d6..e82448c26d03f664efeecec021535bc7e66cb25f 100644
--- a/storage/oqgraph/graphcore-graph.cc
+++ b/storage/oqgraph/graphcore-graph.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/graphcore-graph.h b/storage/oqgraph/graphcore-graph.h
index 4b55068a777e82e8df057b566e0f2fc3246fbb4c..1bed07e27d4cd5c545f22c226937e8e18d15d5fb 100644
--- a/storage/oqgraph/graphcore-graph.h
+++ b/storage/oqgraph/graphcore-graph.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/graphcore-types.h b/storage/oqgraph/graphcore-types.h
index 5f333c271bdbee578c69aa5a3d590d7d3305347d..0032e859ef5d8759f455e6cd2ff9a8dcc3729ee2 100644
--- a/storage/oqgraph/graphcore-types.h
+++ b/storage/oqgraph/graphcore-types.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/graphcore.cc b/storage/oqgraph/graphcore.cc
index 1a7df6147e796b3b09b48e6114e4abaab5ed0260..b7a0dac3d9ef4427227ad2684c5bd221085f5780 100644
--- a/storage/oqgraph/graphcore.cc
+++ b/storage/oqgraph/graphcore.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/graphcore.h b/storage/oqgraph/graphcore.h
index 7fa3d4554bfc18808bb1c9028bf0cfa5f1561f8b..0db77af3ab6ff44b948b2213310f0a297e1195af 100644
--- a/storage/oqgraph/graphcore.h
+++ b/storage/oqgraph/graphcore.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/ha_oqgraph.cc b/storage/oqgraph/ha_oqgraph.cc
index 9a7c6070c65b79a786ca070599520decc732ba81..5c244e0b07bc0af8de25af3dbdff7ded8860f0f0 100644
--- a/storage/oqgraph/ha_oqgraph.cc
+++ b/storage/oqgraph/ha_oqgraph.cc
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/ha_oqgraph.h b/storage/oqgraph/ha_oqgraph.h
index 07f47bd12394a8fdec24670ade4c7b6a8d9ba42f..22699f189815a58c038842f420facf683bc3b913 100644
--- a/storage/oqgraph/ha_oqgraph.h
+++ b/storage/oqgraph/ha_oqgraph.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_judy.cc b/storage/oqgraph/oqgraph_judy.cc
index 60b7a4a1fbca5dabb78405d2181ee590c653d5ec..0ad9f9fe1f53dba91b0d094fa84879cd90e038de 100644
--- a/storage/oqgraph/oqgraph_judy.cc
+++ b/storage/oqgraph/oqgraph_judy.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_judy.h b/storage/oqgraph/oqgraph_judy.h
index 091b299afd97fff41a6f85fda384735a8887d9fe..53bb47069673a708729baf374eb32c3a2b200286 100644
--- a/storage/oqgraph/oqgraph_judy.h
+++ b/storage/oqgraph/oqgraph_judy.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_probes.d b/storage/oqgraph/oqgraph_probes.d
index e1a29171b1124c37842d6fe82201841cd1814965..db0b9cd7e52413335387ed731da22badd884bf93 100644
--- a/storage/oqgraph/oqgraph_probes.d
+++ b/storage/oqgraph/oqgraph_probes.d
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 provider oqgraph {
 	probe open();
diff --git a/storage/oqgraph/oqgraph_shim.cc b/storage/oqgraph/oqgraph_shim.cc
index d2492255291f7eee54cc45fe2f5f703eab880f91..3633b03485aa768f8a4710514efcc3bcdf30c44a 100644
--- a/storage/oqgraph/oqgraph_shim.cc
+++ b/storage/oqgraph/oqgraph_shim.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_shim.h b/storage/oqgraph/oqgraph_shim.h
index aab6e797306df5f6d66e29500b3edbc219869463..cd63708e1cdbbf14a4b87dcba9ad6cd321206cdf 100644
--- a/storage/oqgraph/oqgraph_shim.h
+++ b/storage/oqgraph/oqgraph_shim.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_thunk.cc b/storage/oqgraph/oqgraph_thunk.cc
index d81c5078b648e62cb462a8b0db6147dbf6e350d5..2bb87737aab0a304d9a5fb29eb88b08aa23fd80b 100644
--- a/storage/oqgraph/oqgraph_thunk.cc
+++ b/storage/oqgraph/oqgraph_thunk.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/oqgraph/oqgraph_thunk.h b/storage/oqgraph/oqgraph_thunk.h
index fe47c3bc7eb7d74d77677166076b4d9f14923b4e..57c21e8360adc3680ee1a5c4e253f14134f1d061 100644
--- a/storage/oqgraph/oqgraph_thunk.h
+++ b/storage/oqgraph/oqgraph_thunk.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* ======================================================================
    Open Query Graph Computation Engine, based on a concept by Arjen Lentz
diff --git a/storage/perfschema/CMakeLists.txt b/storage/perfschema/CMakeLists.txt
index 89e7ed0807168e5431c22c344c64891ebc0aa9db..7db67700fac4ef4ea7a04e440234a5c08dcae9c1 100644
--- a/storage/perfschema/CMakeLists.txt
+++ b/storage/perfschema/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software Foundation,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}
                     ${CMAKE_SOURCE_DIR}/include
diff --git a/storage/perfschema/cursor_by_account.cc b/storage/perfschema/cursor_by_account.cc
index 6be69f803b2b48eaa8566fbf2f253b37f25bc7b1..2e75b8d51bd3c95403ba2059a15d6162b4b5718a 100644
--- a/storage/perfschema/cursor_by_account.cc
+++ b/storage/perfschema/cursor_by_account.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/cursor_by_account.cc
diff --git a/storage/perfschema/cursor_by_account.h b/storage/perfschema/cursor_by_account.h
index ac52ada880dbcc347d3eb84bef9bf16fcf7f951a..150615b9c542cc504ecf0dd9049428be1a098657 100644
--- a/storage/perfschema/cursor_by_account.h
+++ b/storage/perfschema/cursor_by_account.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef CURSOR_BY_ACCOUNT_H
 #define CURSOR_BY_ACCOUNT_H
diff --git a/storage/perfschema/cursor_by_host.cc b/storage/perfschema/cursor_by_host.cc
index e405bcad7e6ae44cb71632707ec6ed1c7d2960df..d16f8b24b8ed60d4a314e2557900b541e97e9b64 100644
--- a/storage/perfschema/cursor_by_host.cc
+++ b/storage/perfschema/cursor_by_host.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/cursor_by_host.cc
diff --git a/storage/perfschema/cursor_by_host.h b/storage/perfschema/cursor_by_host.h
index c0db4c5bf0c1582e64c2a00d325a53bc0516362c..db33bbad8081cdfab86b1dcc30e09db0ba821c3d 100644
--- a/storage/perfschema/cursor_by_host.h
+++ b/storage/perfschema/cursor_by_host.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef CURSOR_BY_HOST_H
 #define CURSOR_BY_HOST_H
diff --git a/storage/perfschema/cursor_by_thread.cc b/storage/perfschema/cursor_by_thread.cc
index 400e4bd238c4806cc544ece20bedb29d61808df1..2fa9202fcf071fb4f8a9b1135f62995e42c8a2b0 100644
--- a/storage/perfschema/cursor_by_thread.cc
+++ b/storage/perfschema/cursor_by_thread.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/cursor_by_thread.cc
diff --git a/storage/perfschema/cursor_by_thread.h b/storage/perfschema/cursor_by_thread.h
index a671e0edd4240afee8726b2163868e1cf5718328..5a77edf325f53dbee3ddb35500c19fbb75da42f2 100644
--- a/storage/perfschema/cursor_by_thread.h
+++ b/storage/perfschema/cursor_by_thread.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef CURSOR_BY_THREAD_H
 #define CURSOR_BY_THREAD_H
diff --git a/storage/perfschema/cursor_by_thread_connect_attr.cc b/storage/perfschema/cursor_by_thread_connect_attr.cc
index 7a0dd04119d5ee955803506be520debf6343ea72..2d5399cdac154fda72497b96703fac0fe979ae73 100644
--- a/storage/perfschema/cursor_by_thread_connect_attr.cc
+++ b/storage/perfschema/cursor_by_thread_connect_attr.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "cursor_by_thread_connect_attr.h"
diff --git a/storage/perfschema/cursor_by_thread_connect_attr.h b/storage/perfschema/cursor_by_thread_connect_attr.h
index fbce56f208de785afb6b045a986c40b5d5e4773a..b5059918f7f7ddc9cb75b140311c1f15a472ff1d 100644
--- a/storage/perfschema/cursor_by_thread_connect_attr.h
+++ b/storage/perfschema/cursor_by_thread_connect_attr.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef CURSOR_BY_THREAD_CONNECT_ATTR_H
 #define CURSOR_BY_THREAD_CONNECT_ATTR_H
diff --git a/storage/perfschema/cursor_by_user.cc b/storage/perfschema/cursor_by_user.cc
index d50a6dde1e20099bbef5ab95a1ba7fd4dd39bfe3..37ecbf17fee89d71e1549091a91596310e3ce774 100644
--- a/storage/perfschema/cursor_by_user.cc
+++ b/storage/perfschema/cursor_by_user.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/cursor_by_user.cc
diff --git a/storage/perfschema/cursor_by_user.h b/storage/perfschema/cursor_by_user.h
index c37bb8aa5180767a91404fd12562f36bfc00c9cf..d6e997766b6329fe19be19d8c9559886b9fbc0a1 100644
--- a/storage/perfschema/cursor_by_user.h
+++ b/storage/perfschema/cursor_by_user.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef CURSOR_BY_USER_H
 #define CURSOR_BY_USER_H
diff --git a/storage/perfschema/gen_pfs_lex_token.cc b/storage/perfschema/gen_pfs_lex_token.cc
index 926982dd25df99c6433514c51f20d2a1b2acaee8..dcf25c797061e59848bca5204f55ef68cc32ac2a 100644
--- a/storage/perfschema/gen_pfs_lex_token.cc
+++ b/storage/perfschema/gen_pfs_lex_token.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/ha_perfschema.cc b/storage/perfschema/ha_perfschema.cc
index cdbbc022d5089473018b39a30d5c1c0f3b954d57..42b452ca4dd16dcb9925de9a565a738b27745307 100644
--- a/storage/perfschema/ha_perfschema.cc
+++ b/storage/perfschema/ha_perfschema.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/ha_perfschema.cc
diff --git a/storage/perfschema/ha_perfschema.h b/storage/perfschema/ha_perfschema.h
index ff87b1fd66596c892aded5cf63a2b4a3ba7dc1f3..9c56fc1928e677765afdc40eae8112a87537d9f3 100644
--- a/storage/perfschema/ha_perfschema.h
+++ b/storage/perfschema/ha_perfschema.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef HA_PERFSCHEMA_H
 #define HA_PERFSCHEMA_H
diff --git a/storage/perfschema/pfs.cc b/storage/perfschema/pfs.cc
index 1a3f066bd007f56ccedecb410f5f40202d631cee..fa19f89f9d6ddcc564412ac2cdf6c2744aa99c6e 100644
--- a/storage/perfschema/pfs.cc
+++ b/storage/perfschema/pfs.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs.cc
@@ -2214,7 +2214,7 @@ start_mutex_wait_v1(PSI_mutex_locker_state *state,
   if (! pfs_mutex->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -2312,7 +2312,7 @@ start_rwlock_wait_v1(PSI_rwlock_locker_state *state,
   if (! pfs_rwlock->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -2420,7 +2420,7 @@ start_cond_wait_v1(PSI_cond_locker_state *state,
   if (! pfs_cond->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -2564,7 +2564,7 @@ start_table_io_wait_v1(PSI_table_locker_state *state,
 
   PFS_thread *pfs_thread= my_pthread_getspecific_ptr(PFS_thread*, THR_PFS);
 
-  register uint flags;
+  uint flags;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -2690,7 +2690,7 @@ start_table_lock_wait_v1(PSI_table_locker_state *state,
 
   DBUG_ASSERT((uint) lock_type < array_elements(table_lock_operation_map));
 
-  register uint flags;
+  uint flags;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -2798,7 +2798,7 @@ get_thread_file_name_locker_v1(PSI_file_locker_state *state,
   if (flag_thread_instrumentation && ! pfs_thread->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
 
   state->m_thread= reinterpret_cast (pfs_thread);
   flags= STATE_FLAG_THREAD;
@@ -2867,7 +2867,7 @@ get_thread_file_stream_locker_v1(PSI_file_locker_state *state,
   if (! pfs_file->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
 
   if (flag_thread_instrumentation)
   {
@@ -2973,7 +2973,7 @@ get_thread_file_descriptor_locker_v1(PSI_file_locker_state *state,
   DBUG_ASSERT(pfs_file->m_class != NULL);
   PFS_file_class *klass= pfs_file->m_class;
 
-  register uint flags;
+  uint flags;
 
   if (flag_thread_instrumentation)
   {
@@ -3062,7 +3062,7 @@ start_socket_wait_v1(PSI_socket_locker_state *state,
   if (!pfs_socket->m_enabled || pfs_socket->m_idle)
     return NULL;
 
-  register uint flags= 0;
+  uint flags= 0;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -3321,7 +3321,7 @@ start_idle_wait_v1(PSI_idle_locker_state* state, const char *src_file, uint src_
   if (!global_idle_class.m_enabled)
     return NULL;
 
-  register uint flags= 0;
+  uint flags= 0;
   ulonglong timer_start= 0;
 
   if (flag_thread_instrumentation)
@@ -3403,7 +3403,7 @@ static void end_idle_wait_v1(PSI_idle_locker* locker)
   ulonglong timer_end= 0;
   ulonglong wait_time= 0;
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -3473,7 +3473,7 @@ static void end_mutex_wait_v1(PSI_mutex_locker* locker, int rc)
   DBUG_ASSERT(mutex != NULL);
   PFS_thread *thread= reinterpret_cast (state->m_thread);
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -3794,7 +3794,7 @@ static void end_table_io_wait_v1(PSI_table_locker* locker)
     break;
   }
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -3865,7 +3865,7 @@ static void end_table_lock_wait_v1(PSI_table_locker* locker)
 
   PFS_single_stat *stat= & table->m_table_stat.m_lock_stat.m_stat[state->m_index];
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -4028,7 +4028,7 @@ static void start_file_wait_v1(PSI_file_locker *locker,
   PSI_file_locker_state *state= reinterpret_cast (locker);
   DBUG_ASSERT(state != NULL);
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -4064,7 +4064,7 @@ static void end_file_wait_v1(PSI_file_locker *locker,
   ulonglong timer_end= 0;
   ulonglong wait_time= 0;
   PFS_byte_stat *byte_stat;
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
   size_t bytes= ((int)byte_count > -1 ? byte_count : 0);
 
   PFS_file_stat *file_stat;
@@ -4419,7 +4419,7 @@ get_thread_statement_locker_v1(PSI_statement_locker_state *state,
   if (! klass->m_enabled)
     return NULL;
 
-  register uint flags;
+  uint flags;
 
   if (flag_thread_instrumentation)
   {
@@ -4596,7 +4596,7 @@ static void start_statement_v1(PSI_statement_locker *locker,
   PSI_statement_locker_state *state= reinterpret_cast (locker);
   DBUG_ASSERT(state != NULL);
 
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
   ulonglong timer_start= 0;
 
   if (flags & STATE_FLAG_TIMED)
@@ -4798,7 +4798,7 @@ static void end_statement_v1(PSI_statement_locker *locker, void *stmt_da)
 
   ulonglong timer_end= 0;
   ulonglong wait_time= 0;
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
 
   if (flags & STATE_FLAG_TIMED)
   {
@@ -5024,7 +5024,7 @@ static void end_socket_wait_v1(PSI_socket_locker *locker, size_t byte_count)
   ulonglong timer_end= 0;
   ulonglong wait_time= 0;
   PFS_byte_stat *byte_stat;
-  register uint flags= state->m_flags;
+  uint flags= state->m_flags;
   size_t bytes= ((int)byte_count > -1 ? byte_count : 0);
 
   switch (state->m_operation)
diff --git a/storage/perfschema/pfs.h b/storage/perfschema/pfs.h
index 5f543d80375cc6d9be1cdbad7387e2f3105b05dd..da5e11edab75d74e97dca826159ef0a36f476b4a 100644
--- a/storage/perfschema/pfs.h
+++ b/storage/perfschema/pfs.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_H
 #define PFS_H
diff --git a/storage/perfschema/pfs_account.cc b/storage/perfschema/pfs_account.cc
index 4e3a6d8d1d32683fe2285ad04f2a2dce2e710a9f..6f949d440659299a01de8056a9ea9c2092d80bd9 100644
--- a/storage/perfschema/pfs_account.cc
+++ b/storage/perfschema/pfs_account.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/pfs_account.cc
diff --git a/storage/perfschema/pfs_account.h b/storage/perfschema/pfs_account.h
index efd0a424e68f9cc6fde708eeb4a4b89afa212931..544abf913ae80c8d78de7a3d90b676ea8eb8a939 100644
--- a/storage/perfschema/pfs_account.h
+++ b/storage/perfschema/pfs_account.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_ACCOUNT_H
 #define PFS_ACCOUNT_H
diff --git a/storage/perfschema/pfs_atomic.h b/storage/perfschema/pfs_atomic.h
index 31833b832cf1a8288321cd51222f4ac2119b3f7d..def9339d06db391eb3b046af9486909f9018f1fe 100644
--- a/storage/perfschema/pfs_atomic.h
+++ b/storage/perfschema/pfs_atomic.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_ATOMIC_H
 #define PFS_ATOMIC_H
diff --git a/storage/perfschema/pfs_autosize.cc b/storage/perfschema/pfs_autosize.cc
index 9bf70ceb2166febb16dadb15bb142248d20d637f..d099a3f183694a3c2ae0da895fae1ba010c501e5 100644
--- a/storage/perfschema/pfs_autosize.cc
+++ b/storage/perfschema/pfs_autosize.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_autosize.cc
diff --git a/storage/perfschema/pfs_column_types.h b/storage/perfschema/pfs_column_types.h
index c70ca220d847040f8fbab178ba7a5c2e45690b9f..ef657b3870795870de58280eebf1a2d60eb6af4e 100644
--- a/storage/perfschema/pfs_column_types.h
+++ b/storage/perfschema/pfs_column_types.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_COLUMN_TYPES_H
 #define PFS_COLUMN_TYPES_H
diff --git a/storage/perfschema/pfs_column_values.cc b/storage/perfschema/pfs_column_values.cc
index 65d0ae7171bb8250d358b8c5fb32a71326ebe111..87fa9f0b639e50c07dbda68cf05df20eb7f45670 100644
--- a/storage/perfschema/pfs_column_values.cc
+++ b/storage/perfschema/pfs_column_values.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_column_values.cc
diff --git a/storage/perfschema/pfs_column_values.h b/storage/perfschema/pfs_column_values.h
index 204d5230ddf0703b2d989e1d82687829190ab965..eb25a5977e322efc56913643b6ec66a55d8fb112 100644
--- a/storage/perfschema/pfs_column_values.h
+++ b/storage/perfschema/pfs_column_values.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_COLUMN_VALUES_H
 #define PFS_COLUMN_VALUES_H
diff --git a/storage/perfschema/pfs_con_slice.cc b/storage/perfschema/pfs_con_slice.cc
index bd449df0a4b86c6b0a2916810f21635bee90a8fd..bce4918ae9e01eb54b0990559c8e40635621aa78 100644
--- a/storage/perfschema/pfs_con_slice.cc
+++ b/storage/perfschema/pfs_con_slice.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 
 #include "my_global.h"
diff --git a/storage/perfschema/pfs_con_slice.h b/storage/perfschema/pfs_con_slice.h
index d82adcb58a36ed31a0fe149a1a4b28dda0391635..f83764339c3f678b38531ee7a16df7e2a690ddde 100644
--- a/storage/perfschema/pfs_con_slice.h
+++ b/storage/perfschema/pfs_con_slice.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_CON_SLICE_H
 #define PFS_CON_SLICE_H
diff --git a/storage/perfschema/pfs_defaults.cc b/storage/perfschema/pfs_defaults.cc
index 01cf0d737713aaef60c9ca459cdbbcdf2c1ba375..ec2da41e30bba60a29718a8aae0979b9bf0b1030 100644
--- a/storage/perfschema/pfs_defaults.cc
+++ b/storage/perfschema/pfs_defaults.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_defaults.cc
diff --git a/storage/perfschema/pfs_defaults.h b/storage/perfschema/pfs_defaults.h
index bbb041504e2c38b914be671842976b607f266654..d95c4914e9d1369b6bc6b5b508d3e11e75febc2f 100644
--- a/storage/perfschema/pfs_defaults.h
+++ b/storage/perfschema/pfs_defaults.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_DEFAULTS_H
 #define PFS_DEFAULTS_H
diff --git a/storage/perfschema/pfs_digest.cc b/storage/perfschema/pfs_digest.cc
index 86b05f37fd26affa3b0d82247743b81e89319647..1362ef2676b98110803fbe67f7674382bedf2e3b 100644
--- a/storage/perfschema/pfs_digest.cc
+++ b/storage/perfschema/pfs_digest.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_digest.h
diff --git a/storage/perfschema/pfs_digest.h b/storage/perfschema/pfs_digest.h
index 429a9f4250a5b3075bc76934a9686832f79d29af..543fa7858a40092ed47ac6387f30232d17f61229 100644
--- a/storage/perfschema/pfs_digest.h
+++ b/storage/perfschema/pfs_digest.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_DIGEST_H
 #define PFS_DIGEST_H
diff --git a/storage/perfschema/pfs_engine_table.cc b/storage/perfschema/pfs_engine_table.cc
index 9e9ab02df4689bb624933c359da427e91ca4fa85..289eb034e034dad9ce06feddbba29e6ce4064922 100644
--- a/storage/perfschema/pfs_engine_table.cc
+++ b/storage/perfschema/pfs_engine_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_engine_table.cc
diff --git a/storage/perfschema/pfs_engine_table.h b/storage/perfschema/pfs_engine_table.h
index 2bbf88914202c01cd4ef8739e223a056b75a8f00..d3c4a0e43e6d9bd1736f6a73dd1f3050d248979e 100644
--- a/storage/perfschema/pfs_engine_table.h
+++ b/storage/perfschema/pfs_engine_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_ENGINE_TABLE_H
 #define PFS_ENGINE_TABLE_H
diff --git a/storage/perfschema/pfs_events.h b/storage/perfschema/pfs_events.h
index 905d6f8590fdb3d4d75385ce693a6de3b19bb202..09c3935816f234d2946cc41d8b1dd5786eef9088 100644
--- a/storage/perfschema/pfs_events.h
+++ b/storage/perfschema/pfs_events.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_EVENTS_H
 #define PFS_EVENTS_H
diff --git a/storage/perfschema/pfs_events_stages.cc b/storage/perfschema/pfs_events_stages.cc
index 7351c95c9cbd5ce08779369a43ace1d8b59c0749..673d2cb95f5f5cbc7780339bd5fbb95f6839490a 100644
--- a/storage/perfschema/pfs_events_stages.cc
+++ b/storage/perfschema/pfs_events_stages.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_events_stages.cc
diff --git a/storage/perfschema/pfs_events_stages.h b/storage/perfschema/pfs_events_stages.h
index 43231796be5e5f71639572f8c8ef1bf6782420df..ea879bcd211903ca06a1fba7a98c64e5b6fa6049 100644
--- a/storage/perfschema/pfs_events_stages.h
+++ b/storage/perfschema/pfs_events_stages.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_EVENTS_STAGES_H
 #define PFS_EVENTS_STAGES_H
diff --git a/storage/perfschema/pfs_events_statements.cc b/storage/perfschema/pfs_events_statements.cc
index cecd0167c38aff721c366109cb09630967306ba9..66a98e3f7d8d85f1be94d9025e1b535f5bf12624 100644
--- a/storage/perfschema/pfs_events_statements.cc
+++ b/storage/perfschema/pfs_events_statements.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_events_statements.cc
diff --git a/storage/perfschema/pfs_events_statements.h b/storage/perfschema/pfs_events_statements.h
index d3fd79ea1950ffb33a41e8d8c3c59d37bb20b2cf..a56423d38639f6bb42cba90c6d195c9c44642d48 100644
--- a/storage/perfschema/pfs_events_statements.h
+++ b/storage/perfschema/pfs_events_statements.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_EVENTS_STATEMENTS_H
 #define PFS_EVENTS_STATEMENTS_H
diff --git a/storage/perfschema/pfs_events_waits.cc b/storage/perfschema/pfs_events_waits.cc
index 1120ac2a445b1d2a2375cac2ffe016ec8c642cc7..f99a1f31bd9701678451931af7f9fd163ecbedfb 100644
--- a/storage/perfschema/pfs_events_waits.cc
+++ b/storage/perfschema/pfs_events_waits.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_events_waits.cc
diff --git a/storage/perfschema/pfs_events_waits.h b/storage/perfschema/pfs_events_waits.h
index 52e2ef05ad3310d3d22a3d406d957ec65548c0af..79bd338324141a0aa7411615b517840d1a9c9dbf 100644
--- a/storage/perfschema/pfs_events_waits.h
+++ b/storage/perfschema/pfs_events_waits.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_EVENTS_WAITS_H
 #define PFS_EVENTS_WAITS_H
diff --git a/storage/perfschema/pfs_global.cc b/storage/perfschema/pfs_global.cc
index bd346f2b235ed98d90fcd5671b7a8c99bc7c26bd..25dd817b1495fcc322a99282be14c77779d052c9 100644
--- a/storage/perfschema/pfs_global.cc
+++ b/storage/perfschema/pfs_global.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_global.cc
diff --git a/storage/perfschema/pfs_global.h b/storage/perfschema/pfs_global.h
index f3326c5589f94985c9ad6cc0a96d76c73d4cff35..8ca12883f9dc81fa1c1a9fc9d3c9273a2f5a7d06 100644
--- a/storage/perfschema/pfs_global.h
+++ b/storage/perfschema/pfs_global.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_GLOBAL_H
 #define PFS_GLOBAL_H
@@ -80,7 +80,7 @@ inline uint randomized_index(const void *ptr, uint max_size)
   static uint seed1= 0;
   static uint seed2= 0;
   uint result;
-  register intptr value;
+  intptr value;
 
   if (unlikely(max_size == 0))
     return 0;
diff --git a/storage/perfschema/pfs_host.cc b/storage/perfschema/pfs_host.cc
index 7da34a6d5f62df211c68767653e7396b7b6f7411..8ac2b2fd5d9447a82f043f7468296d19642e34c2 100644
--- a/storage/perfschema/pfs_host.cc
+++ b/storage/perfschema/pfs_host.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/pfs_host.cc
diff --git a/storage/perfschema/pfs_host.h b/storage/perfschema/pfs_host.h
index 9c039cf919fbed5c3c5baf9d75bbace35c30f062..4e6b24bf6c6af6352490005b24a757c278e67916 100644
--- a/storage/perfschema/pfs_host.h
+++ b/storage/perfschema/pfs_host.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_HOST_H
 #define PFS_HOST_H
diff --git a/storage/perfschema/pfs_instr.cc b/storage/perfschema/pfs_instr.cc
index a9ea6faf21268352d516d55e00342f550c8eef10..44b170469bf16663ac59ad9f082d695e891a42a0 100644
--- a/storage/perfschema/pfs_instr.cc
+++ b/storage/perfschema/pfs_instr.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_instr.cc
diff --git a/storage/perfschema/pfs_instr.h b/storage/perfschema/pfs_instr.h
index b25f5769b697a9fee16c91c6de0929ce13005b35..76eeabb99da53d0b4dd765e36d806c40dcfa44c0 100644
--- a/storage/perfschema/pfs_instr.h
+++ b/storage/perfschema/pfs_instr.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_INSTR_H
 #define PFS_INSTR_H
diff --git a/storage/perfschema/pfs_instr_class.cc b/storage/perfschema/pfs_instr_class.cc
index c67c120283d353a1ca761ec5b6151375f9c54bcb..0d06ac025f2a7fd4d8e0d74dda138ee910371c09 100644
--- a/storage/perfschema/pfs_instr_class.cc
+++ b/storage/perfschema/pfs_instr_class.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_instr_class.cc
diff --git a/storage/perfschema/pfs_instr_class.h b/storage/perfschema/pfs_instr_class.h
index a51af2eca124cc485ce94e480900c6915667dd1d..038814b07e2637174b100bc7619cb279340cc0dd 100644
--- a/storage/perfschema/pfs_instr_class.h
+++ b/storage/perfschema/pfs_instr_class.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_INSTR_CLASS_H
 #define PFS_INSTR_CLASS_H
diff --git a/storage/perfschema/pfs_lock.h b/storage/perfschema/pfs_lock.h
index be84d0f7fb4b1c2d4cb9a7a1cec5c4c09ec5d8bc..4011cba2070a0701fb56be245ebf1995a4cc78f4 100644
--- a/storage/perfschema/pfs_lock.h
+++ b/storage/perfschema/pfs_lock.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_LOCK_H
 #define PFS_LOCK_H
diff --git a/storage/perfschema/pfs_server.cc b/storage/perfschema/pfs_server.cc
index 7577154515d99c6958abf1d0ce732f3ba49e60d9..9dd6fbf476215d1c99beb80d150d0277498a0792 100644
--- a/storage/perfschema/pfs_server.cc
+++ b/storage/perfschema/pfs_server.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_server.cc
diff --git a/storage/perfschema/pfs_server.h b/storage/perfschema/pfs_server.h
index bc0c69e86b99d7290ed444cd1c11cad3b0004c4c..aea86a576ccfdf6ce1be07dbf6fec4222b602ed6 100644
--- a/storage/perfschema/pfs_server.h
+++ b/storage/perfschema/pfs_server.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_SERVER_H
 #define PFS_SERVER_H
diff --git a/storage/perfschema/pfs_setup_actor.cc b/storage/perfschema/pfs_setup_actor.cc
index f12d70840c1a7866ee1678acca903974135ec301..f3b6bc1791fa86d6a53e2386c27584b6a877d97f 100644
--- a/storage/perfschema/pfs_setup_actor.cc
+++ b/storage/perfschema/pfs_setup_actor.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_setup_actor.cc
diff --git a/storage/perfschema/pfs_setup_actor.h b/storage/perfschema/pfs_setup_actor.h
index baebd27f0ad281e1160275484d15240414117cf2..92a1617c304707d66334402e258d0e322eee4d56 100644
--- a/storage/perfschema/pfs_setup_actor.h
+++ b/storage/perfschema/pfs_setup_actor.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_SETUP_ACTOR_H
 #define PFS_SETUP_ACTOR_H
diff --git a/storage/perfschema/pfs_setup_object.cc b/storage/perfschema/pfs_setup_object.cc
index 809fe8edd243c4c1541c5a697563394081591ba8..3cc14d9a14e60987533052721e33e515c06f8b5a 100644
--- a/storage/perfschema/pfs_setup_object.cc
+++ b/storage/perfschema/pfs_setup_object.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/pfs_setup_object.cc
diff --git a/storage/perfschema/pfs_setup_object.h b/storage/perfschema/pfs_setup_object.h
index 2615802fe014f0ea816b1d3996d8ac39bff50cbf..0d343f552b267be23ef36f53bd2819317cd25960 100644
--- a/storage/perfschema/pfs_setup_object.h
+++ b/storage/perfschema/pfs_setup_object.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_SETUP_OBJECT_H
 #define PFS_SETUP_OBJECT_H
diff --git a/storage/perfschema/pfs_stat.h b/storage/perfschema/pfs_stat.h
index 13a32d0e3ad74c416491543a13407a85d3de2f76..9e4da7957f67f5cd06d64b102db6533d099b118d 100644
--- a/storage/perfschema/pfs_stat.h
+++ b/storage/perfschema/pfs_stat.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_STAT_H
 #define PFS_STAT_H
diff --git a/storage/perfschema/pfs_timer.cc b/storage/perfschema/pfs_timer.cc
index 8348f165e5cf72922282b687dfdd10700683f348..5e2c27c217b0f99832a7d19e5e174acc67c1d60d 100644
--- a/storage/perfschema/pfs_timer.cc
+++ b/storage/perfschema/pfs_timer.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/pfs_timer.cc
@@ -26,7 +26,6 @@ enum_timer_name idle_timer= TIMER_NAME_MICROSEC;
 enum_timer_name wait_timer= TIMER_NAME_CYCLE;
 enum_timer_name stage_timer= TIMER_NAME_NANOSEC;
 enum_timer_name statement_timer= TIMER_NAME_NANOSEC;
-MY_TIMER_INFO pfs_timer_info;
 
 static ulonglong cycle_v0;
 static ulonglong nanosec_v0;
@@ -65,41 +64,39 @@ void init_timers(void)
 {
   double pico_frequency= 1.0e12;
 
-  my_timer_init(&pfs_timer_info);
-
   cycle_v0= my_timer_cycles();
   nanosec_v0= my_timer_nanoseconds();
   microsec_v0= my_timer_microseconds();
   millisec_v0= my_timer_milliseconds();
   tick_v0= my_timer_ticks();
 
-  if (pfs_timer_info.cycles.frequency > 0)
+  if (sys_timer_info.cycles.frequency > 0)
     cycle_to_pico= round_to_ulong(pico_frequency/
-                                  (double)pfs_timer_info.cycles.frequency);
+                                  (double)sys_timer_info.cycles.frequency);
   else
     cycle_to_pico= 0;
 
-  if (pfs_timer_info.nanoseconds.frequency > 0)
+  if (sys_timer_info.nanoseconds.frequency > 0)
     nanosec_to_pico= round_to_ulong(pico_frequency/
-                                    (double)pfs_timer_info.nanoseconds.frequency);
+                                    (double)sys_timer_info.nanoseconds.frequency);
   else
     nanosec_to_pico= 0;
 
-  if (pfs_timer_info.microseconds.frequency > 0)
+  if (sys_timer_info.microseconds.frequency > 0)
     microsec_to_pico= round_to_ulong(pico_frequency/
-                                     (double)pfs_timer_info.microseconds.frequency);
+                                     (double)sys_timer_info.microseconds.frequency);
   else
     microsec_to_pico= 0;
 
-  if (pfs_timer_info.milliseconds.frequency > 0)
+  if (sys_timer_info.milliseconds.frequency > 0)
     millisec_to_pico= round_to_ulong(pico_frequency/
-                                     (double)pfs_timer_info.milliseconds.frequency);
+                                     (double)sys_timer_info.milliseconds.frequency);
   else
     millisec_to_pico= 0;
 
-  if (pfs_timer_info.ticks.frequency > 0)
+  if (sys_timer_info.ticks.frequency > 0)
     tick_to_pico= round_to_ulonglong(pico_frequency/
-                                     (double)pfs_timer_info.ticks.frequency);
+                                     (double)sys_timer_info.ticks.frequency);
   else
     tick_to_pico= 0;
 
diff --git a/storage/perfschema/pfs_timer.h b/storage/perfschema/pfs_timer.h
index 1cae20e89dda9a4fdbccbf0c9b7c03fdf37e9f3b..a4f55c20994f78d9867ec9c84d9f129473384636 100644
--- a/storage/perfschema/pfs_timer.h
+++ b/storage/perfschema/pfs_timer.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_TIMER_H
 #define PFS_TIMER_H
@@ -102,7 +102,7 @@ extern enum_timer_name statement_timer;
   Timer information data.
   Characteristics about each suported timer.
 */
-extern MY_TIMER_INFO pfs_timer_info;
+extern MYSQL_PLUGIN_IMPORT MY_TIMER_INFO sys_timer_info;
 
 /** Initialize the timer component. */
 void init_timers();
diff --git a/storage/perfschema/pfs_user.cc b/storage/perfschema/pfs_user.cc
index 528457fe017c6f96a9d1cde07d8f1d8c8cf35c48..f9f6782cd75a3dd446e44486c5e7949dc61d035e 100644
--- a/storage/perfschema/pfs_user.cc
+++ b/storage/perfschema/pfs_user.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/pfs_user.cc
diff --git a/storage/perfschema/pfs_user.h b/storage/perfschema/pfs_user.h
index 2cb70e8e4ea929a177b1510776306ab023f55df9..f2b1c4409c7e7976ca69cfce8ec83f54096a539f 100644
--- a/storage/perfschema/pfs_user.h
+++ b/storage/perfschema/pfs_user.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_USER_H
 #define PFS_USER_H
diff --git a/storage/perfschema/pfs_visitor.cc b/storage/perfschema/pfs_visitor.cc
index 616bc27900aac8f08834a50b45d1066f187c1d18..3df7ef91bb39290c4085eefd90c9e6f892dcd884 100644
--- a/storage/perfschema/pfs_visitor.cc
+++ b/storage/perfschema/pfs_visitor.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "my_sys.h"
diff --git a/storage/perfschema/pfs_visitor.h b/storage/perfschema/pfs_visitor.h
index 4ec63d006369f93682ac11b3416a52ab96d2c8f9..c3ada2f4e0b6f19752b26af54f5426fcbcb43908 100644
--- a/storage/perfschema/pfs_visitor.h
+++ b/storage/perfschema/pfs_visitor.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef PFS_VISITOR_H
 #define PFS_VISITOR_H
diff --git a/storage/perfschema/table_accounts.cc b/storage/perfschema/table_accounts.cc
index be18e0b7ce82640aef5e5d144972507c029a6450..007fcb2555076e1b288050a361d5e19545f96eb4 100644
--- a/storage/perfschema/table_accounts.cc
+++ b/storage/perfschema/table_accounts.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "my_pthread.h"
diff --git a/storage/perfschema/table_accounts.h b/storage/perfschema/table_accounts.h
index 4c1932641d290a7f268d3ae1a835bf54d53cef3e..f72eb39ed39cecff390e0552b6bcf5cd3f6350df 100644
--- a/storage/perfschema/table_accounts.h
+++ b/storage/perfschema/table_accounts.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_ACCOUNTS_H
 #define TABLE_ACCOUNTS_H
diff --git a/storage/perfschema/table_all_instr.cc b/storage/perfschema/table_all_instr.cc
index ae8988d3a93245a142166357307d216dd93c2279..05ec9f09c11a6f73719e6268969c9d04a891a6b1 100644
--- a/storage/perfschema/table_all_instr.cc
+++ b/storage/perfschema/table_all_instr.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_all_instr.cc
diff --git a/storage/perfschema/table_all_instr.h b/storage/perfschema/table_all_instr.h
index f78f8cee3bace324a45348532e0459b114196520..7c9d5d9b0d667310838842984de5aa33879b647a 100644
--- a/storage/perfschema/table_all_instr.h
+++ b/storage/perfschema/table_all_instr.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_ALL_INSTR_H
 #define TABLE_ALL_INSTR_H
diff --git a/storage/perfschema/table_esgs_by_account_by_event_name.cc b/storage/perfschema/table_esgs_by_account_by_event_name.cc
index a565cbb49bdc821469de3c574d3553f1f9c00222..3bc76f899ad904e38a15b7d3e7502238885b745e 100644
--- a/storage/perfschema/table_esgs_by_account_by_event_name.cc
+++ b/storage/perfschema/table_esgs_by_account_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esgs_by_account_by_event_name.cc
diff --git a/storage/perfschema/table_esgs_by_account_by_event_name.h b/storage/perfschema/table_esgs_by_account_by_event_name.h
index 531c48745576bc4face971c475f6a4650f3c1f88..5afd68cd7d980735f6ddceb3918096be314050a1 100644
--- a/storage/perfschema/table_esgs_by_account_by_event_name.h
+++ b/storage/perfschema/table_esgs_by_account_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESGS_BY_ACCOUNT_BY_EVENT_NAME_H
 #define TABLE_ESGS_BY_ACCOUNT_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esgs_by_host_by_event_name.cc b/storage/perfschema/table_esgs_by_host_by_event_name.cc
index 76e60b32a80a7a99c1a09f09096f76e1f1e11611..bbef6a8d16d849785d7a4e112537988375ec968f 100644
--- a/storage/perfschema/table_esgs_by_host_by_event_name.cc
+++ b/storage/perfschema/table_esgs_by_host_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esgs_by_host_by_event_name.cc
diff --git a/storage/perfschema/table_esgs_by_host_by_event_name.h b/storage/perfschema/table_esgs_by_host_by_event_name.h
index 59a16c2482831dc2623c153bae54cbb7a24c3c5b..afc6d5294281f493d68da8555668b35ac90ceb31 100644
--- a/storage/perfschema/table_esgs_by_host_by_event_name.h
+++ b/storage/perfschema/table_esgs_by_host_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESGS_BY_HOST_BY_EVENT_NAME_H
 #define TABLE_ESGS_BY_HOST_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esgs_by_thread_by_event_name.cc b/storage/perfschema/table_esgs_by_thread_by_event_name.cc
index 4fde6013ade34669dff5ba96e65a7cb91d536b44..57ef634acadce43a314ef539924ba1291303fb91 100644
--- a/storage/perfschema/table_esgs_by_thread_by_event_name.cc
+++ b/storage/perfschema/table_esgs_by_thread_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esgs_by_thread_by_event_name.cc
diff --git a/storage/perfschema/table_esgs_by_thread_by_event_name.h b/storage/perfschema/table_esgs_by_thread_by_event_name.h
index 38c6d667d28bee145c09be9c8b6bdda476116b3a..7db8d1be4085661e5d3be731b5875805c1591e19 100644
--- a/storage/perfschema/table_esgs_by_thread_by_event_name.h
+++ b/storage/perfschema/table_esgs_by_thread_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESGS_BY_THREAD_BY_EVENT_NAME_H
 #define TABLE_ESGS_BY_THREAD_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esgs_by_user_by_event_name.cc b/storage/perfschema/table_esgs_by_user_by_event_name.cc
index cdb7ed651a8ae5f24a6c766a9cdfe372754c8db4..f8e8518bde3cea4bc3272c2bd994c550c265cebe 100644
--- a/storage/perfschema/table_esgs_by_user_by_event_name.cc
+++ b/storage/perfschema/table_esgs_by_user_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esgs_by_user_by_event_name.cc
diff --git a/storage/perfschema/table_esgs_by_user_by_event_name.h b/storage/perfschema/table_esgs_by_user_by_event_name.h
index 3e1a03bd7f147e394b8ddf48ac929a555aa6c8ad..8f48747c8c8ff313404c33b18cc38b88e6ff401f 100644
--- a/storage/perfschema/table_esgs_by_user_by_event_name.h
+++ b/storage/perfschema/table_esgs_by_user_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESGS_BY_USER_BY_EVENT_NAME_H
 #define TABLE_ESGS_BY_USER_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esgs_global_by_event_name.cc b/storage/perfschema/table_esgs_global_by_event_name.cc
index 0d59940f4ea2d5128fb0a62e048512f0750734d5..83a4dbf43fd5652043e2db7b7069bb917daea6e5 100644
--- a/storage/perfschema/table_esgs_global_by_event_name.cc
+++ b/storage/perfschema/table_esgs_global_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esgs_global_by_event_name.cc
diff --git a/storage/perfschema/table_esgs_global_by_event_name.h b/storage/perfschema/table_esgs_global_by_event_name.h
index e6e23bf4515d7a790bf116990a34b1b0e85f9583..2b0ac8b621857cf53e5d8ddc39ac5b0113d70da6 100644
--- a/storage/perfschema/table_esgs_global_by_event_name.h
+++ b/storage/perfschema/table_esgs_global_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESGS_GLOBAL_BY_EVENT_NAME_H
 #define TABLE_ESGS_GLOBAL_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esms_by_account_by_event_name.cc b/storage/perfschema/table_esms_by_account_by_event_name.cc
index b08c68a70005a9a6e9ddddbb9eddaa7e1567ba57..d8f04d7af23b7dfc003aecaa793c3ca9805e6a5b 100644
--- a/storage/perfschema/table_esms_by_account_by_event_name.cc
+++ b/storage/perfschema/table_esms_by_account_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_by_account_by_event_name.cc
diff --git a/storage/perfschema/table_esms_by_account_by_event_name.h b/storage/perfschema/table_esms_by_account_by_event_name.h
index 4e3097ef363c012c8eb5489c9c25c7753ad47b5c..ff2122917604aa633431704296ebdc8faa9a6159 100644
--- a/storage/perfschema/table_esms_by_account_by_event_name.h
+++ b/storage/perfschema/table_esms_by_account_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_BY_ACCOUNT_BY_EVENT_NAME_H
 #define TABLE_ESMS_BY_ACCOUNT_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esms_by_digest.cc b/storage/perfschema/table_esms_by_digest.cc
index 6c2b173d000946984499ebc1193ec19b454804c4..ae648378b2aeca0980472344e9c6119c27e80a6b 100644
--- a/storage/perfschema/table_esms_by_digest.cc
+++ b/storage/perfschema/table_esms_by_digest.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_by_digest.cc
diff --git a/storage/perfschema/table_esms_by_digest.h b/storage/perfschema/table_esms_by_digest.h
index 196a89fcd09eaa6d1968ad62a11c5a308118c27a..682dc70ab109583722d2b04c21f11d48b9e705ed 100644
--- a/storage/perfschema/table_esms_by_digest.h
+++ b/storage/perfschema/table_esms_by_digest.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_BY_DIGEST_H
 #define TABLE_ESMS_BY_DIGEST_H
diff --git a/storage/perfschema/table_esms_by_host_by_event_name.cc b/storage/perfschema/table_esms_by_host_by_event_name.cc
index 78381cc8a4feb7e32df57e67f75a11874c8fcdb3..7233b340bd2c35f393969c3a82c2b85ea568de84 100644
--- a/storage/perfschema/table_esms_by_host_by_event_name.cc
+++ b/storage/perfschema/table_esms_by_host_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_by_host_by_event_name.cc
diff --git a/storage/perfschema/table_esms_by_host_by_event_name.h b/storage/perfschema/table_esms_by_host_by_event_name.h
index e1a6535d77f3dd95377674bc61de6c20e1ca598e..def5e19ecdc2e58f4c7eadbf64cce19cc2069203 100644
--- a/storage/perfschema/table_esms_by_host_by_event_name.h
+++ b/storage/perfschema/table_esms_by_host_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_BY_HOST_BY_EVENT_NAME_H
 #define TABLE_ESMS_BY_HOST_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esms_by_thread_by_event_name.cc b/storage/perfschema/table_esms_by_thread_by_event_name.cc
index 56a081218c0acc2f4cc5a79773c55ebd6d053656..f62d974aa76b47b208dc6ee39f7de85c1c40061e 100644
--- a/storage/perfschema/table_esms_by_thread_by_event_name.cc
+++ b/storage/perfschema/table_esms_by_thread_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_by_thread_by_event_name.cc
diff --git a/storage/perfschema/table_esms_by_thread_by_event_name.h b/storage/perfschema/table_esms_by_thread_by_event_name.h
index 32554c3a2f832d6a49ddae6709bf79b23ca63d61..7c50307c4836501129f8881c8fa7ba4f62aad3c3 100644
--- a/storage/perfschema/table_esms_by_thread_by_event_name.h
+++ b/storage/perfschema/table_esms_by_thread_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_BY_THREAD_BY_EVENT_NAME_H
 #define TABLE_ESMS_BY_THREAD_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esms_by_user_by_event_name.cc b/storage/perfschema/table_esms_by_user_by_event_name.cc
index 7e0fce7cafce15a9a019ae29d0ecb14c698b2880..66afe288f125ccbbef5f389066f2aa1db7142b8c 100644
--- a/storage/perfschema/table_esms_by_user_by_event_name.cc
+++ b/storage/perfschema/table_esms_by_user_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_by_user_by_event_name.cc
diff --git a/storage/perfschema/table_esms_by_user_by_event_name.h b/storage/perfschema/table_esms_by_user_by_event_name.h
index beba70459d7ab48184bfbe8848a7c318ba422314..65284122043769b0980920b3f68ae9a8873f37b4 100644
--- a/storage/perfschema/table_esms_by_user_by_event_name.h
+++ b/storage/perfschema/table_esms_by_user_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_BY_USER_BY_EVENT_NAME_H
 #define TABLE_ESMS_BY_USER_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_esms_global_by_event_name.cc b/storage/perfschema/table_esms_global_by_event_name.cc
index 1e9f8f991597f3eb345c0fb42b6b7d6ea7bf364a..96957bf028ebc5928068d8dc1b5c1a3d29455c07 100644
--- a/storage/perfschema/table_esms_global_by_event_name.cc
+++ b/storage/perfschema/table_esms_global_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_esms_global_by_event_name.cc
diff --git a/storage/perfschema/table_esms_global_by_event_name.h b/storage/perfschema/table_esms_global_by_event_name.h
index 14435fb6087a19e344b96a16cecefd569fb56037..7453d635848182f3b156a1e72f033dfa9a09e730 100644
--- a/storage/perfschema/table_esms_global_by_event_name.h
+++ b/storage/perfschema/table_esms_global_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_ESMS_GLOBAL_BY_EVENT_NAME_H
 #define TABLE_ESMS_GLOBAL_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_events_stages.cc b/storage/perfschema/table_events_stages.cc
index 42761d92abf7b988afa81421676c2d647da69aaa..757c42b59c47b0355134448dfecbc9748008305f 100644
--- a/storage/perfschema/table_events_stages.cc
+++ b/storage/perfschema/table_events_stages.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_events_stages.cc
diff --git a/storage/perfschema/table_events_stages.h b/storage/perfschema/table_events_stages.h
index 2568a090aa3509d44ab5205993a67e9be8f1396d..cbc0f9a42bb549674fe30fa320474dacdb49c2b9 100644
--- a/storage/perfschema/table_events_stages.h
+++ b/storage/perfschema/table_events_stages.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_EVENTS_STAGES_H
 #define TABLE_EVENTS_STAGES_H
diff --git a/storage/perfschema/table_events_statements.cc b/storage/perfschema/table_events_statements.cc
index 0d0ea02974d43c0572be24eb7f1c44c501ede3b1..9dc8c329b9645f191c00e29304ebefea9dc889bf 100644
--- a/storage/perfschema/table_events_statements.cc
+++ b/storage/perfschema/table_events_statements.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_events_statements.cc
diff --git a/storage/perfschema/table_events_statements.h b/storage/perfschema/table_events_statements.h
index 506061791162c4dff8811979f63beeddeb599a2f..6f8bc1621d090b86345502c2ade4658e633bc0a1 100644
--- a/storage/perfschema/table_events_statements.h
+++ b/storage/perfschema/table_events_statements.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_EVENTS_STATEMENTS_H
 #define TABLE_EVENTS_STATEMENTS_H
diff --git a/storage/perfschema/table_events_waits.cc b/storage/perfschema/table_events_waits.cc
index cd32d81519ee801463f3ed6dd84ad2bb5e2209d4..c77d35811c85d38a7acd7484360f5d2d433fb983 100644
--- a/storage/perfschema/table_events_waits.cc
+++ b/storage/perfschema/table_events_waits.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_events_waits.cc
diff --git a/storage/perfschema/table_events_waits.h b/storage/perfschema/table_events_waits.h
index 60657278191cad3849ab7dd7c8cb7a716b44820d..3e09fa487ad818677d257f6ed73ca88e53c02588 100644
--- a/storage/perfschema/table_events_waits.h
+++ b/storage/perfschema/table_events_waits.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_EVENTS_WAITS_H
 #define TABLE_EVENTS_WAITS_H
diff --git a/storage/perfschema/table_events_waits_summary.cc b/storage/perfschema/table_events_waits_summary.cc
index 516b271669df6ed43f7f2243233a5b42e6d4cbeb..2f5c83d57d344459984418726f18a2e9d68f70f6 100644
--- a/storage/perfschema/table_events_waits_summary.cc
+++ b/storage/perfschema/table_events_waits_summary.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_events_waits_summary.cc
diff --git a/storage/perfschema/table_events_waits_summary.h b/storage/perfschema/table_events_waits_summary.h
index 9d3a28816e3db5336dc9d722dbfeb4f4d71e5da7..a4f063bb66a4bbfde758ea8c6b0647ffd1a30697 100644
--- a/storage/perfschema/table_events_waits_summary.h
+++ b/storage/perfschema/table_events_waits_summary.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_EVENTS_WAITS_SUMMARY_H
 #define TABLE_EVENTS_WAITS_SUMMARY_H
diff --git a/storage/perfschema/table_ews_by_account_by_event_name.cc b/storage/perfschema/table_ews_by_account_by_event_name.cc
index 7f79feca9d396164c5d88145b0d48892176d6b49..0b86a4ac1dc56567f17f9a0d3ecf40fccd339cee 100644
--- a/storage/perfschema/table_ews_by_account_by_event_name.cc
+++ b/storage/perfschema/table_ews_by_account_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_ews_by_account_by_event_name.cc
diff --git a/storage/perfschema/table_ews_by_account_by_event_name.h b/storage/perfschema/table_ews_by_account_by_event_name.h
index 40283c30ccb1f30beae32ead05b0f5488aa220bd..b46008e2675511611e48312ef040ca81cd935969 100644
--- a/storage/perfschema/table_ews_by_account_by_event_name.h
+++ b/storage/perfschema/table_ews_by_account_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_EWS_BY_ACCOUNT_BY_EVENT_NAME_H
 #define TABLE_EWS_BY_ACCOUNT_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_ews_by_host_by_event_name.cc b/storage/perfschema/table_ews_by_host_by_event_name.cc
index 61ac7848cf4238055737185becce0fa038fd681b..e82c734431c124269f36508b12d9ada802f68a5d 100644
--- a/storage/perfschema/table_ews_by_host_by_event_name.cc
+++ b/storage/perfschema/table_ews_by_host_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_ews_by_host_by_event_name.cc
diff --git a/storage/perfschema/table_ews_by_host_by_event_name.h b/storage/perfschema/table_ews_by_host_by_event_name.h
index c93afafd0ef5fdd906a98c398249ac5a6cdbdb08..c631da36ec59710f72d3ca457903e987508a6603 100644
--- a/storage/perfschema/table_ews_by_host_by_event_name.h
+++ b/storage/perfschema/table_ews_by_host_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_EWS_BY_HOST_BY_EVENT_NAME_H
 #define TABLE_EWS_BY_HOST_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_ews_by_thread_by_event_name.cc b/storage/perfschema/table_ews_by_thread_by_event_name.cc
index 833cdb3df7e1d173452fffca496154e7a1e36f82..7b3e220e9735ec70108ab03f1e03d4f8ac3e1632 100644
--- a/storage/perfschema/table_ews_by_thread_by_event_name.cc
+++ b/storage/perfschema/table_ews_by_thread_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_ews_by_thread_by_event_name.cc
diff --git a/storage/perfschema/table_ews_by_thread_by_event_name.h b/storage/perfschema/table_ews_by_thread_by_event_name.h
index c584b507d4641284e957935ba9d5a62281f3f44a..cf94e7a81a2e5e58df5ecd5187c22b376e6ce076 100644
--- a/storage/perfschema/table_ews_by_thread_by_event_name.h
+++ b/storage/perfschema/table_ews_by_thread_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_EWS_BY_THREAD_BY_EVENT_NAME_H
 #define TABLE_EWS_BY_THREAD_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_ews_by_user_by_event_name.cc b/storage/perfschema/table_ews_by_user_by_event_name.cc
index 82d4768293e5858a990b6f620d0414f1d30877be..577a9ef6676870a89938e78d67eb8e0c882fc610 100644
--- a/storage/perfschema/table_ews_by_user_by_event_name.cc
+++ b/storage/perfschema/table_ews_by_user_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_ews_by_user_by_event_name.cc
diff --git a/storage/perfschema/table_ews_by_user_by_event_name.h b/storage/perfschema/table_ews_by_user_by_event_name.h
index 4fe4613206f742d6e3a9c6ab2a585492c01994b7..e987cf1bcecde58f7a03572659d5a085193c2145 100644
--- a/storage/perfschema/table_ews_by_user_by_event_name.h
+++ b/storage/perfschema/table_ews_by_user_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_EWS_BY_USER_BY_EVENT_NAME_H
 #define TABLE_EWS_BY_USER_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_ews_global_by_event_name.cc b/storage/perfschema/table_ews_global_by_event_name.cc
index ebd855f91095c5d15f7823f4dc00f72e77405396..9a5ba4f237538e31d5e86217ee6f0bdeef088bd9 100644
--- a/storage/perfschema/table_ews_global_by_event_name.cc
+++ b/storage/perfschema/table_ews_global_by_event_name.cc
@@ -10,8 +10,8 @@
   GNU General Public License for more details.
 
   You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  along with this program; if not, write to the Free Software Foundation,
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_ews_global_by_event_name.cc
diff --git a/storage/perfschema/table_ews_global_by_event_name.h b/storage/perfschema/table_ews_global_by_event_name.h
index 538f1f1fb8a61257d889250b8015e7ec43345ed0..57e3459e3735be985c6f29baef72f9f660829ce9 100644
--- a/storage/perfschema/table_ews_global_by_event_name.h
+++ b/storage/perfschema/table_ews_global_by_event_name.h
@@ -10,8 +10,8 @@
   GNU General Public License for more details.
 
   You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  along with this program; if not, write to the Free Software Foundation,
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_EWS_GLOBAL_BY_EVENT_NAME_H
 #define TABLE_EWS_GLOBAL_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_file_instances.cc b/storage/perfschema/table_file_instances.cc
index 4b5ecf3cb390d4196a984e152bc5ec51ef9ef7cd..7914664e2e09073abad27301c552d6877fb1aec8 100644
--- a/storage/perfschema/table_file_instances.cc
+++ b/storage/perfschema/table_file_instances.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_file_instances.cc
diff --git a/storage/perfschema/table_file_instances.h b/storage/perfschema/table_file_instances.h
index 988c03bcb5f250e6e3aa034c5685733a4c654752..e07017911de8463e638cda41d462b677292d4559 100644
--- a/storage/perfschema/table_file_instances.h
+++ b/storage/perfschema/table_file_instances.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_FILE_INSTANCES_H
 #define TABLE_FILE_INSTANCES_H
diff --git a/storage/perfschema/table_file_summary_by_event_name.cc b/storage/perfschema/table_file_summary_by_event_name.cc
index 2e46c7c13ece5b7c197cec2026f07c39bfc1dcbf..e98bc52899525296e2e8272cf7fb13adba4f2eb5 100644
--- a/storage/perfschema/table_file_summary_by_event_name.cc
+++ b/storage/perfschema/table_file_summary_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_file_summary.cc
diff --git a/storage/perfschema/table_file_summary_by_event_name.h b/storage/perfschema/table_file_summary_by_event_name.h
index 2c6f3b26950d11c87dc3e11b27b7b86a75e38282..7a13fcdc4d99443405554478d18a0c789d570a86 100644
--- a/storage/perfschema/table_file_summary_by_event_name.h
+++ b/storage/perfschema/table_file_summary_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_FILE_SUMMARY_H
 #define TABLE_FILE_SUMMARY_H
diff --git a/storage/perfschema/table_file_summary_by_instance.cc b/storage/perfschema/table_file_summary_by_instance.cc
index c69aa641a3c69bd3e094e598034ec157870bb312..b80811d0a5b30b9ea99a77cc5192325aea74ab95 100644
--- a/storage/perfschema/table_file_summary_by_instance.cc
+++ b/storage/perfschema/table_file_summary_by_instance.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_file_summary.cc
diff --git a/storage/perfschema/table_file_summary_by_instance.h b/storage/perfschema/table_file_summary_by_instance.h
index 4bc1f9a76da8f7c66d827aea31e800e5208df068..872698f8e580ca4373e0c01414dd6adb90fcf721 100644
--- a/storage/perfschema/table_file_summary_by_instance.h
+++ b/storage/perfschema/table_file_summary_by_instance.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_FILE_SUMMARY_BY_INSTANCE_H
 #define TABLE_FILE_SUMMARY_BY_INSTANCE_H
diff --git a/storage/perfschema/table_helper.cc b/storage/perfschema/table_helper.cc
index d064333dc7e62e7e9bb835085774e3e46a78d4dd..0dbeeb259c10b95d7a5fe92a1d450e8969dbd960 100644
--- a/storage/perfschema/table_helper.cc
+++ b/storage/perfschema/table_helper.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_helper.cc
diff --git a/storage/perfschema/table_helper.h b/storage/perfschema/table_helper.h
index b1377eb9748f535fed551f025ca86dcd5ac473d3..b57abe9c4e6b7c9fae28bfe31502f6413555d709 100644
--- a/storage/perfschema/table_helper.h
+++ b/storage/perfschema/table_helper.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef PFS_TABLE_HELPER_H
 #define PFS_TABLE_HELPER_H
diff --git a/storage/perfschema/table_host_cache.cc b/storage/perfschema/table_host_cache.cc
index df13207e5785687eb88dcf9ed66e96a0f215dd40..758a2c6dea675d468e1b9a25a998d440f37908cd 100644
--- a/storage/perfschema/table_host_cache.cc
+++ b/storage/perfschema/table_host_cache.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_host_cache.cc
diff --git a/storage/perfschema/table_host_cache.h b/storage/perfschema/table_host_cache.h
index 6a100cc4f55df29b9fc45cd2d0d9c4a4ebaf01a0..47abb42444ec05db0f06dc6b520046e00e90e5d0 100644
--- a/storage/perfschema/table_host_cache.h
+++ b/storage/perfschema/table_host_cache.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_HOST_CACHE_H
 #define TABLE_HOST_CACHE_H
diff --git a/storage/perfschema/table_hosts.cc b/storage/perfschema/table_hosts.cc
index 8ddc34f5728a50b748f2f42c3cb551f947ee17f1..2c5377db4ac5677d3134364951dedb32a7e83cc7 100644
--- a/storage/perfschema/table_hosts.cc
+++ b/storage/perfschema/table_hosts.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "my_pthread.h"
diff --git a/storage/perfschema/table_hosts.h b/storage/perfschema/table_hosts.h
index 9f44dd3381b54dc80555afd1a28abaf49031c4fa..60b70ae803e87693d614438b9ff971bdd6460548 100644
--- a/storage/perfschema/table_hosts.h
+++ b/storage/perfschema/table_hosts.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_HOSTS_H
 #define TABLE_HOSTS_H
diff --git a/storage/perfschema/table_os_global_by_type.cc b/storage/perfschema/table_os_global_by_type.cc
index 2f7bf5ec5e1c3b36e9ce96a999d6f5b26e8f378d..cd2ace50c85ae587ac64d1e5a2e16f403161fd2e 100644
--- a/storage/perfschema/table_os_global_by_type.cc
+++ b/storage/perfschema/table_os_global_by_type.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_os_global_by_type.cc
diff --git a/storage/perfschema/table_os_global_by_type.h b/storage/perfschema/table_os_global_by_type.h
index 7968b85aec4df82e263116344a58214a01448b08..a434961b65b2c202c815bef4d9dc859253513a08 100644
--- a/storage/perfschema/table_os_global_by_type.h
+++ b/storage/perfschema/table_os_global_by_type.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_OBJECTS_SUMMARY_GLOBAL_BY_TYPE_H
 #define TABLE_OBJECTS_SUMMARY_GLOBAL_BY_TYPE_H
diff --git a/storage/perfschema/table_performance_timers.cc b/storage/perfschema/table_performance_timers.cc
index 780d507a64b1a2ef165e93aade7f2bd13d0b7e12..8d31c0178321e538f56e9616b273e5fa1dca9a39 100644
--- a/storage/perfschema/table_performance_timers.cc
+++ b/storage/perfschema/table_performance_timers.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_performance_timers.cc
@@ -58,23 +58,23 @@ table_performance_timers::table_performance_timers()
 
   index= (int)TIMER_NAME_CYCLE - FIRST_TIMER_NAME;
   m_data[index].m_timer_name= TIMER_NAME_CYCLE;
-  m_data[index].m_info= pfs_timer_info.cycles;
+  m_data[index].m_info= sys_timer_info.cycles;
 
   index= (int)TIMER_NAME_NANOSEC - FIRST_TIMER_NAME;
   m_data[index].m_timer_name= TIMER_NAME_NANOSEC;
-  m_data[index].m_info= pfs_timer_info.nanoseconds;
+  m_data[index].m_info= sys_timer_info.nanoseconds;
 
   index= (int)TIMER_NAME_MICROSEC - FIRST_TIMER_NAME;
   m_data[index].m_timer_name= TIMER_NAME_MICROSEC;
-  m_data[index].m_info= pfs_timer_info.microseconds;
+  m_data[index].m_info= sys_timer_info.microseconds;
 
   index= (int)TIMER_NAME_MILLISEC - FIRST_TIMER_NAME;
   m_data[index].m_timer_name= TIMER_NAME_MILLISEC;
-  m_data[index].m_info= pfs_timer_info.milliseconds;
+  m_data[index].m_info= sys_timer_info.milliseconds;
 
   index= (int)TIMER_NAME_TICK - FIRST_TIMER_NAME;
   m_data[index].m_timer_name= TIMER_NAME_TICK;
-  m_data[index].m_info= pfs_timer_info.ticks;
+  m_data[index].m_info= sys_timer_info.ticks;
 }
 
 void table_performance_timers::reset_position(void)
diff --git a/storage/perfschema/table_performance_timers.h b/storage/perfschema/table_performance_timers.h
index 79e9f54636d9fb7cc89675baebfd981fb64ad53e..e1dc93fcbe4af4e6c3e46b7b344eae4efd240f4a 100644
--- a/storage/perfschema/table_performance_timers.h
+++ b/storage/perfschema/table_performance_timers.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_PERFORMANCE_TIMERS_H
 #define TABLE_PERFORMANCE_TIMERS_H
diff --git a/storage/perfschema/table_session_account_connect_attrs.cc b/storage/perfschema/table_session_account_connect_attrs.cc
index 2aed519a903ba9324a15d83e6a2d8d4b4ff92586..c00f72e36b4e0921b3733b5a7b6390224cab2878 100644
--- a/storage/perfschema/table_session_account_connect_attrs.cc
+++ b/storage/perfschema/table_session_account_connect_attrs.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "table_session_account_connect_attrs.h"
 
diff --git a/storage/perfschema/table_session_account_connect_attrs.h b/storage/perfschema/table_session_account_connect_attrs.h
index ba8893e7cadfa254fd540bae50bf40b152488773..d56d571fb794ec0cde95e4a38f0ea24137e4f809 100644
--- a/storage/perfschema/table_session_account_connect_attrs.h
+++ b/storage/perfschema/table_session_account_connect_attrs.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SESSION_ACCOUNT_CONNECT_ATTRS_H
 #define TABLE_SESSION_ACCOUNT_CONNECT_ATTRS_H
diff --git a/storage/perfschema/table_session_connect.cc b/storage/perfschema/table_session_connect.cc
index 17c608a7f4c77c04e68dd18d077143a67456368b..737ff51455531632613b34dafbd1a6365ce97ae0 100644
--- a/storage/perfschema/table_session_connect.cc
+++ b/storage/perfschema/table_session_connect.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "table_session_connect.h"
 
diff --git a/storage/perfschema/table_session_connect.h b/storage/perfschema/table_session_connect.h
index 7e06f8a3d24a443743b9e527e93ea7d358b962a3..91d24ab7075d85b45e28f00a341a0e04ed87bf49 100644
--- a/storage/perfschema/table_session_connect.h
+++ b/storage/perfschema/table_session_connect.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SESSION_CONNECT_H
 #define TABLE_SESSION_CONNECT_H
diff --git a/storage/perfschema/table_session_connect_attrs.cc b/storage/perfschema/table_session_connect_attrs.cc
index 840167a40e9e1f490b4227ff8754099a41d51c41..859c6f2f8b851ab296423a68b4df2b83d3db2b59 100644
--- a/storage/perfschema/table_session_connect_attrs.cc
+++ b/storage/perfschema/table_session_connect_attrs.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "table_session_connect_attrs.h"
 
diff --git a/storage/perfschema/table_session_connect_attrs.h b/storage/perfschema/table_session_connect_attrs.h
index b10b106ba0df5a5ef87bb882af7c9b61415c7a15..de18085d8ac9c62ed205aeaec47008a71ada1aad 100644
--- a/storage/perfschema/table_session_connect_attrs.h
+++ b/storage/perfschema/table_session_connect_attrs.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SESSION_CONNECT_ATTRS_H
 #define TABLE_SESSION_CONNECT_ATTRS_H
diff --git a/storage/perfschema/table_setup_actors.cc b/storage/perfschema/table_setup_actors.cc
index c82d67fba2d45f461ced0a6455a23812d6d2eaa6..fcb32b9cb35f072cbec3d0cd621afec9c3e5c4df 100644
--- a/storage/perfschema/table_setup_actors.cc
+++ b/storage/perfschema/table_setup_actors.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_setup_actors.cc
diff --git a/storage/perfschema/table_setup_actors.h b/storage/perfschema/table_setup_actors.h
index 2a9395dfac721d965c3d92cc5dfbec4200c69e02..550e196c8d18d5f448a8c92f9690e09ee549c242 100644
--- a/storage/perfschema/table_setup_actors.h
+++ b/storage/perfschema/table_setup_actors.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SETUP_ACTORS_H
 #define TABLE_SETUP_ACTORS_H
diff --git a/storage/perfschema/table_setup_consumers.cc b/storage/perfschema/table_setup_consumers.cc
index c09853ffeca39cff0bf602365696ee8c59163bf5..f00e1fff48d9458f4bd3d5d64dfcbb0961f76e0b 100644
--- a/storage/perfschema/table_setup_consumers.cc
+++ b/storage/perfschema/table_setup_consumers.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_setup_consumers.cc
diff --git a/storage/perfschema/table_setup_consumers.h b/storage/perfschema/table_setup_consumers.h
index e59033c0ad1f58af0c4e257c3f34ee29642c1f71..b27c8873550d1a77dc68947064082458cdcab672 100644
--- a/storage/perfschema/table_setup_consumers.h
+++ b/storage/perfschema/table_setup_consumers.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SETUP_CONSUMERS_H
 #define TABLE_SETUP_CONSUMERS_H
diff --git a/storage/perfschema/table_setup_instruments.cc b/storage/perfschema/table_setup_instruments.cc
index d911128ce9451175871e466c2f748de44c624ae6..8adea1d360418231e38d6a262f9b8e8c397016af 100644
--- a/storage/perfschema/table_setup_instruments.cc
+++ b/storage/perfschema/table_setup_instruments.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_setup_instruments.cc
diff --git a/storage/perfschema/table_setup_instruments.h b/storage/perfschema/table_setup_instruments.h
index 2e70a528bbd8da714da304b5c90c7efec7d36e6d..b2711578d7f7868f5141080f34e5fcf45ef922ca 100644
--- a/storage/perfschema/table_setup_instruments.h
+++ b/storage/perfschema/table_setup_instruments.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SETUP_INSTRUMENTS_H
 #define TABLE_SETUP_INSTRUMENTS_H
diff --git a/storage/perfschema/table_setup_objects.cc b/storage/perfschema/table_setup_objects.cc
index 5321271a62d6376c0a12e9290ec35cac4231ab35..8049fcdf48c0a15055a62138980e3f18529a5eb6 100644
--- a/storage/perfschema/table_setup_objects.cc
+++ b/storage/perfschema/table_setup_objects.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_setup_objects.cc
diff --git a/storage/perfschema/table_setup_objects.h b/storage/perfschema/table_setup_objects.h
index 55423ffd90f71b1445c64b3249b70885fe3bab5c..943cc4a1ad57381160c407903e10472a9ee382e3 100644
--- a/storage/perfschema/table_setup_objects.h
+++ b/storage/perfschema/table_setup_objects.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SETUP_OBJECTS_H
 #define TABLE_SETUP_OBJECTS_H
diff --git a/storage/perfschema/table_setup_timers.cc b/storage/perfschema/table_setup_timers.cc
index 911fa121e060486b7f1be3d95e4a05b395c68ba6..26539da2e27142ade9b0179a527c41e2b35028e4 100644
--- a/storage/perfschema/table_setup_timers.cc
+++ b/storage/perfschema/table_setup_timers.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_setup_timers.cc
diff --git a/storage/perfschema/table_setup_timers.h b/storage/perfschema/table_setup_timers.h
index 46af68bb9e3ad2a47dfecead68937f563046f8aa..9eb2f95836ce0005abeda06dbbde872311ec35c3 100644
--- a/storage/perfschema/table_setup_timers.h
+++ b/storage/perfschema/table_setup_timers.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SETUP_TIMERS_H
 #define TABLE_SETUP_TIMERS_H
diff --git a/storage/perfschema/table_socket_instances.cc b/storage/perfschema/table_socket_instances.cc
index e47a97c90b0c8722259a335c1ae2a88fa1673ba6..419e19349f41e2628409a712821123b70b48e93a 100644
--- a/storage/perfschema/table_socket_instances.cc
+++ b/storage/perfschema/table_socket_instances.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_socket_instances.cc
diff --git a/storage/perfschema/table_socket_instances.h b/storage/perfschema/table_socket_instances.h
index 76ed8c47559756db35d775459f3ff8fff2a1e126..b5e5edb36ed97cfbc7ad54c8eb88105c12aa8980 100644
--- a/storage/perfschema/table_socket_instances.h
+++ b/storage/perfschema/table_socket_instances.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SOCKET_INSTANCES_H
 #define TABLE_SOCKET_INSTANCES_H
diff --git a/storage/perfschema/table_socket_summary_by_event_name.cc b/storage/perfschema/table_socket_summary_by_event_name.cc
index 512fe8e41d3294c5b830051f8d900d7dfdb1dd8e..2da45c0d2cdf2086a806d2e71dedf96314e37044 100644
--- a/storage/perfschema/table_socket_summary_by_event_name.cc
+++ b/storage/perfschema/table_socket_summary_by_event_name.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_socket_summary_by_event_name.cc
diff --git a/storage/perfschema/table_socket_summary_by_event_name.h b/storage/perfschema/table_socket_summary_by_event_name.h
index 72a1e54fa99b3fbff6c363dfaaee44fc9abffb3e..9bdeb3104b4ac16d9abb7a88262ddaec7e4636cf 100644
--- a/storage/perfschema/table_socket_summary_by_event_name.h
+++ b/storage/perfschema/table_socket_summary_by_event_name.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SOCKET_SUMMARY_BY_EVENT_NAME_H
 #define TABLE_SOCKET_SUMMARY_BY_EVENT_NAME_H
diff --git a/storage/perfschema/table_socket_summary_by_instance.cc b/storage/perfschema/table_socket_summary_by_instance.cc
index 4ab600d8c4e7165f3750f87bbdd405c2a0262835..693f65e48437999f8abac86c6a6ceaf06d6ab80e 100644
--- a/storage/perfschema/table_socket_summary_by_instance.cc
+++ b/storage/perfschema/table_socket_summary_by_instance.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_socket_summary_by_instance.cc
diff --git a/storage/perfschema/table_socket_summary_by_instance.h b/storage/perfschema/table_socket_summary_by_instance.h
index 949e99bfef93ef210bf22b4404d15df427565079..deb8ffab554cca13917821edd7defee2c63848c8 100644
--- a/storage/perfschema/table_socket_summary_by_instance.h
+++ b/storage/perfschema/table_socket_summary_by_instance.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SOCKET_SUMMARY_BY_INSTANCE_H
 #define TABLE_SOCKET_SUMMARY_BY_INSTANCE_H
diff --git a/storage/perfschema/table_sync_instances.cc b/storage/perfschema/table_sync_instances.cc
index 4bf5ae6693841880051c0f164d65222c83baedd5..6e48468e6c39d60c127fdf7de74d6f4518d85f0f 100644
--- a/storage/perfschema/table_sync_instances.cc
+++ b/storage/perfschema/table_sync_instances.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /**
   @file storage/perfschema/table_sync_instances.cc
diff --git a/storage/perfschema/table_sync_instances.h b/storage/perfschema/table_sync_instances.h
index da4592685990835d6dfbadf2dacd0e2a0bbf9591..c6a2ed8adaae9ea07a7895231abe58c5cd07ce76 100644
--- a/storage/perfschema/table_sync_instances.h
+++ b/storage/perfschema/table_sync_instances.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_SYNC_INSTANCE_H
 #define TABLE_SYNC_INSTANCE_H
diff --git a/storage/perfschema/table_threads.cc b/storage/perfschema/table_threads.cc
index 5c78b567b8c99a7949ad4b9debd51b5cf17e18e4..1f198ba137826f8df5dd97e5976a3143ac32ec5f 100644
--- a/storage/perfschema/table_threads.cc
+++ b/storage/perfschema/table_threads.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "my_pthread.h"
diff --git a/storage/perfschema/table_threads.h b/storage/perfschema/table_threads.h
index 10afbe14e74c600e48f355d998dd1e2dcf455b48..823f66bf713ada23c63cbec9ea9c45c77ed27ba4 100644
--- a/storage/perfschema/table_threads.h
+++ b/storage/perfschema/table_threads.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_THREADS_H
 #define TABLE_THREADS_H
diff --git a/storage/perfschema/table_tiws_by_index_usage.cc b/storage/perfschema/table_tiws_by_index_usage.cc
index 382b2f86b9768a4e32ce0a645acb1a52030dc868..5d24fcc689bd1e6ef50f1697410a61962833f8fa 100644
--- a/storage/perfschema/table_tiws_by_index_usage.cc
+++ b/storage/perfschema/table_tiws_by_index_usage.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_tiws_by_index_usage.cc
diff --git a/storage/perfschema/table_tiws_by_index_usage.h b/storage/perfschema/table_tiws_by_index_usage.h
index 1528de2fe158d32bb9cfc88eddd6e8cc94dab3d5..f6d935365b265dfd4efe678555fe5e53c9ec2743 100644
--- a/storage/perfschema/table_tiws_by_index_usage.h
+++ b/storage/perfschema/table_tiws_by_index_usage.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_IO_WAIT_SUMMARY_BY_INDEX_USAGE_H
 #define TABLE_IO_WAIT_SUMMARY_BY_INDEX_USAGE_H
diff --git a/storage/perfschema/table_tiws_by_table.cc b/storage/perfschema/table_tiws_by_table.cc
index ab1e9b115d631183a21e16e062ae876486fb00ff..78535fd65127bad1720f2289a8a5eae75a395b59 100644
--- a/storage/perfschema/table_tiws_by_table.cc
+++ b/storage/perfschema/table_tiws_by_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_tiws_by_table.cc
diff --git a/storage/perfschema/table_tiws_by_table.h b/storage/perfschema/table_tiws_by_table.h
index d11043188ebd4648e58f5d506bdaaea081192c22..9a86d39196ca72f8fe6917735b59df85660dda98 100644
--- a/storage/perfschema/table_tiws_by_table.h
+++ b/storage/perfschema/table_tiws_by_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_IO_WAITS_SUMMARY_BY_TABLE_H
 #define TABLE_IO_WAITS_SUMMARY_BY_TABLE_H
diff --git a/storage/perfschema/table_tlws_by_table.cc b/storage/perfschema/table_tlws_by_table.cc
index bae120248ad2797ff99ba81505fc6f265582b09a..5299e7f6a56bd607f03de4daf7a227cab8439755 100644
--- a/storage/perfschema/table_tlws_by_table.cc
+++ b/storage/perfschema/table_tlws_by_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file storage/perfschema/table_tlws_by_table.cc
diff --git a/storage/perfschema/table_tlws_by_table.h b/storage/perfschema/table_tlws_by_table.h
index f5bf6a99f46b48fb7a4361992fca124a8f5c0fff..757adc3f5f54f669ab495d1783d3376b05d52cc1 100644
--- a/storage/perfschema/table_tlws_by_table.h
+++ b/storage/perfschema/table_tlws_by_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef TABLE_LOCK_WAITS_SUMMARY_BY_TABLE_H
 #define TABLE_LOCK_WAITS_SUMMARY_BY_TABLE_H
diff --git a/storage/perfschema/table_users.cc b/storage/perfschema/table_users.cc
index 134ebb08d26ec3c8cb9b122c7755e7feb6e839b6..6d6bfc5bfafe08df9d587d823a9609638e67fecf 100644
--- a/storage/perfschema/table_users.cc
+++ b/storage/perfschema/table_users.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "my_global.h"
 #include "my_pthread.h"
diff --git a/storage/perfschema/table_users.h b/storage/perfschema/table_users.h
index 5d673cbda9c96c7a147750f01e658a7ef70371b6..1b24dfb9039dd60f9aef2fb601d99b04d3db8edb 100644
--- a/storage/perfschema/table_users.h
+++ b/storage/perfschema/table_users.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef TABLE_USERS_H
 #define TABLE_USERS_H
diff --git a/storage/perfschema/unittest/CMakeLists.txt b/storage/perfschema/unittest/CMakeLists.txt
index 4c6b0b91021eaa46c846102a53b091b5fcec1fbe..b449640b3746b66804c42295ae89285049322942 100644
--- a/storage/perfschema/unittest/CMakeLists.txt
+++ b/storage/perfschema/unittest/CMakeLists.txt
@@ -10,8 +10,8 @@
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# along with this program; if not, write to the Free Software Foundation,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
                     ${CMAKE_SOURCE_DIR}/include/mysql
diff --git a/storage/perfschema/unittest/conf.txt b/storage/perfschema/unittest/conf.txt
index 6eaa044c02cf5c9d8affa47645a727def817731b..8a14b9ed14bd0134b94beb25e418570719d894dc 100644
--- a/storage/perfschema/unittest/conf.txt
+++ b/storage/perfschema/unittest/conf.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software Foundation,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 Performance schema test configurations.
 (Used internally for performance testing)
diff --git a/storage/perfschema/unittest/pfs-t.cc b/storage/perfschema/unittest/pfs-t.cc
index fd018c1b0c549cdd75dd1afcfb9a0882881e8e91..e2ff73699ec906865c6563e520653f2f67efb05a 100644
--- a/storage/perfschema/unittest/pfs-t.cc
+++ b/storage/perfschema/unittest/pfs-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_account-oom-t.cc b/storage/perfschema/unittest/pfs_account-oom-t.cc
index a87588487cb29a5644d3a233fc0fa2fccd8cb229..71c089ab0f54670034d5a271febca1396b942ebc 100644
--- a/storage/perfschema/unittest/pfs_account-oom-t.cc
+++ b/storage/perfschema/unittest/pfs_account-oom-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_connect_attr-t.cc b/storage/perfschema/unittest/pfs_connect_attr-t.cc
index ecf790eeedea8192507ea3f27d7c05c9d71c6d2e..3dd62ca56627e4e263a1f184fcc76268cd0570ca 100644
--- a/storage/perfschema/unittest/pfs_connect_attr-t.cc
+++ b/storage/perfschema/unittest/pfs_connect_attr-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_host-oom-t.cc b/storage/perfschema/unittest/pfs_host-oom-t.cc
index c089083e4aeaf63777ddf629728c550f783542bf..e2eba7e6aff66fa41d3659c772473e63f429638f 100644
--- a/storage/perfschema/unittest/pfs_host-oom-t.cc
+++ b/storage/perfschema/unittest/pfs_host-oom-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_instr-oom-t.cc b/storage/perfschema/unittest/pfs_instr-oom-t.cc
index 888acfab74416bb3cc594fb8244c9db495abfa48..a18902dc3db7db0150261ed03bf0bb943fa5cbbf 100644
--- a/storage/perfschema/unittest/pfs_instr-oom-t.cc
+++ b/storage/perfschema/unittest/pfs_instr-oom-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_instr-t.cc b/storage/perfschema/unittest/pfs_instr-t.cc
index 659f410e283d60c683f2d4a0ee64bae304f23b29..47a91d9bb9ad0312f1bde154f9d450593cf7b80c 100644
--- a/storage/perfschema/unittest/pfs_instr-t.cc
+++ b/storage/perfschema/unittest/pfs_instr-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_instr_class-oom-t.cc b/storage/perfschema/unittest/pfs_instr_class-oom-t.cc
index c9b87b9cf1e36e1beed2b29c5893273dacaac5ed..bdb2648c2f3278ada6b2a77e41c0f262139c2173 100644
--- a/storage/perfschema/unittest/pfs_instr_class-oom-t.cc
+++ b/storage/perfschema/unittest/pfs_instr_class-oom-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_instr_class-t.cc b/storage/perfschema/unittest/pfs_instr_class-t.cc
index dcbc3927eae2d8319f00d5de33341bd40822b399..0d8ec38525df6e30147cb4fb0ed2e6571d01e3ec 100644
--- a/storage/perfschema/unittest/pfs_instr_class-t.cc
+++ b/storage/perfschema/unittest/pfs_instr_class-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_misc-t.cc b/storage/perfschema/unittest/pfs_misc-t.cc
index eed9039dfb2905c3e062e69a91cf5638857552af..c308cf4b82d9c304251c5249153c7424b6601ba3 100644
--- a/storage/perfschema/unittest/pfs_misc-t.cc
+++ b/storage/perfschema/unittest/pfs_misc-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/pfs_server_stubs.cc b/storage/perfschema/unittest/pfs_server_stubs.cc
index d7154067fc2a3173460c97dc653de0972b09827b..3c4b864d742d035cd09fa3c1b8f5c3f1d68d30a2 100644
--- a/storage/perfschema/unittest/pfs_server_stubs.cc
+++ b/storage/perfschema/unittest/pfs_server_stubs.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Minimal code to be able to link a unit test.
@@ -43,3 +43,5 @@ enum sys_var::where get_sys_var_value_origin(void *ptr)
 {
   return sys_var::AUTO;
 }
+
+MY_TIMER_INFO sys_timer_info;
diff --git a/storage/perfschema/unittest/pfs_timer-t.cc b/storage/perfschema/unittest/pfs_timer-t.cc
index 551138605322963e718c86c2189d8d469adc9ae8..9ef111f531cfcedadf912a7b0624874d7c17635a 100644
--- a/storage/perfschema/unittest/pfs_timer-t.cc
+++ b/storage/perfschema/unittest/pfs_timer-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
@@ -33,6 +33,8 @@ void test_timers()
   ulonglong t4_b;
   ulonglong t5_b;
 
+  my_timer_init(&sys_timer_info);
+
   init_timers();
 
   t1_a= get_timer_pico_value(TIMER_NAME_CYCLE);
diff --git a/storage/perfschema/unittest/pfs_user-oom-t.cc b/storage/perfschema/unittest/pfs_user-oom-t.cc
index e153b39cbd2b1d40d7ce36e4624589f7f26f385e..6e81df8d5e24421894d9112b567259bcfd558b93 100644
--- a/storage/perfschema/unittest/pfs_user-oom-t.cc
+++ b/storage/perfschema/unittest/pfs_user-oom-t.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/stub_pfs_defaults.h b/storage/perfschema/unittest/stub_pfs_defaults.h
index f4fa24245d57097bd249b40815187159246b0e4c..6b4ee3f0e1571e0d491a538f59451b88d624eb3a 100644
--- a/storage/perfschema/unittest/stub_pfs_defaults.h
+++ b/storage/perfschema/unittest/stub_pfs_defaults.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/stub_pfs_global.h b/storage/perfschema/unittest/stub_pfs_global.h
index 8f204006f48908ad8545c014fcd71cafd020f096..a665ed397048fbe26b30d65365e8ca713705d288 100644
--- a/storage/perfschema/unittest/stub_pfs_global.h
+++ b/storage/perfschema/unittest/stub_pfs_global.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/perfschema/unittest/stub_print_error.h b/storage/perfschema/unittest/stub_print_error.h
index e9b8bc255484a5d6be44e2be6655fedcb2d58022..476a6c0e9010ae2af159d6ae1b20b0974349510f 100644
--- a/storage/perfschema/unittest/stub_print_error.h
+++ b/storage/perfschema/unittest/stub_print_error.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
-  51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+  51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/storage/sequence/sequence.cc b/storage/sequence/sequence.cc
index 6a8625ce9b4104b91a2428b8d632d7a61e60173d..dbb3f7087b5f04abeb256f84c062b0b3de9548c2 100644
--- a/storage/sequence/sequence.cc
+++ b/storage/sequence/sequence.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /*
diff --git a/storage/spider/ha_spider.cc b/storage/spider/ha_spider.cc
index c559f562e98ade2cb11e702505f486da1e9dffd6..6b105200c5524d3a9fbe0b69d21b0d042ffa9750 100644
--- a/storage/spider/ha_spider.cc
+++ b/storage/spider/ha_spider.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_IMPLEMENTATION
 #pragma implementation
diff --git a/storage/spider/ha_spider.h b/storage/spider/ha_spider.h
index 50d890dc854d85ccf5d7f308235810aedeea0954..e926bedc03b583fbae0ae32372ad9dbf9033fcad 100644
--- a/storage/spider/ha_spider.h
+++ b/storage/spider/ha_spider.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifdef USE_PRAGMA_INTERFACE
 #pragma interface
diff --git a/storage/spider/hs_client/hs_compat.h b/storage/spider/hs_client/hs_compat.h
index a26dd18e481c17d33db06ef464fb61e06aff0cbe..c947637a7f1795b6b87c3ce620fdbbd8999627ce 100644
--- a/storage/spider/hs_client/hs_compat.h
+++ b/storage/spider/hs_client/hs_compat.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef HS_COMPAT_H
 #define HS_COMPAT_H
diff --git a/storage/spider/scripts/install_spider.sql b/storage/spider/scripts/install_spider.sql
index 328541a550bea39aff4324fcb94d4f29a2db2254..173ca2e9bde53d91446f6ce1788ae67d35c823c7 100644
--- a/storage/spider/scripts/install_spider.sql
+++ b/storage/spider/scripts/install_spider.sql
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This SQL script creates system tables for SPIDER
 #   or fixes incompatibilities if ones already exist.
diff --git a/storage/spider/spd_conn.cc b/storage/spider/spd_conn.cc
index 5de41ac0f98749d01986f3b0976403391ac3c4fe..99599bca1be27f320f91f16b2e86f527bd7bf1a2 100644
--- a/storage/spider/spd_conn.cc
+++ b/storage/spider/spd_conn.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_conn.h b/storage/spider/spd_conn.h
index cdcb6543a3538146f07e5c5134efd0b92e509c03..06e3c696f354721e9f9e2d08ce317deac031361d 100644
--- a/storage/spider/spd_conn.h
+++ b/storage/spider/spd_conn.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define SPIDER_LOCK_MODE_NO_LOCK             0
 #define SPIDER_LOCK_MODE_SHARED              1
diff --git a/storage/spider/spd_copy_tables.cc b/storage/spider/spd_copy_tables.cc
index d29ea635d974765337aac87f6ad88fa0fa79cfe6..0d89f78ee921a845af66e4188deb07a2978dfc24 100644
--- a/storage/spider/spd_copy_tables.cc
+++ b/storage/spider/spd_copy_tables.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_copy_tables.h b/storage/spider/spd_copy_tables.h
index bac9b5d202c6388fcb48f3b29036774e799a49aa..8c06e115deaa8aab2e78a5091e0e500a53895e9c 100644
--- a/storage/spider/spd_copy_tables.h
+++ b/storage/spider/spd_copy_tables.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 int spider_udf_set_copy_tables_param_default(
   SPIDER_COPY_TABLES *copy_tables
diff --git a/storage/spider/spd_db_conn.cc b/storage/spider/spd_db_conn.cc
index d94c34d67720c287a7ab0366cda9a0b5fc702b1e..efb5e6d8c8c420086362e63374e228c53e16d3ac 100644
--- a/storage/spider/spd_db_conn.cc
+++ b/storage/spider/spd_db_conn.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_db_conn.h b/storage/spider/spd_db_conn.h
index 6d149f6d4a0a1e50e74ab455b12aab023c9af54e..e137a35243a17a2348d7369b015cf011f25ebf7b 100644
--- a/storage/spider/spd_db_conn.h
+++ b/storage/spider/spd_db_conn.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define SPIDER_DB_WRAPPER_STR "mysql"
 #define SPIDER_DB_WRAPPER_LEN (sizeof(SPIDER_DB_WRAPPER_STR) - 1)
diff --git a/storage/spider/spd_db_handlersocket.cc b/storage/spider/spd_db_handlersocket.cc
index 47f22b041168c6ea38d1818868d3d498b0f05a97..bc62914c6aabe63d0ad4a57540b001c963b5ea68 100644
--- a/storage/spider/spd_db_handlersocket.cc
+++ b/storage/spider/spd_db_handlersocket.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_db_handlersocket.h b/storage/spider/spd_db_handlersocket.h
index d3fdf5564b71d3af8e0c0e67764ebd010ac68cec..5c9133d14e95a63791403c0d78439499dc8dcffa 100644
--- a/storage/spider/spd_db_handlersocket.h
+++ b/storage/spider/spd_db_handlersocket.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define SPIDER_HS_CONN dena::hstcpcli_ptr
 #define SPIDER_HS_CONN_CREATE dena::hstcpcli_i::create
diff --git a/storage/spider/spd_db_include.h b/storage/spider/spd_db_include.h
index 680fabf03189f8071342671b2fbda9b1df9f5fa3..05e840ab6b74095bdd8e67d39f65d299da5b7f49 100644
--- a/storage/spider/spd_db_include.h
+++ b/storage/spider/spd_db_include.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "hs_compat.h"
 #if defined(HS_HAS_SQLCOM) && defined(HAVE_HANDLERSOCKET)
diff --git a/storage/spider/spd_db_mysql.cc b/storage/spider/spd_db_mysql.cc
index 499ff7e042cbfe6564c933a580b906039f6dcf17..cf1a07715fc3fd1cc2b7d20b571a1b78281a7392 100644
--- a/storage/spider/spd_db_mysql.cc
+++ b/storage/spider/spd_db_mysql.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_db_mysql.h b/storage/spider/spd_db_mysql.h
index 9a4f08ade988202b0a49773609dc9ec5e438d9b6..0bbfd8e8221732911d6d10c32ca58823aa9732ed 100644
--- a/storage/spider/spd_db_mysql.h
+++ b/storage/spider/spd_db_mysql.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 class spider_db_mysql_util: public spider_db_util
 {
diff --git a/storage/spider/spd_db_oracle.cc b/storage/spider/spd_db_oracle.cc
index 8d7b912657066037a21ec9c46499f294520c750c..4622f3254a17baea998864d3264b204339a8ed4e 100644
--- a/storage/spider/spd_db_oracle.cc
+++ b/storage/spider/spd_db_oracle.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_db_oracle.h b/storage/spider/spd_db_oracle.h
index 0e84435d9beb11df55fa6f75d7587d5cd63cf98c..ffd12db4e1e1932955d99b84e56c734492b0f9a7 100644
--- a/storage/spider/spd_db_oracle.h
+++ b/storage/spider/spd_db_oracle.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 class spider_db_oracle;
 class spider_db_oracle_result;
diff --git a/storage/spider/spd_direct_sql.cc b/storage/spider/spd_direct_sql.cc
index 5c3ef9cabdfa103c2a0c26f6be851f60a29352ac..267ac36ed13bd40a80de4a44e4c1a2e633ec49c5 100644
--- a/storage/spider/spd_direct_sql.cc
+++ b/storage/spider/spd_direct_sql.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_direct_sql.h b/storage/spider/spd_direct_sql.h
index 12d81346f0d59810a31fd0b6efba67ada00c6b1e..bf3e24caa1307b31e10252cd6152c9b8b3f8a529 100644
--- a/storage/spider/spd_direct_sql.h
+++ b/storage/spider/spd_direct_sql.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 uint spider_udf_calc_hash(
   char *key,
diff --git a/storage/spider/spd_err.h b/storage/spider/spd_err.h
index ed26359f98bd9622d35e11825a15acf6db7601ce..4a2fb6b1af5702e21242462b5a6bd4df0be5f315 100644
--- a/storage/spider/spd_err.h
+++ b/storage/spider/spd_err.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define ER_SPIDER_INVALID_CONNECT_INFO_NUM 12501
 #define ER_SPIDER_INVALID_CONNECT_INFO_STR "The connect info '%-.64s' is invalid"
diff --git a/storage/spider/spd_i_s.cc b/storage/spider/spd_i_s.cc
index a525928344fa912a806fe0abf1fd9f6fbf4c9bee..1a4ef510ac70ff5601635c9ef80132666d321b19 100644
--- a/storage/spider/spd_i_s.cc
+++ b/storage/spider/spd_i_s.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_include.h b/storage/spider/spd_include.h
index 37d9db3ba57c9f1258669482cc04970ae9cde6da..472bcea298e5992ea25828bb51bc1f5a0313d0b0 100644
--- a/storage/spider/spd_include.h
+++ b/storage/spider/spd_include.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define SPIDER_DETAIL_VERSION "3.2.37"
 #define SPIDER_HEX_VERSION 0x0302
diff --git a/storage/spider/spd_malloc.cc b/storage/spider/spd_malloc.cc
index 8d348682edf35f0c9f05aebf340cfb85fc3faf3d..511c21e1a5c9305a25604a202b809b174827cd4e 100644
--- a/storage/spider/spd_malloc.cc
+++ b/storage/spider/spd_malloc.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_malloc.h b/storage/spider/spd_malloc.h
index 697595edeb639a0d342b0880e7b4bbe5559da717..abbeb58d71c73d9fd85343f5f374997795301a17 100644
--- a/storage/spider/spd_malloc.h
+++ b/storage/spider/spd_malloc.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define spider_free(A,B,C) spider_free_mem(A,B,C)
 #define spider_malloc(A,B,C,D) \
diff --git a/storage/spider/spd_param.cc b/storage/spider/spd_param.cc
index 39d5ba87c0bd4f26167466a01d548b246c13bb64..decdd9bd153f9958110ca2510a8cee9c7a0ba25a 100644
--- a/storage/spider/spd_param.cc
+++ b/storage/spider/spd_param.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_param.h b/storage/spider/spd_param.h
index d62917adb37535b2e8dccd562feafb1b039f7f44..cc8238584006b1586110bdf583987da8474fa1fb 100644
--- a/storage/spider/spd_param.h
+++ b/storage/spider/spd_param.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program); if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 my_bool spider_param_support_xa();
 my_bool spider_param_connect_mutex();
diff --git a/storage/spider/spd_ping_table.cc b/storage/spider/spd_ping_table.cc
index 6f04e08dc93846a61a2594f674c72d826de1f332..89c097bddcc9a800f04dc29244aa0ba020c4bc98 100644
--- a/storage/spider/spd_ping_table.cc
+++ b/storage/spider/spd_ping_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_ping_table.h b/storage/spider/spd_ping_table.h
index 8d12010e52454d99050fee336c2f1012546fe619..f9e0c00dab18a7257e95b4bef113944640bae329 100644
--- a/storage/spider/spd_ping_table.h
+++ b/storage/spider/spd_ping_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 SPIDER_TABLE_MON_LIST *spider_get_ping_table_mon_list(
   SPIDER_TRX *trx,
diff --git a/storage/spider/spd_sys_table.cc b/storage/spider/spd_sys_table.cc
index 70d6dfd615e5f46aed5996b1e241a594197a6f48..a118a7e416b8ace2ca3ed4cd4f995a23875f8512 100644
--- a/storage/spider/spd_sys_table.cc
+++ b/storage/spider/spd_sys_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_sys_table.h b/storage/spider/spd_sys_table.h
index fc9d3fc38bd16a079bef55506abf1f73fe830141..feb88d4afde497ad5a187d1a04247180464e20bf 100644
--- a/storage/spider/spd_sys_table.h
+++ b/storage/spider/spd_sys_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define SPIDER_SYS_XA_TABLE_NAME_STR "spider_xa"
 #define SPIDER_SYS_XA_TABLE_NAME_LEN (sizeof(SPIDER_SYS_XA_TABLE_NAME_STR) - 1)
diff --git a/storage/spider/spd_table.cc b/storage/spider/spd_table.cc
index 5f7e59b47da9cc6c4d57f22f0f5e13b277355bd6..9726afdd66eb05c27672412a83b824a5019e727d 100644
--- a/storage/spider/spd_table.cc
+++ b/storage/spider/spd_table.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
@@ -6302,7 +6302,7 @@ int spider_panic(
 int spider_db_init(
   void *p
 ) {
-  int error_num, roop_count;
+  int error_num = 0, roop_count;
   uint dbton_id = 0;
   handlerton *spider_hton = (handlerton *)p;
   DBUG_ENTER("spider_db_init");
diff --git a/storage/spider/spd_table.h b/storage/spider/spd_table.h
index 6140f5bbdc7097f85d277084583828b77959b0ef..3eb1e61085ceb519c89cecb80486a307d05f00e8 100644
--- a/storage/spider/spd_table.h
+++ b/storage/spider/spd_table.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 uchar *spider_tbl_get_key(
   SPIDER_SHARE *share,
diff --git a/storage/spider/spd_trx.cc b/storage/spider/spd_trx.cc
index f6bf39b813e9d215bf3b62b86b547daf39482b25..1264c593cace59468a4d3de845015a561bce2d29 100644
--- a/storage/spider/spd_trx.cc
+++ b/storage/spider/spd_trx.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include "mysql_version.h"
diff --git a/storage/spider/spd_trx.h b/storage/spider/spd_trx.h
index b4abecf457f53be4949cb1e0738d21d43f3c7245..dec1db4d863a1d975b16d5269f829c06f0a7c203 100644
--- a/storage/spider/spd_trx.h
+++ b/storage/spider/spd_trx.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 int spider_free_trx_conn(
   SPIDER_TRX *trx,
diff --git a/storage/spider/spd_udf.cc b/storage/spider/spd_udf.cc
index 8381121aaab8ad7c817789d005d147fc87849731..023285cb4f1fd3f4e89fc30f7097e13cfd3fe887 100644
--- a/storage/spider/spd_udf.cc
+++ b/storage/spider/spd_udf.cc
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #define MYSQL_SERVER 1
 #include 
diff --git a/storage/spider/spd_udf.h b/storage/spider/spd_udf.h
index 30a2d6699d11dbc7742dbe45263b744f3393cc6c..d00a615189423f7b39b9b485d4d89c8b27475bfd 100644
--- a/storage/spider/spd_udf.h
+++ b/storage/spider/spd_udf.h
@@ -11,7 +11,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 long long spider_direct_sql_body(
   UDF_INIT *initid,
diff --git a/storage/test_sql_discovery/test_sql_discovery.cc b/storage/test_sql_discovery/test_sql_discovery.cc
index e9efa47a4ec791996406fce73da786afd65711a3..ffbe59e13379e05024fdd002ff11fbb00f5628f9 100644
--- a/storage/test_sql_discovery/test_sql_discovery.cc
+++ b/storage/test_sql_discovery/test_sql_discovery.cc
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /*
diff --git a/storage/tokudb/PerconaFT/COPYING.GPLv2 b/storage/tokudb/PerconaFT/COPYING.GPLv2
index d511905c1647a1e311e8b20d5930a37a9c2531cd..6e475df55260ed81f3bc8502fea2363c31d13bf7 100644
--- a/storage/tokudb/PerconaFT/COPYING.GPLv2
+++ b/storage/tokudb/PerconaFT/COPYING.GPLv2
@@ -2,7 +2,7 @@
 		       Version 2, June 1991
 
  Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found.
 
     You should have received a copy of the GNU General Public License along
     with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+    51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA.
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/tokudb/PerconaFT/cmake/merge_archives_unix.cmake.in b/storage/tokudb/PerconaFT/cmake/merge_archives_unix.cmake.in
index 0a59e4553df78fa995478da2df86dc324733bc15..ef9af445dcc4728d46df39eb2a8c4b48d8971e79 100644
--- a/storage/tokudb/PerconaFT/cmake/merge_archives_unix.cmake.in
+++ b/storage/tokudb/PerconaFT/cmake/merge_archives_unix.cmake.in
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA 
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA 
 
 # This script merges many static libraries into
 # one big library on Unix.
diff --git a/storage/tokudb/PerconaFT/ft/comparator.h b/storage/tokudb/PerconaFT/ft/comparator.h
index 9775cc1338753b1fb86e9801b576e5300069bbcd..dfafd71549d0c14cb2fe6ee4cbfcd07d79169b76 100644
--- a/storage/tokudb/PerconaFT/ft/comparator.h
+++ b/storage/tokudb/PerconaFT/ft/comparator.h
@@ -31,6 +31,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/ft/ft-ops.cc b/storage/tokudb/PerconaFT/ft/ft-ops.cc
index eb8696423cac1ac32808b336063fca57f800955f..6d39b08fe02b5e85ba8e65bbb09042caf747623c 100644
--- a/storage/tokudb/PerconaFT/ft/ft-ops.cc
+++ b/storage/tokudb/PerconaFT/ft/ft-ops.cc
@@ -4973,6 +4973,7 @@ int toku_ft_layer_init(void) {
 
     // Portability must be initialized first
     r = toku_portability_init();
+    assert(r==0);
     if (r) {
         goto exit;
     }
@@ -4980,6 +4981,7 @@ int toku_ft_layer_init(void) {
     toku_pfs_keys_init("fti");
 
     r = db_env_set_toku_product_name("tokudb");
+    assert(r==0);
     if (r) {
         goto exit;
     }
diff --git a/storage/tokudb/PerconaFT/ft/ft-status.cc b/storage/tokudb/PerconaFT/ft/ft-status.cc
index 19a378c22bf53a0051f5293ce30b527e92e079e0..3305c1cf4469bda8452358880ba58fa2ded9d4ec 100644
--- a/storage/tokudb/PerconaFT/ft/ft-status.cc
+++ b/storage/tokudb/PerconaFT/ft/ft-status.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/ft/ft-status.h b/storage/tokudb/PerconaFT/ft/ft-status.h
index b176161683d2e8646e67a6f661523bd0a4375af1..4775487cc2ff114fecd00ba6a8a452232b2e7616 100644
--- a/storage/tokudb/PerconaFT/ft/ft-status.h
+++ b/storage/tokudb/PerconaFT/ft/ft-status.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/ft/logger/logger.cc b/storage/tokudb/PerconaFT/ft/logger/logger.cc
index 3f13fe10febb7cf4149fa9a2732bb001808e9902..ddbbdcb25abbbc294f6fd53c5d8a6aa4309c143b 100644
--- a/storage/tokudb/PerconaFT/ft/logger/logger.cc
+++ b/storage/tokudb/PerconaFT/ft/logger/logger.cc
@@ -667,12 +667,8 @@ int toku_logger_find_logfiles (const char *directory, char ***resultp, int *n_lo
         snprintf(fname, fnamelen, "%s/%s", directory, de->d_name);
         result[n_results++] = fname;
     }
-    // Return them in increasing order.  Set width to allow for newer log file names ("xxx.tokulog13")
-    // which are one character longer than old log file names ("xxx.tokulog2").  The comparison function
-    // won't look beyond the terminating NUL, so an extra character in the comparison string doesn't matter.
-    // Allow room for terminating NUL after "xxx.tokulog13" even if result[0] is of form "xxx.tokulog2."
-    int width = sizeof(result[0]+2);
-    qsort(result, n_results, width, logfilenamecompare);
+    // Return them in increasing order.
+    qsort(result, n_results, sizeof(result[0]), logfilenamecompare);
     *resultp    = result;
     *n_logfiles = n_results;
     result[n_results]=0; // make a trailing null
diff --git a/storage/tokudb/PerconaFT/locktree/keyrange.cc b/storage/tokudb/PerconaFT/locktree/keyrange.cc
index 2b4b3bbd4fdcc50b7cb4087e6c8353c8ed74451d..24a999e134a0c218a4b95572b06d1e6c5f39c02a 100644
--- a/storage/tokudb/PerconaFT/locktree/keyrange.cc
+++ b/storage/tokudb/PerconaFT/locktree/keyrange.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/keyrange.h b/storage/tokudb/PerconaFT/locktree/keyrange.h
index a454287cbc8d0dbcec3c7e6855a56d4440616ae7..8347e4d8edfa6c93ba9fe467e516625a6ab3c5ef 100644
--- a/storage/tokudb/PerconaFT/locktree/keyrange.h
+++ b/storage/tokudb/PerconaFT/locktree/keyrange.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/lock_request.cc b/storage/tokudb/PerconaFT/locktree/lock_request.cc
index 51898d4ccb111549344c92963934a7d8f6443d28..0a95dc417d6445931028416a048278dfb6a51f5a 100644
--- a/storage/tokudb/PerconaFT/locktree/lock_request.cc
+++ b/storage/tokudb/PerconaFT/locktree/lock_request.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/lock_request.h b/storage/tokudb/PerconaFT/locktree/lock_request.h
index 455433cb90c9b0ce3c2bd7d995586863cfa058bc..8b22241e276803f5cb26aa6b03f679484488e7fe 100644
--- a/storage/tokudb/PerconaFT/locktree/lock_request.h
+++ b/storage/tokudb/PerconaFT/locktree/lock_request.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/locktree.cc b/storage/tokudb/PerconaFT/locktree/locktree.cc
index 8ba3f0f00aea4c576bff03994ecdce56bc06f6a3..8e81adefbf8eb1305a7c1664defb0f2fdb883602 100644
--- a/storage/tokudb/PerconaFT/locktree/locktree.cc
+++ b/storage/tokudb/PerconaFT/locktree/locktree.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/locktree.h b/storage/tokudb/PerconaFT/locktree/locktree.h
index 7006b6fb01d0f3c5eed19507952c1bfa263f4816..4d9e5bdaf6c5dd21831e2559406f37d8aefc8c10 100644
--- a/storage/tokudb/PerconaFT/locktree/locktree.h
+++ b/storage/tokudb/PerconaFT/locktree/locktree.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/manager.cc b/storage/tokudb/PerconaFT/locktree/manager.cc
index 21f8dc6cf01e8873afbad2e767c112c48e71db3c..5662150de4bdd9fbce5899ddedbdef53e6989457 100644
--- a/storage/tokudb/PerconaFT/locktree/manager.cc
+++ b/storage/tokudb/PerconaFT/locktree/manager.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/range_buffer.cc b/storage/tokudb/PerconaFT/locktree/range_buffer.cc
index d1f14fc4a529ba866a892e8212ac9d61766dec94..33ee481aa51a24fa5a9e7f4553dadf5596eaa6e2 100644
--- a/storage/tokudb/PerconaFT/locktree/range_buffer.cc
+++ b/storage/tokudb/PerconaFT/locktree/range_buffer.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/range_buffer.h b/storage/tokudb/PerconaFT/locktree/range_buffer.h
index 811b0f85e69647b612e26c4833e9485e4198708f..3b08e8953041cf5771361e707dff18d1fa95f1dd 100644
--- a/storage/tokudb/PerconaFT/locktree/range_buffer.h
+++ b/storage/tokudb/PerconaFT/locktree/range_buffer.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/treenode.cc b/storage/tokudb/PerconaFT/locktree/treenode.cc
index 0247242f97515d70a58302abded7ccad4d97b7b6..f328bf348e3b580d8c2a9520d71d84b487e95744 100644
--- a/storage/tokudb/PerconaFT/locktree/treenode.cc
+++ b/storage/tokudb/PerconaFT/locktree/treenode.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/treenode.h b/storage/tokudb/PerconaFT/locktree/treenode.h
index 981e8b5a9cf2c6d8d73ed38cb5e25b8fe1068388..fb2adc4745d91e2b2c4a256c692d19874f9f55d0 100644
--- a/storage/tokudb/PerconaFT/locktree/treenode.h
+++ b/storage/tokudb/PerconaFT/locktree/treenode.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/txnid_set.cc b/storage/tokudb/PerconaFT/locktree/txnid_set.cc
index bd4e9723155d5c3e04c9ed7e21af7207251f9a67..f5ed6b2e4162433026d140d7a5e46f3736cd70b5 100644
--- a/storage/tokudb/PerconaFT/locktree/txnid_set.cc
+++ b/storage/tokudb/PerconaFT/locktree/txnid_set.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/txnid_set.h b/storage/tokudb/PerconaFT/locktree/txnid_set.h
index 81fd45b6dde1ae65948e14b5f91520205435b03e..70b0ce76761190aba9fdeb68873c04095a083925 100644
--- a/storage/tokudb/PerconaFT/locktree/txnid_set.h
+++ b/storage/tokudb/PerconaFT/locktree/txnid_set.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/wfg.cc b/storage/tokudb/PerconaFT/locktree/wfg.cc
index 26b7a3b529500fd7bfedba4cb04beb5a6fa35233..8fd079bedfdbb88a9200471ba9dc64c6003db44b 100644
--- a/storage/tokudb/PerconaFT/locktree/wfg.cc
+++ b/storage/tokudb/PerconaFT/locktree/wfg.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/locktree/wfg.h b/storage/tokudb/PerconaFT/locktree/wfg.h
index 5c1599592e6cb5b3e4be6363a4c8b7dfa96d0dc6..32f14e4b5194bb3c7c1c82f3bf6665a130341011 100644
--- a/storage/tokudb/PerconaFT/locktree/wfg.h
+++ b/storage/tokudb/PerconaFT/locktree/wfg.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/memory.cc b/storage/tokudb/PerconaFT/portability/memory.cc
index 403abfe1d68dc159327605559b2f122c1ec2fd73..f4888dccc51e558f2b64ac64e7a4b91bca173e63 100644
--- a/storage/tokudb/PerconaFT/portability/memory.cc
+++ b/storage/tokudb/PerconaFT/portability/memory.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
@@ -65,7 +79,7 @@ static realloc_fun_t t_xrealloc = 0;
 static LOCAL_MEMORY_STATUS_S status;
 int toku_memory_do_stats = 0;
 
-static bool memory_startup_complete;
+static bool memory_startup_complete = false;
 
 int
 toku_memory_startup(void) {
@@ -83,8 +97,10 @@ toku_memory_startup(void) {
     if (success) {
         status.mallocator_version = "libc";
         status.mmap_threshold = mmap_threshold;
-    } else
+    } else {
         result = EINVAL;
+    }
+    assert(result == 0);
 #else
     // just a guess
     status.mallocator_version = "darwin";
@@ -100,18 +116,17 @@ toku_memory_startup(void) {
     if (mallctl_f) { // jemalloc is loaded
         size_t version_length = sizeof status.mallocator_version;
         result = mallctl_f("version", &status.mallocator_version, &version_length, NULL, 0);
+        assert(result == 0);
         if (result == 0) {
             size_t lg_chunk; // log2 of the mmap threshold
             size_t lg_chunk_length = sizeof lg_chunk;
             result  = mallctl_f("opt.lg_chunk", &lg_chunk, &lg_chunk_length, NULL, 0);
-            if (result)
-            {
-                status.mmap_threshold = 1 << 21; // Default value.
-                                                 // Incompatible jemalloc change.
+            if (result == 0) {
+                status.mmap_threshold = 1 << lg_chunk;
+            } else {
+                status.mmap_threshold = 1 << 22;
                 result = 0;
             }
-            else
-                status.mmap_threshold = 1 << lg_chunk;
         }
     }
 
diff --git a/storage/tokudb/PerconaFT/portability/memory.h b/storage/tokudb/PerconaFT/portability/memory.h
index 851e4d69e03005b43c2a096e088d570562a1341d..b804463413b8d8439fd7f8221e869c19268fc004 100644
--- a/storage/tokudb/PerconaFT/portability/memory.h
+++ b/storage/tokudb/PerconaFT/portability/memory.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/portability.cc b/storage/tokudb/PerconaFT/portability/portability.cc
index dfa5153cc667ab0f4e511f6dfc731ed3e8068ddf..81115a516aacfb325ba4a32c45db25d9affaa0bd 100644
--- a/storage/tokudb/PerconaFT/portability/portability.cc
+++ b/storage/tokudb/PerconaFT/portability/portability.cc
@@ -88,9 +88,11 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 int
 toku_portability_init(void) {
     int r = toku_memory_startup();
+    assert(r==0);
     if (r == 0) {
         uint64_t hz;
         r = toku_os_get_processor_frequency(&hz); // get and cache freq
+        assert(r==0);
     }
     (void) toku_os_get_pagesize(); // get and cache pagesize
     return r;
diff --git a/storage/tokudb/PerconaFT/portability/toku_atomic.h b/storage/tokudb/PerconaFT/portability/toku_atomic.h
index 5086c87170efc195533b9518be49713dc700286e..88644f56939efb46c3d78a04b54d0478dfcb4d37 100644
--- a/storage/tokudb/PerconaFT/portability/toku_atomic.h
+++ b/storage/tokudb/PerconaFT/portability/toku_atomic.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_instrumentation.h b/storage/tokudb/PerconaFT/portability/toku_instrumentation.h
index 7f2946d97020b73b52296370eb666f9525d070d7..01552f9feabd341171dbd047c3e4f13276c83e9d 100644
--- a/storage/tokudb/PerconaFT/portability/toku_instrumentation.h
+++ b/storage/tokudb/PerconaFT/portability/toku_instrumentation.h
@@ -1,3 +1,49 @@
+/*======
+This file is part of PerconaFT.
+
+Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
+
+    PerconaFT is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License, version 2,
+    as published by the Free Software Foundation.
+
+    PerconaFT is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+    PerconaFT is free software: you can redistribute it and/or modify
+    it under the terms of the GNU Affero General Public License, version 3,
+    as published by the Free Software Foundation.
+
+    PerconaFT is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU Affero General Public License for more details.
+
+    You should have received a copy of the GNU Affero General Public License
+    along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+======= */
+
 #pragma once
 
 #include   // FILE
diff --git a/storage/tokudb/PerconaFT/portability/toku_portability.h b/storage/tokudb/PerconaFT/portability/toku_portability.h
index af49f8eeb046ec97f12670e8d18708f41aa6c773..8945ed6ff060ec145ed1f6694dbfdaf8ca91ccea 100644
--- a/storage/tokudb/PerconaFT/portability/toku_portability.h
+++ b/storage/tokudb/PerconaFT/portability/toku_portability.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_pthread.cc b/storage/tokudb/PerconaFT/portability/toku_pthread.cc
index 65eeea6ae074b4976b42ed9c760b991661765ac7..fe8a4d485cd49ed958e8e4461ebad1ae20c55b51 100644
--- a/storage/tokudb/PerconaFT/portability/toku_pthread.cc
+++ b/storage/tokudb/PerconaFT/portability/toku_pthread.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_pthread.h b/storage/tokudb/PerconaFT/portability/toku_pthread.h
index d05c6fabf53ccacb0af6975347f232c49ef501a5..a0831f677ad3447b09a17f40e1179c093486dcbb 100644
--- a/storage/tokudb/PerconaFT/portability/toku_pthread.h
+++ b/storage/tokudb/PerconaFT/portability/toku_pthread.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_race_tools.h b/storage/tokudb/PerconaFT/portability/toku_race_tools.h
index eee08185513fc75f49349c91161a6104b1eaac53..479363546ee55c17c85566a04d9aa8311f7f8c42 100644
--- a/storage/tokudb/PerconaFT/portability/toku_race_tools.h
+++ b/storage/tokudb/PerconaFT/portability/toku_race_tools.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_time.cc b/storage/tokudb/PerconaFT/portability/toku_time.cc
index 07bf09f887c05f9183a583be1facc6a8db1ac7ae..bbc5689a8cf40dafdfeb79ec4731a96dadf50bf8 100644
--- a/storage/tokudb/PerconaFT/portability/toku_time.cc
+++ b/storage/tokudb/PerconaFT/portability/toku_time.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/portability/toku_time.h b/storage/tokudb/PerconaFT/portability/toku_time.h
index c4c45b8e8c745016534ec126c20bca3718dfaab5..b9789bc56139a21f0e99f5a59af0eaceaf9a2369 100644
--- a/storage/tokudb/PerconaFT/portability/toku_time.h
+++ b/storage/tokudb/PerconaFT/portability/toku_time.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/aclocal.m4 b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/aclocal.m4
index 470ed7edd425f408cf7a6bc400f8bbb511a1baca..881dba8f0cd228941af073ddc9445ae71b3ba7ad 100644
--- a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/aclocal.m4
+++ b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/aclocal.m4
@@ -58,7 +58,7 @@ m4_define([_LT_COPYING], [dnl
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
 # obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 ])
 
 # serial 57 LT_INIT
@@ -8643,7 +8643,7 @@ m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
diff --git a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/configure b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/configure
index c6b02e8ab8861711302ffbebbb87a8934f734b52..5149d10147ed348db84c135d76da89263785c92a 100755
--- a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/configure
+++ b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/configure
@@ -18060,7 +18060,7 @@ $as_echo X"$file" |
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
 # obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 
 
 # The names of the tagged configurations supported by this script.
diff --git a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/ltmain.sh b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/ltmain.sh
index c2852d856135458112c39b5f156145980860253a..9385c3e677df235b8dab28cbff96c4e06fec15d4 100644
--- a/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/ltmain.sh
+++ b/storage/tokudb/PerconaFT/third_party/snappy-1.1.2/ltmain.sh
@@ -26,7 +26,7 @@
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html,
 # or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 
 # Usage: $progname [OPTION]... [MODE-ARG]...
 #
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.GPLv2 b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.GPLv2
index d511905c1647a1e311e8b20d5930a37a9c2531cd..6e475df55260ed81f3bc8502fea2363c31d13bf7 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.GPLv2
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.GPLv2
@@ -2,7 +2,7 @@
 		       Version 2, June 1991
 
  Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found.
 
     You should have received a copy of the GNU General Public License along
     with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+    51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA.
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.LGPLv2.1 b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.LGPLv2.1
index 5ab7695ab8cabe0c5c8a814bb0ab1e8066578fbb..dbe030ddc612ea0caeff372dba5a0ec2b1035cc7 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.LGPLv2.1
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/COPYING.LGPLv2.1
@@ -2,7 +2,7 @@
 		       Version 2.1, February 1999
 
  Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -485,7 +485,7 @@ convey the exclusion of warranty; and each file should have at least the
 
     You should have received a copy of the GNU Lesser General Public
     License along with this library; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 Also add information on how to contact you by electronic and paper mail.
 
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/config.sub b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/config.sub
index a39437d0158ed7058a189617db490472252a70ae..8b9b9b533cdea9cea1e7ade6af8b55322f00ba4b 100755
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/config.sub
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/config.sub
@@ -23,7 +23,7 @@ timestamp='2009-04-17'
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# 02110-1335  USA.
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/ltmain.sh b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/ltmain.sh
index b36c4ad366cbb8c137b19a3789eecf29af5aeb98..58923bb7bfe76b22b224149e734763d246a81b5a 100755
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/ltmain.sh
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/build-aux/ltmain.sh
@@ -26,7 +26,7 @@
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html,
 # or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 
 # Usage: $progname [OPTION]... [MODE-ARG]...
 #
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/configure b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/configure
index f0a417e0d2950f7eb1aa35c42782c9be4f66509a..288961ad7f7cde327293361f15eb44c10d964631 100755
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/configure
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/configure
@@ -22091,7 +22091,7 @@ $as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
 # obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 
 
 # The names of the tagged configurations supported by this script.
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.c b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.c
index a5908a4ad37aa0129ef97a2f99397e337d2520f7..e5a2e45c7fe960c8c8b936403bf71790d2e01cce 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.c
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.c
@@ -20,7 +20,7 @@
 
    You should have received a copy of the GNU Lesser General Public License along
    with this program; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.  */
 
 #ifndef _LIBC
 # include 
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.in.h b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.in.h
index fc2a1351026f03de7a81bf93338e051ed20fb4fa..9b79b63d10178675f62a8d603eeff95401bececf 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.in.h
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt.in.h
@@ -17,7 +17,7 @@
 
    You should have received a copy of the GNU Lesser General Public License along
    with this program; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.  */
 
 #ifndef _GETOPT_H
 
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt1.c b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt1.c
index e7df1c8b17c1710edd74ef9575c0946a8de3dd58..53e588d54934e9bbe6fe755bee264b5c2f57a72e 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt1.c
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt1.c
@@ -17,7 +17,7 @@
 
    You should have received a copy of the GNU Lesser General Public License along
    with this program; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.  */
 
 #ifdef _LIBC
 # include 
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt_int.h b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt_int.h
index 7eed4f1a8baac39cdc6c848d7f3f306883e246dc..1585d4106d00e7af62ceef744f7f5d3b3f51bec3 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt_int.h
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/lib/getopt_int.h
@@ -17,7 +17,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.  */
 
 #ifndef _GETOPT_INT_H
 #define _GETOPT_INT_H	1
diff --git a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/m4/libtool.m4 b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/m4/libtool.m4
index faec0c309e8c468910e56684e1aa773f578d7441..1317892b7bb0c94db50a3bd893372de208fb07ef 100644
--- a/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/m4/libtool.m4
+++ b/storage/tokudb/PerconaFT/third_party/xz-4.999.9beta/m4/libtool.m4
@@ -34,7 +34,7 @@ m4_define([_LT_COPYING], [dnl
 # along with GNU Libtool; see the file COPYING.  If not, a copy
 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
 # obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA.
 ])
 
 # serial 56 LT_INIT
diff --git a/storage/tokudb/PerconaFT/util/dbt.h b/storage/tokudb/PerconaFT/util/dbt.h
index d3ef73a7a6ff065cdce303c6e957e349a80f7434..1b8375674fa994a656f80a178bdbcfade2b39481 100644
--- a/storage/tokudb/PerconaFT/util/dbt.h
+++ b/storage/tokudb/PerconaFT/util/dbt.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/growable_array.h b/storage/tokudb/PerconaFT/util/growable_array.h
index ad60ea6395b15a59aa948b7eabb463822acbee6f..bc9e67af24028019da64e2a94470efcce217f258 100644
--- a/storage/tokudb/PerconaFT/util/growable_array.h
+++ b/storage/tokudb/PerconaFT/util/growable_array.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/memarena.cc b/storage/tokudb/PerconaFT/util/memarena.cc
index 158cf37e5e823bad17494f52ae7667d6686ba6aa..8c0542211e459aa39370a23ca691466c90356839 100644
--- a/storage/tokudb/PerconaFT/util/memarena.cc
+++ b/storage/tokudb/PerconaFT/util/memarena.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/memarena.h b/storage/tokudb/PerconaFT/util/memarena.h
index 7cbbdc89cfb66ce7cd556c10c8ba9def6a13d5cf..c1de3c94a30925d9fd2f9864212432341d593363 100644
--- a/storage/tokudb/PerconaFT/util/memarena.h
+++ b/storage/tokudb/PerconaFT/util/memarena.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/omt.cc b/storage/tokudb/PerconaFT/util/omt.cc
index 846c4df7f54d8b87333e5ab3d304d9d0a381dc88..44da98478a05d5223613b1e8b856fa09180780d6 100644
--- a/storage/tokudb/PerconaFT/util/omt.cc
+++ b/storage/tokudb/PerconaFT/util/omt.cc
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident \
diff --git a/storage/tokudb/PerconaFT/util/omt.h b/storage/tokudb/PerconaFT/util/omt.h
index dc26b2d5718274ac66abec3d8028c0f692ec7fd1..849389b9fac027ceb0b277a4201544902f5d0358 100644
--- a/storage/tokudb/PerconaFT/util/omt.h
+++ b/storage/tokudb/PerconaFT/util/omt.h
@@ -45,6 +45,7 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/partitioned_counter.cc b/storage/tokudb/PerconaFT/util/partitioned_counter.cc
index beab7fc72284786b6d2336ea0065e1bed0fc161d..7a6b8ab26bf9e216f53b0445226334b02783ebce 100644
--- a/storage/tokudb/PerconaFT/util/partitioned_counter.cc
+++ b/storage/tokudb/PerconaFT/util/partitioned_counter.cc
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/partitioned_counter.h b/storage/tokudb/PerconaFT/util/partitioned_counter.h
index 43d4e7b46b7e433645abfba3d3e43a2d56fdb3f8..d5bf97cf301d42f8447cbb61f913713bd7725c16 100644
--- a/storage/tokudb/PerconaFT/util/partitioned_counter.h
+++ b/storage/tokudb/PerconaFT/util/partitioned_counter.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/PerconaFT/util/status.h b/storage/tokudb/PerconaFT/util/status.h
index ddf43c72d9fc532baa729237e4e13e9cecbe7b79..2d03ef1ed5e944407cb6b227a0b4a80dec408fb0 100644
--- a/storage/tokudb/PerconaFT/util/status.h
+++ b/storage/tokudb/PerconaFT/util/status.h
@@ -32,6 +32,20 @@ Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved.
 
     You should have received a copy of the GNU Affero General Public License
     along with PerconaFT.  If not, see .
+
+----------------------------------------
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 ======= */
 
 #ident "Copyright (c) 2006, 2015, Percona and/or its affiliates. All rights reserved."
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_Makefile b/storage/tokudb/mysql-test/tokudb/t/change_column_Makefile
index d1a692e03571c5bf755ed64da4693c7e14d5dbab..b1ee6d1f16db434a5a5b4b9b371cef915d9d3746 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_Makefile
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_Makefile
@@ -1,4 +1,4 @@
-# generate tests from test generator python programs
+# generate tests from test generator python2 programs
 
 S = $(wildcard *.py)
 T = $(patsubst %.py,%.test,$(S))
@@ -6,14 +6,14 @@ T = $(patsubst %.py,%.test,$(S))
 default: $(T)
 
 %.test: %.py
-	python $< >$@
+	python2 $< >$@
 
 change_all.test: change_all.py change_all_1000_10.test change_all_1000_1.test change_all_10000_1.test
 	true
 change_all_1000_10.test: change_all.py
-	python change_all.py --experiments=1000 --nrows=10 >change_all_1000_10.test
+	python2 change_all.py --experiments=1000 --nrows=10 >change_all_1000_10.test
 change_all_1000_1.test: change_all.py
-	python change_all.py --experiments=1000 --nrows=1 >change_all_1000_1.test
+	python2 change_all.py --experiments=1000 --nrows=1 >change_all_1000_1.test
 change_all_10000_1.test: change_all.py
-	python change_all.py --experiments=10000 --nrows=1 >change_all_10000_1.test
+	python2 change_all.py --experiments=10000 --nrows=1 >change_all_10000_1.test
 
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_bin.py b/storage/tokudb/mysql-test/tokudb/t/change_column_bin.py
index 2c7d8dd9a54d9d24d7fc56c0ff9d8f37dbf91aec..9b291c8f9db9224b6995e4ca0d98c338e15fe06e 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_bin.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_bin.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_bin_rename.py b/storage/tokudb/mysql-test/tokudb/t/change_column_bin_rename.py
index 6bd5de38fe8f9247bba712e459ee4ff3efc44755..50feab50ffce968244f9a4ef75b92d3df3f1d80c 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_bin_rename.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_bin_rename.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_char.py b/storage/tokudb/mysql-test/tokudb/t/change_column_char.py
index c53442ade509db94321714e4e5333cc77c39ee06..a0b45e9de597e121c24c5fa5ef7546008d5580a6 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_char.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_char.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_char_binary.py b/storage/tokudb/mysql-test/tokudb/t/change_column_char_binary.py
index e92797918d539facde1ca3cafaa1ed2e100f6b1d..3cbf389ebc1f93f7fe76a777b9095b45a72b93af 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_char_binary.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_char_binary.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_char_charbinary.py b/storage/tokudb/mysql-test/tokudb/t/change_column_char_charbinary.py
index 065e37b186de28e0c3abab4b8f043af3ef9c0891..ca507130f57fd5c2823e72fb877eaeab4e83ce75 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_char_charbinary.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_char_charbinary.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_char_rename.py b/storage/tokudb/mysql-test/tokudb/t/change_column_char_rename.py
index fe73fce0d5356869541d92747c14bb2d6fdcd9a5..26707868c5305f9fefd5be075b7296ca03acd8a5 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_char_rename.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_char_rename.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(n):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_int.py b/storage/tokudb/mysql-test/tokudb/t/change_column_int.py
index 6f69156e260099a850ca160b8bac300310add8e1..1067031fd055fc23ec5f387d334e2ca35a7abd32 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_int.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_int.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(types, values):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_int_key.py b/storage/tokudb/mysql-test/tokudb/t/change_column_int_key.py
index fd7e5868c40fa3255db6664b11319cfef0bfdecc..4b06df54607d181e6106b4eec4014c89b6f3499e 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_int_key.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_int_key.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(types):
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_int_not_supported.py b/storage/tokudb/mysql-test/tokudb/t/change_column_int_not_supported.py
index 1708c65efde5179f124f4ba0b54a4e76e9450c71..afafbe1a99f66b84e2483279e4ce17e79baf259d 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_int_not_supported.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_int_not_supported.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 import sys
 def supported(from_int, from_modifier, to_int, to_modifer):
     if from_modifier != to_modifer:
diff --git a/storage/tokudb/mysql-test/tokudb/t/change_column_int_rename.py b/storage/tokudb/mysql-test/tokudb/t/change_column_int_rename.py
index 5222564a9a2c8f1cc656e2a748a965c46efba202..6b6c979329b71c8888815a738bb521d992c500f5 100644
--- a/storage/tokudb/mysql-test/tokudb/t/change_column_int_rename.py
+++ b/storage/tokudb/mysql-test/tokudb/t/change_column_int_rename.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 
 import sys
 def gen_test(types, values):
diff --git a/storage/tokudb/mysql-test/tokudb/t/fast_update_Makefile b/storage/tokudb/mysql-test/tokudb/t/fast_update_Makefile
index 71956d1fe43d359fb70f5175b083471bb14f9362..dfcf2877734e4f65fdbaa38694660dd46d8f1198 100644
--- a/storage/tokudb/mysql-test/tokudb/t/fast_update_Makefile
+++ b/storage/tokudb/mysql-test/tokudb/t/fast_update_Makefile
@@ -1,4 +1,4 @@
-# generate tests from test generator python programs
+# generate tests from test generator python2 programs
 
 S = $(wildcard *.py)
 T = $(patsubst %.py,%.test,$(S))
@@ -6,5 +6,5 @@ T = $(patsubst %.py,%.test,$(S))
 default: $(T)
 
 %.test: %.py
-	python $< >$@
+	python2 $< >$@
 
diff --git a/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_sync_tokudb-master.opt b/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_sync_tokudb-master.opt
deleted file mode 100644
index 9854fda301d328d23192a325e724f22c3b8afe14..0000000000000000000000000000000000000000
--- a/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_sync_tokudb-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---innodb_file_per_table=1
diff --git a/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_tokudb-master.opt b/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_tokudb-master.opt
deleted file mode 100644
index d57f32b54fb5a2a3dc270d20f6a04328987dc297..0000000000000000000000000000000000000000
--- a/storage/tokudb/mysql-test/tokudb_parts/t/partition_debug_tokudb-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---innodb-file-format-check --innodb-file-per-table=1
diff --git a/storage/tokudb/mysql-test/tokudb_parts/t/partition_special_tokudb-master.opt b/storage/tokudb/mysql-test/tokudb_parts/t/partition_special_tokudb-master.opt
deleted file mode 100644
index 624645d75c74c2b1e8821964766e525d4d449a28..0000000000000000000000000000000000000000
--- a/storage/tokudb/mysql-test/tokudb_parts/t/partition_special_tokudb-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---innodb_lock_wait_timeout=2 --innodb-file-per-table=1
diff --git a/storage/xtradb/CMakeLists.txt b/storage/xtradb/CMakeLists.txt
index 77fd2ba29afd23390e96fd7ddbb52d54d18bc2b8..cc269b442014ab7f126dbd37d2dd84a8b7ae0c1a 100644
--- a/storage/xtradb/CMakeLists.txt
+++ b/storage/xtradb/CMakeLists.txt
@@ -11,7 +11,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 # This is the CMakeLists for XtraDB
 
@@ -493,8 +493,7 @@ SET(INNOBASE_SOURCES
 	ut/ut0rnd.cc
 	ut/ut0ut.cc
 	ut/ut0vec.cc
-	ut/ut0wqueue.cc
-	ut/ut0timer.cc)
+	ut/ut0wqueue.cc)
 
 IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
     enable_language(ASM)
diff --git a/storage/xtradb/api/api0api.cc b/storage/xtradb/api/api0api.cc
index 55ed555ed48961e36c91187b82fe09d4d1772afd..1cb11d5e8c88c6d3baecb9c137c4fc460c8bb673 100644
--- a/storage/xtradb/api/api0api.cc
+++ b/storage/xtradb/api/api0api.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/api/api0misc.cc b/storage/xtradb/api/api0misc.cc
index 5daee5de4c9413729d434a0289a48b96a42ae04f..b16abf9b84f5b39ea48594ea06630e2625ba5d5e 100644
--- a/storage/xtradb/api/api0misc.cc
+++ b/storage/xtradb/api/api0misc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/btr/btr0btr.cc b/storage/xtradb/btr/btr0btr.cc
index dca8542633f1e89f51af4a2cb000b90c39a39e13..1f129b302d747612cbf16fcb517db98ca3629bfe 100644
--- a/storage/xtradb/btr/btr0btr.cc
+++ b/storage/xtradb/btr/btr0btr.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/btr/btr0cur.cc b/storage/xtradb/btr/btr0cur.cc
index e29d9091f8e967d814af1d6554cef4b5eff944ac..5235fe434a92c2d0e69b63b1f4fa2f833deb20a7 100644
--- a/storage/xtradb/btr/btr0cur.cc
+++ b/storage/xtradb/btr/btr0cur.cc
@@ -21,7 +21,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/btr/btr0defragment.cc b/storage/xtradb/btr/btr0defragment.cc
index 3124db650c6e2ec984c99c8f3f0de593f7bd91e7..070f6a9cc0a0d73b96ab4ef0b8ca1678df902a94 100644
--- a/storage/xtradb/btr/btr0defragment.cc
+++ b/storage/xtradb/btr/btr0defragment.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (C) 2012, 2014 Facebook, Inc. All Rights Reserved.
-Copyright (C) 2014, 2015, MariaDB Corporation. All Rights Reserved.
+Copyright (C) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
@@ -35,8 +35,6 @@ Modified 30/07/2014 Jan Lindström jan.lindstrom@mariadb.com
 #include "ibuf0ibuf.h"
 #include "lock0lock.h"
 #include "srv0start.h"
-#include "srv0srv.h"
-#include "ut0timer.h"
 
 #include 
 
@@ -100,8 +98,7 @@ Initialize defragmentation. */
 void
 btr_defragment_init()
 {
-	srv_defragment_interval = ut_microseconds_to_timer(
-		1000000.0 / srv_defragment_frequency);
+	srv_defragment_interval = 1000000000ULL / srv_defragment_frequency;
 	mutex_create(btr_defragment_mutex_key, &btr_defragment_mutex,
 		     SYNC_ANY_LATCH);
 }
@@ -729,7 +726,7 @@ DECLARE_THREAD(btr_defragment_thread)(void*)
 		}
 
 		pcur = item->pcur;
-		ulonglong now = ut_timer_now();
+		ulonglong now = my_interval_timer();
 		ulonglong elapsed = now - item->last_processed;
 
 		if (elapsed < srv_defragment_interval) {
@@ -739,11 +736,12 @@ DECLARE_THREAD(btr_defragment_thread)(void*)
 			defragmentation of all indices queue up on a single
 			thread, it's likely other indices that follow this one
 			don't need to sleep again. */
-			os_thread_sleep(((ulint)ut_timer_to_microseconds(
-						srv_defragment_interval - elapsed)));
+			os_thread_sleep(static_cast
+					((srv_defragment_interval - elapsed)
+					 / 1000));
 		}
 
-		now = ut_timer_now();
+		now = my_interval_timer();
 		mtr_start(&mtr);
 		btr_pcur_restore_position(BTR_MODIFY_TREE, pcur, &mtr);
 		cursor = btr_pcur_get_btr_cur(pcur);
diff --git a/storage/xtradb/btr/btr0pcur.cc b/storage/xtradb/btr/btr0pcur.cc
index 06166e1aa16f8526a60478b1b5ff298bca1211da..1524266ea7cf044ab84aec88b2c139ed7b1b5676 100644
--- a/storage/xtradb/btr/btr0pcur.cc
+++ b/storage/xtradb/btr/btr0pcur.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/btr/btr0sea.cc b/storage/xtradb/btr/btr0sea.cc
index 713a584ee7e0885e77d192397eaded0c242848bb..5f3bcca4123f04131375da7b3162a999140949a4 100644
--- a/storage/xtradb/btr/btr0sea.cc
+++ b/storage/xtradb/btr/btr0sea.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/buf/buf0buddy.cc b/storage/xtradb/buf/buf0buddy.cc
index e058c69d4b3d5e9e3d7003c5a3f157808b27c283..68629844067967531938b11a5b7675853c1c0b0c 100644
--- a/storage/xtradb/buf/buf0buddy.cc
+++ b/storage/xtradb/buf/buf0buddy.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -612,7 +612,7 @@ buf_buddy_relocate(
 
 	if (buf_page_can_relocate(bpage)) {
 		/* Relocate the compressed page. */
-		ullint	usec = ut_time_us(NULL);
+		const ulonglong ns = my_interval_timer();
 
 		ut_a(bpage->zip.data == src);
 
@@ -630,11 +630,8 @@ buf_buddy_relocate(
 			reinterpret_cast(src), i);
 
 		buf_buddy_stat_t*	buddy_stat = &buf_pool->buddy_stat[i];
-
 		++buddy_stat->relocated;
-
-		buddy_stat->relocated_usec += ut_time_us(NULL) - usec;
-
+		buddy_stat->relocated_usec+= (my_interval_timer() - ns) / 1000;
 		return(true);
 	}
 
diff --git a/storage/xtradb/buf/buf0buf.cc b/storage/xtradb/buf/buf0buf.cc
index 773b528b40d8b89d06a23f9db8c8111684f34067..09db51882459209d54c70d89eee5b9447c8d26a8 100644
--- a/storage/xtradb/buf/buf0buf.cc
+++ b/storage/xtradb/buf/buf0buf.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -950,24 +950,25 @@ buf_page_is_corrupted(
 	the first page of each file of the system tablespace.
 	Ignore it for the system tablespace. */
 	if (!checksum_field1 && !checksum_field2) {
-		ulint i = 0;
-		do {
-			if (read_buf[i]) {
-				return true;
+		/* Checksum fields can have valid value as zero.
+		If the page is not empty then do the checksum
+		calculation for the page. */
+		bool all_zeroes = true;
+		for (size_t i = 0; i < srv_page_size; i++) {
+			if (i == FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION
+			    && (!space || space->id)) {
+				i += 8;
 			}
-		} while (++i < FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION);
 
-		if (!space || !space->id) {
-			/* Skip FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION
-			in the system tablespace. */
-			i += 8;
-		}
-		do {
 			if (read_buf[i]) {
-				return true;
+				all_zeroes = false;
+				break;
 			}
-		} while (++i < srv_page_size);
-		return false;
+		}
+
+		if (all_zeroes) {
+			return false;
+		}
 	}
 
 	switch (curr_algo) {
@@ -1699,7 +1700,7 @@ buf_pool_init_instance(
 
 		buf_pool->zip_hash = hash_create(2 * buf_pool->curr_size);
 
-		buf_pool->last_printout_time = ut_time();
+		buf_pool->last_printout_time = time(NULL);
 	}
 	/* 2. Initialize flushing fields
 	-------------------------------- */
@@ -2484,10 +2485,6 @@ buf_page_get_zip(
 	ibool		discard_attempted = FALSE;
 	ibool		must_read;
 	trx_t*		trx = NULL;
-	ulint		sec;
-	ulint		ms;
-	ib_uint64_t	start_time;
-	ib_uint64_t	finish_time;
 	buf_pool_t*	buf_pool = buf_pool_get(space, offset);
 
 	if (UNIV_UNLIKELY(innobase_get_slow_log())) {
@@ -2606,14 +2603,10 @@ buf_page_get_zip(
 	if (must_read) {
 		/* Let us wait until the read operation
 		completes */
-
-		if (UNIV_UNLIKELY(trx && trx->take_stats))
-		{
-			ut_usectime(&sec, &ms);
-			start_time = (ib_uint64_t)sec * 1000000 + ms;
-		} else {
-			start_time = 0;
-		}
+		const ulonglong start_time = UNIV_UNLIKELY(trx
+							   && trx->take_stats)
+			? my_interval_timer()
+			: 0;
 		for (;;) {
 			enum buf_io_fix	io_fix;
 
@@ -2628,11 +2621,9 @@ buf_page_get_zip(
 				break;
 			}
 		}
-		if (UNIV_UNLIKELY(start_time != 0))
-		{
-			ut_usectime(&sec, &ms);
-			finish_time = (ib_uint64_t)sec * 1000000 + ms;
-			trx->io_reads_wait_timer += (ulint)(finish_time - start_time);
+		if (UNIV_UNLIKELY(start_time != 0)) {
+			trx->io_reads_wait_timer += ulint(
+				(my_interval_timer() - start_time) / 1000);
 		}
 	}
 
@@ -3012,21 +3003,13 @@ buf_wait_for_read(buf_block_t* block, trx_t* trx)
 
 	if (buf_block_get_io_fix_unlocked(block) == BUF_IO_READ) {
 
-		ib_uint64_t	start_time;
-		ulint		sec;
-		ulint		ms;
-
 		/* Wait until the read operation completes */
 
 		ib_mutex_t*	mutex = buf_page_get_mutex(&block->page);
-
-		if (UNIV_UNLIKELY(trx && trx->take_stats))
-		{
-			ut_usectime(&sec, &ms);
-			start_time = (ib_uint64_t)sec * 1000000 + ms;
-		} else {
-			start_time = 0;
-		}
+		const ulonglong start_time = UNIV_UNLIKELY(trx
+							   && trx->take_stats)
+			? my_interval_timer()
+			: 0;
 
 		for (;;) {
 			buf_io_fix	io_fix;
@@ -3046,15 +3029,10 @@ buf_wait_for_read(buf_block_t* block, trx_t* trx)
 			}
 		}
 
-		if (UNIV_UNLIKELY(start_time != 0))
-		{
-			ut_usectime(&sec, &ms);
-			ib_uint64_t finish_time
-				= (ib_uint64_t)sec * 1000000 + ms;
-			trx->io_reads_wait_timer
-				+= (ulint)(finish_time - start_time);
+		if (UNIV_UNLIKELY(start_time != 0)) {
+			trx->io_reads_wait_timer += ulint(
+				(my_interval_timer() - start_time) / 1000);
 		}
-
 	}
 }
 
@@ -6222,7 +6200,7 @@ buf_refresh_io_stats(
 /*=================*/
 	buf_pool_t*	buf_pool)	/*!< in: buffer pool instance */
 {
-	buf_pool->last_printout_time = ut_time();
+	buf_pool->last_printout_time = time(NULL);
 	buf_pool->old_stat = buf_pool->stat;
 }
 
diff --git a/storage/xtradb/buf/buf0checksum.cc b/storage/xtradb/buf/buf0checksum.cc
index 01b646a78e0613d412d2a83e9509187f2b70de71..dfc672f99071049b6d091efbfc0c37a2ba59c2b3 100644
--- a/storage/xtradb/buf/buf0checksum.cc
+++ b/storage/xtradb/buf/buf0checksum.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/buf/buf0dblwr.cc b/storage/xtradb/buf/buf0dblwr.cc
index 245ec68593ab4ca465cc283a361892d7ef67d125..6e0c6fb612ed0b2bd7a917a23e617b542b95d9f7 100644
--- a/storage/xtradb/buf/buf0dblwr.cc
+++ b/storage/xtradb/buf/buf0dblwr.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -612,20 +612,13 @@ buf_dblwr_process()
 
 		ulint decomp = fil_page_decompress(buf, page);
 		if (!decomp || (decomp != srv_page_size && zip_size)) {
-			goto bad_doublewrite;
+			continue;
 		}
 
 		if (expect_encrypted && mach_read_from_4(
 			    page + FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION)
 		    ? !fil_space_verify_crypt_checksum(page, zip_size)
 		    : buf_page_is_corrupted(true, page, zip_size, space())) {
-			if (!is_all_zero) {
-bad_doublewrite:
-				ib_logf(IB_LOG_LEVEL_WARN,
-					"A doublewrite copy of page "
-					ULINTPF ":" ULINTPF " is corrupted.",
-					space_id, page_no);
-			}
 			/* Theoretically we could have another good
 			copy for this page in the doublewrite
 			buffer. If not, we will report a fatal error
diff --git a/storage/xtradb/buf/buf0dump.cc b/storage/xtradb/buf/buf0dump.cc
index f73bf3bdc585e29d0c4c5b2b608c1322ade37980..349e7d45ab85306b26d495e951028a2ec867f2ec 100644
--- a/storage/xtradb/buf/buf0dump.cc
+++ b/storage/xtradb/buf/buf0dump.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/buf/buf0flu.cc b/storage/xtradb/buf/buf0flu.cc
index de59bbcd4c0b1a017f906299cfcc08112438bb7c..96ab72a263675e12da18265d13a9326ad8d8de23 100644
--- a/storage/xtradb/buf/buf0flu.cc
+++ b/storage/xtradb/buf/buf0flu.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/buf/buf0lru.cc b/storage/xtradb/buf/buf0lru.cc
index d71ba56fb372a918c0c2d646ef7d1ccc7f8ef7d6..13bf5e79f2dc5b59f64ca6ff35d59abc8134d930 100644
--- a/storage/xtradb/buf/buf0lru.cc
+++ b/storage/xtradb/buf/buf0lru.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2408,8 +2408,8 @@ buf_LRU_old_ratio_update_instance(
 	buf_pool_t*	buf_pool,/*!< in: buffer pool instance */
 	uint		old_pct,/*!< in: Reserve this percentage of
 				the buffer pool for "old" blocks. */
-	ibool		adjust)	/*!< in: TRUE=adjust the LRU list;
-				FALSE=just assign buf_pool->LRU_old_ratio
+	bool		adjust)	/*!< in: true=adjust the LRU list;
+				false=just assign buf_pool->LRU_old_ratio
 				during the initialization of InnoDB */
 {
 	uint	ratio;
@@ -2447,17 +2447,17 @@ buf_LRU_old_ratio_update_instance(
 Updates buf_pool->LRU_old_ratio.
 @return	updated old_pct */
 UNIV_INTERN
-ulint
+uint
 buf_LRU_old_ratio_update(
 /*=====================*/
 	uint	old_pct,/*!< in: Reserve this percentage of
 			the buffer pool for "old" blocks. */
-	ibool	adjust)	/*!< in: TRUE=adjust the LRU list;
-			FALSE=just assign buf_pool->LRU_old_ratio
+	bool	adjust)	/*!< in: true=adjust the LRU list;
+			false=just assign buf_pool->LRU_old_ratio
 			during the initialization of InnoDB */
 {
 	ulint	i;
-	ulint	new_ratio = 0;
+	uint	new_ratio = 0;
 
 	for (i = 0; i < srv_buf_pool_instances; i++) {
 		buf_pool_t*	buf_pool;
diff --git a/storage/xtradb/buf/buf0mtflu.cc b/storage/xtradb/buf/buf0mtflu.cc
index f90b1e46c1ec45845c7e59390405f9ece1a1cb7d..9cf102fff4b836a1d8581382ac1c83abe63ea7a4 100644
--- a/storage/xtradb/buf/buf0mtflu.cc
+++ b/storage/xtradb/buf/buf0mtflu.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/buf/buf0rea.cc b/storage/xtradb/buf/buf0rea.cc
index 43e678ed7d492a1336ac273a01134c36231ec272..1ef9162cab931fe292a4383483fb6580ea39ea40 100644
--- a/storage/xtradb/buf/buf0rea.cc
+++ b/storage/xtradb/buf/buf0rea.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/data/data0data.cc b/storage/xtradb/data/data0data.cc
index cda27de173670b75950eb170145831f8dc7c65e7..6c01176bfdd62c16c11809dd92834ff435204b71 100644
--- a/storage/xtradb/data/data0data.cc
+++ b/storage/xtradb/data/data0data.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/data/data0type.cc b/storage/xtradb/data/data0type.cc
index 34ca399f9b2ad99583f22b7a2c8f6b7cadd0c0cc..715649f471e66a06dd56c547c1d3cfebb0a30ea0 100644
--- a/storage/xtradb/data/data0type.cc
+++ b/storage/xtradb/data/data0type.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/dict/dict0boot.cc b/storage/xtradb/dict/dict0boot.cc
index 9731211ff5f1a74a8319d8fb365822ef96653e2c..c5ee27ff0026c3ef5b591c9753749326c17f5711 100644
--- a/storage/xtradb/dict/dict0boot.cc
+++ b/storage/xtradb/dict/dict0boot.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/dict/dict0crea.cc b/storage/xtradb/dict/dict0crea.cc
index 639785bf84a38b00f8daf3aee7a2461f2f4b82aa..3ca2f00a74eb3191fbc28bb1ed4d16377d1cd67f 100644
--- a/storage/xtradb/dict/dict0crea.cc
+++ b/storage/xtradb/dict/dict0crea.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/dict/dict0dict.cc b/storage/xtradb/dict/dict0dict.cc
index 344f58decd09485296ad4c49d0b5f15e8f78da60..73d255f7adc35284a09eb512c4ecda0611a0b324 100644
--- a/storage/xtradb/dict/dict0dict.cc
+++ b/storage/xtradb/dict/dict0dict.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/dict/dict0load.cc b/storage/xtradb/dict/dict0load.cc
index fb14a9058a5001d5cf0084b6766967d2e7534330..ae89ed79b763888a7f470eedcac06119f8fed403 100644
--- a/storage/xtradb/dict/dict0load.cc
+++ b/storage/xtradb/dict/dict0load.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/dict/dict0mem.cc b/storage/xtradb/dict/dict0mem.cc
index 7c8a09bd00a07e14f2ff8bf62fcd43c00d7e91d1..f4bbc5c8f06103106e13ada32c2b3a8b51d356be 100644
--- a/storage/xtradb/dict/dict0mem.cc
+++ b/storage/xtradb/dict/dict0mem.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -751,7 +751,7 @@ void
 dict_mem_init(void)
 {
 	/* Initialize a randomly distributed temporary file number */
-	ib_uint32_t now = static_cast(ut_time());
+	ib_uint32_t now = static_cast(time(NULL));
 
 	const byte* buf = reinterpret_cast(&now);
 	ut_ad(ut_crc32 != NULL);
diff --git a/storage/xtradb/dict/dict0stats.cc b/storage/xtradb/dict/dict0stats.cc
index 063646891731e222d030cbacc0cf33d0ed8d0254..59c661514f512963190bfb3eb8455f9e1b011490 100644
--- a/storage/xtradb/dict/dict0stats.cc
+++ b/storage/xtradb/dict/dict0stats.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -45,7 +45,7 @@ Created Jan 06, 2010 Vasil Dimov
 #include "trx0trx.h" /* trx_create() */
 #include "trx0roll.h" /* trx_rollback_to_savepoint() */
 #include "ut0rnd.h" /* ut_rnd_interval() */
-#include "ut0ut.h" /* ut_format_name(), ut_time() */
+#include "ut0ut.h" /* ut_format_name() */
 
 #include 
 #include 
@@ -1000,7 +1000,7 @@ dict_stats_update_transient(
 	table->stat_sum_of_other_index_sizes = sum_of_index_sizes
 		- index->stat_index_size;
 
-	table->stats_last_recalc = ut_time();
+	table->stats_last_recalc = time(NULL);
 
 	table->stat_modified_counter = 0;
 
@@ -2325,7 +2325,7 @@ dict_stats_update_persistent(
 			+= index->stat_index_size;
 	}
 
-	table->stats_last_recalc = ut_time();
+	table->stats_last_recalc = time(NULL);
 
 	table->stat_modified_counter = 0;
 
@@ -2535,7 +2535,7 @@ dict_stats_save(
 	/* MySQL's timestamp is 4 byte, so we use
 	pars_info_add_int4_literal() which takes a lint arg, so "now" is
 	lint */
-	now = (lint) ut_time();
+	now = (lint) time(NULL);
 
 	pinfo = pars_info_create();
 
@@ -3980,7 +3980,7 @@ dict_stats_save_defrag_summary(
 	dict_index_t*	index)	/*!< in: index */
 {
 	dberr_t	ret;
-	lint	now = (lint) ut_time();
+	lint	now = (lint) time(NULL);
 	if (dict_index_is_univ(index)) {
 		return DB_SUCCESS;
 	}
@@ -4017,7 +4017,7 @@ dict_stats_save_defrag_stats(
 		return DB_SUCCESS;
 	}
 
-	lint	now = (lint) ut_time();
+	lint	now = (lint) time(NULL);
 	mtr_t	mtr;
 	ulint	n_leaf_pages;
 	ulint	n_leaf_reserved;
diff --git a/storage/xtradb/dict/dict0stats_bg.cc b/storage/xtradb/dict/dict0stats_bg.cc
index 9394ca2830d9925c455c1b9d43a35c94548fc251..b4923364cac7888b22bb7e26fffcd5c56a45ef75 100644
--- a/storage/xtradb/dict/dict0stats_bg.cc
+++ b/storage/xtradb/dict/dict0stats_bg.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -437,14 +437,14 @@ dict_stats_process_entry_from_recalc_pool()
 
 	mutex_exit(&dict_sys->mutex);
 
-	/* ut_time() could be expensive, the current function
+	/* time() could be expensive, the current function
 	is called once every time a table has been changed more than 10% and
 	on a system with lots of small tables, this could become hot. If we
 	find out that this is a problem, then the check below could eventually
 	be replaced with something else, though a time interval is the natural
 	approach. */
 
-	if (ut_difftime(ut_time(), table->stats_last_recalc)
+	if (difftime(time(NULL), table->stats_last_recalc)
 	    < MIN_RECALC_INTERVAL) {
 
 		/* Stats were (re)calculated not long ago. To avoid
diff --git a/storage/xtradb/dyn/dyn0dyn.cc b/storage/xtradb/dyn/dyn0dyn.cc
index dd1f6863c145eaf8b8b3e2a5988bfd16e041e773..8302de53eb92ebc0e85e3d05ba22d6e70df97d34 100644
--- a/storage/xtradb/dyn/dyn0dyn.cc
+++ b/storage/xtradb/dyn/dyn0dyn.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/eval/eval0eval.cc b/storage/xtradb/eval/eval0eval.cc
index ccc547811029b794f5f32b3a9ea02f8122b1deab..d62febd466d918bd7395875b11e3590e9f3bf9a0 100644
--- a/storage/xtradb/eval/eval0eval.cc
+++ b/storage/xtradb/eval/eval0eval.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1997, 2011, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -858,7 +859,7 @@ eval_predefined(
 			       dfield_get_data(que_node_get_val(arg1)));
 
 	} else if (func == PARS_SYSDATE_TOKEN) {
-		int_val = (lint) ut_time();
+		int_val = (lint) time(NULL);
 	} else {
 		eval_predefined_2(func_node);
 
diff --git a/storage/xtradb/eval/eval0proc.cc b/storage/xtradb/eval/eval0proc.cc
index e6f3a32cd483f458dedde09180e6b0373b1ec5ea..7adfe1e63899b6bb71d38139ba3cdb6088fe35c5 100644
--- a/storage/xtradb/eval/eval0proc.cc
+++ b/storage/xtradb/eval/eval0proc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fil/fil0crypt.cc b/storage/xtradb/fil/fil0crypt.cc
index 296096e44d0101e9d1e8f22bf7dff8d614a6a496..43a3bd8ff296f1c41fec08de5e8072f24dece4a8 100644
--- a/storage/xtradb/fil/fil0crypt.cc
+++ b/storage/xtradb/fil/fil0crypt.cc
@@ -1,6 +1,6 @@
 /*****************************************************************************
 Copyright (C) 2013, 2015, Google Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation. All Rights Reserved.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
@@ -1698,19 +1698,18 @@ fil_crypt_get_page_throttle_func(
 
 	state->crypt_stat.pages_read_from_disk++;
 
-	ullint start = ut_time_us(NULL);
+	const ulonglong start = my_interval_timer();
 	block = buf_page_get_gen(space->id, zip_size, offset,
 				 RW_X_LATCH,
 				 NULL, BUF_GET_POSSIBLY_FREED,
 				 file, line, mtr);
-	ullint end = ut_time_us(NULL);
-
-	if (end < start) {
-		end = start; // safety...
-	}
+	const ulonglong end = my_interval_timer();
 
 	state->cnt_waited++;
-	state->sum_waited_us += (end - start);
+
+	if (end > start) {
+		state->sum_waited_us += (end - start) / 1000;
+	}
 
 	/* average page load */
 	ulint add_sleeptime_ms = 0;
@@ -2032,7 +2031,7 @@ fil_crypt_flush_space(
 		bool success = false;
 		ulint n_pages = 0;
 		ulint sum_pages = 0;
-		ullint start = ut_time_us(NULL);
+		const ulonglong start = my_interval_timer();
 
 		do {
 			success = buf_flush_list(ULINT_MAX, end_lsn, &n_pages);
@@ -2040,11 +2039,11 @@ fil_crypt_flush_space(
 			sum_pages += n_pages;
 		} while (!success && !space->is_stopping());
 
-		ullint end = ut_time_us(NULL);
+		const ulonglong end = my_interval_timer();
 
 		if (sum_pages && end > start) {
 			state->cnt_waited += sum_pages;
-			state->sum_waited_us += (end - start);
+			state->sum_waited_us += (end - start) / 1000;
 
 			/* statistics */
 			state->crypt_stat.pages_flushed += sum_pages;
diff --git a/storage/xtradb/fil/fil0fil.cc b/storage/xtradb/fil/fil0fil.cc
index 01ebd98929f19044c7102e2507c36a570b1ef81d..766e9d91cfba3843aea588830a7eb6a2c66540a8 100644
--- a/storage/xtradb/fil/fil0fil.cc
+++ b/storage/xtradb/fil/fil0fil.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2819,6 +2819,29 @@ fil_close_tablespace(
 	return(err);
 }
 
+/** Determine whether a table can be accessed in operations that are
+not (necessarily) protected by meta-data locks.
+(Rollback would generally be protected, but rollback of
+FOREIGN KEY CASCADE/SET NULL is not protected by meta-data locks
+but only by InnoDB table locks, which may be broken by
+lock_remove_all_on_table().)
+@param[in]	table	persistent table
+checked @return whether the table is accessible */
+UNIV_INTERN bool fil_table_accessible(const dict_table_t* table)
+{
+	if (UNIV_UNLIKELY(!table->is_readable() || table->corrupted)) {
+		return(false);
+	}
+
+	if (fil_space_t* space = fil_space_acquire(table->space)) {
+		bool accessible = !space->is_stopping();
+		fil_space_release(space);
+		return(accessible);
+	} else {
+		return(false);
+	}
+}
+
 /** Delete a tablespace and associated .ibd file.
 @param[in]	id		tablespace identifier
 @param[in]	drop_ahi	whether to drop the adaptive hash index
@@ -3239,8 +3262,13 @@ fil_rename_tablespace(
 		space, node, new_name, new_path);
 
 	if (success) {
+		DBUG_EXECUTE_IF("fil_rename_tablespace_failure_2",
+				goto skip_second_rename; );
 		success = os_file_rename(
 			innodb_file_data_key, old_path, new_path);
+		DBUG_EXECUTE_IF("fil_rename_tablespace_failure_2",
+skip_second_rename:
+				success = FALSE; );
 
 		if (!success) {
 			/* We have to revert the changes we made
@@ -5100,7 +5128,7 @@ fil_load_single_table_tablespaces(ibool (*pred)(const char*, const char*))
 	ulint		dbpath_len	= 100;
         ulint 		files_read	= 0;
         ulint 		files_read_at_last_check	= 0;
-        ib_time_t 	prev_report_time = ut_time();
+	time_t		prev_report_time = time(NULL);
 	os_file_dir_t	dir;
 	os_file_dir_t	dbdir;
 	os_file_stat_t	dbinfo;
@@ -5200,11 +5228,10 @@ fil_load_single_table_tablespaces(ibool (*pred)(const char*, const char*))
 					files_read++;
 					if (files_read - files_read_at_last_check >
 					    CHECK_TIME_EVERY_N_FILES) {
-						ib_time_t cur_time= ut_time();
+						time_t cur_time= time(NULL);
 						files_read_at_last_check= files_read;
-						double time_elapsed= ut_difftime(cur_time, 
-						                                 prev_report_time);
-						if (time_elapsed > 15) {
+						if (cur_time - prev_report_time
+						    > 15) {
 							ib_logf(IB_LOG_LEVEL_INFO, 
 								"Processed %ld .ibd/.isl files",
 								files_read);
diff --git a/storage/xtradb/fil/fil0pagecompress.cc b/storage/xtradb/fil/fil0pagecompress.cc
index 101f8fb0f31f34ac9286396181e9ed0a5f45b526..edc1fa913e73345fb56dab20d735565e4e392d92 100644
--- a/storage/xtradb/fil/fil0pagecompress.cc
+++ b/storage/xtradb/fil/fil0pagecompress.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fsp/fsp0fsp.cc b/storage/xtradb/fsp/fsp0fsp.cc
index f97e0c1331b74e1fc49b26d1beea4deb2014ee06..fc2e192a3b193f9634ff54876090662a14d16825 100644
--- a/storage/xtradb/fsp/fsp0fsp.cc
+++ b/storage/xtradb/fsp/fsp0fsp.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fts/fts0ast.cc b/storage/xtradb/fts/fts0ast.cc
index 4b36152cf62ae96a600bec5e67c59bf8c515c728..c69eabc0ff8e148103f4a274e4410b92a0118642 100644
--- a/storage/xtradb/fts/fts0ast.cc
+++ b/storage/xtradb/fts/fts0ast.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fts/fts0blex.cc b/storage/xtradb/fts/fts0blex.cc
index 84811050e887d2aaf85a7e25e12a07d4beb44742..508069a328f53df4ccd87d9362ec5c1876acb19b 100644
--- a/storage/xtradb/fts/fts0blex.cc
+++ b/storage/xtradb/fts/fts0blex.cc
@@ -653,7 +653,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**
diff --git a/storage/xtradb/fts/fts0blex.l b/storage/xtradb/fts/fts0blex.l
index ae6e8ffaa48ba74b446e5dda0b8b1195573803a2..0d1788f89f052335ea8d9516e7ec191eea0a741b 100644
--- a/storage/xtradb/fts/fts0blex.l
+++ b/storage/xtradb/fts/fts0blex.l
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fts/fts0config.cc b/storage/xtradb/fts/fts0config.cc
index 5b4ae5c39f7f9a8be71c5db915e5e436d7f69bf7..940c944a436cb7702f73d3ab6dc25df30f0ef6d8 100644
--- a/storage/xtradb/fts/fts0config.cc
+++ b/storage/xtradb/fts/fts0config.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -85,6 +86,7 @@ fts_config_get_value(
 	que_t*		graph;
 	dberr_t		error;
 	ulint		name_len = strlen(name);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -100,12 +102,14 @@ fts_config_get_value(
 	pars_info_bind_varchar_literal(info, "name", (byte*) name, name_len);
 
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $table_name"
 		" WHERE key = :name;\n"
 		"BEGIN\n"
 		""
@@ -212,6 +216,7 @@ fts_config_set_value(
 	undo_no_t	undo_no;
 	undo_no_t	n_rows_updated;
 	ulint		name_len = strlen(name);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -219,11 +224,17 @@ fts_config_set_value(
 	pars_info_bind_varchar_literal(info, "value",
 				       value->f_str, value->f_len);
 
+	const bool dict_locked = fts_table->table->fts->fts_status
+		& TABLE_DICT_LOCKED;
+
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name, dict_locked);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table, info,
-		"BEGIN UPDATE \"%s\" SET value = :value WHERE key = :name;");
+		"BEGIN UPDATE $table_name SET value = :value "
+		"WHERE key = :name;");
 
 	trx->op_info = "setting FTS config value";
 
@@ -245,10 +256,13 @@ fts_config_set_value(
 		pars_info_bind_varchar_literal(
 			info, "value", value->f_str, value->f_len);
 
+		fts_get_table_name(fts_table, table_name, dict_locked);
+		pars_info_bind_id(info, true, "table_name", table_name);
+
 		graph = fts_parse_sql(
 			fts_table, info,
 			"BEGIN\n"
-			"INSERT INTO \"%s\" VALUES(:name, :value);");
+			"INSERT INTO $table_name VALUES(:name, :value);");
 
 		trx->op_info = "inserting FTS config value";
 
@@ -465,6 +479,7 @@ fts_config_increment_value(
 	que_t*		graph = NULL;
 	ulint		name_len = strlen(name);
 	pars_info_t*	info = pars_info_create();
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	/* We set the length of value to the max bytes it can hold. This
 	information is used by the callback that reads the value.*/
@@ -479,11 +494,13 @@ fts_config_increment_value(
 		info, "my_func", fts_config_fetch_value, &value);
 
 	fts_table->suffix = "CONFIG";
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "config_table", table_name);
 
 	graph = fts_parse_sql(
 		fts_table, info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $config_table"
 		" WHERE key = :name FOR UPDATE;\n"
 		"BEGIN\n"
 		""
diff --git a/storage/xtradb/fts/fts0fts.cc b/storage/xtradb/fts/fts0fts.cc
index 1ea3a8d2c6002ef3aae9463d05cf319a61a25cde..264c520bb1ee13de1db75610188f151222527d37 100644
--- a/storage/xtradb/fts/fts0fts.cc
+++ b/storage/xtradb/fts/fts0fts.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -77,8 +77,8 @@ UNIV_INTERN ulong	fts_min_token_size;
 
 
 // FIXME: testing
-ib_time_t elapsed_time = 0;
-ulint n_nodes = 0;
+static time_t elapsed_time;
+static ulint n_nodes;
 
 /** Error condition reported by fts_utf8_decode() */
 const ulint UTF8_ERROR = 0xFFFFFFFF;
@@ -107,11 +107,6 @@ UNIV_INTERN mysql_pfs_key_t	fts_doc_id_mutex_key;
 UNIV_INTERN mysql_pfs_key_t	fts_pll_tokenize_mutex_key;
 #endif /* UNIV_PFS_MUTEX */
 
-/** variable to record innodb_fts_internal_tbl_name for information
-schema table INNODB_FTS_INSERTED etc. */
-UNIV_INTERN char* fts_internal_tbl_name		= NULL;
-UNIV_INTERN char* fts_internal_tbl_name2	= NULL;
-
 /** InnoDB default stopword list:
 There are different versions of stopwords, the stop words listed
 below comes from "Google Stopword" list. Reference:
@@ -167,38 +162,39 @@ struct fts_aux_table_t {
 	char*		name;		/*!< Name of the table */
 };
 
-/** SQL statements for creating the ancillary common FTS tables. */
+/** SQL statements for creating the ancillary common FTS tables.
+The table name here shall be consistent with fts_common_tables. */
 static const char* fts_create_common_tables_sql = {
 	"BEGIN\n"
 	""
-	"CREATE TABLE \"%s_DELETED\" (\n"
+	"CREATE TABLE $DELETED (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_DELETED\"(doc_id);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $DELETED (doc_id);\n"
 	""
-	"CREATE TABLE \"%s_DELETED_CACHE\" (\n"
+	"CREATE TABLE $DELETED_CACHE (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_DELETED_CACHE\"(doc_id);\n"
+		"ON $DELETED_CACHE(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_BEING_DELETED\" (\n"
+	"CREATE TABLE $BEING_DELETED (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_BEING_DELETED\"(doc_id);\n"
+		"ON $BEING_DELETED(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_BEING_DELETED_CACHE\" (\n"
+	"CREATE TABLE $BEING_DELETED_CACHE (\n"
 	"  doc_id BIGINT UNSIGNED\n"
 	") COMPACT;\n"
 	"CREATE UNIQUE CLUSTERED INDEX IND "
-		"ON \"%s_BEING_DELETED_CACHE\"(doc_id);\n"
+		"ON $BEING_DELETED_CACHE(doc_id);\n"
 	""
-	"CREATE TABLE \"%s_CONFIG\" (\n"
+	"CREATE TABLE $CONFIG (\n"
 	"  key CHAR(50),\n"
 	"  value CHAR(200) NOT NULL\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_CONFIG\"(key);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $CONFIG(key);\n"
 };
 
 #ifdef FTS_DOC_STATS_DEBUG
@@ -207,11 +203,11 @@ mainly designed for the statistics work in the future */
 static const char* fts_create_index_tables_sql = {
 	"BEGIN\n"
 	""
-	"CREATE TABLE \"%s_DOC_ID\" (\n"
+	"CREATE TABLE $doc_id_table (\n"
 	"   doc_id BIGINT UNSIGNED,\n"
 	"   word_count INTEGER UNSIGNED NOT NULL\n"
 	") COMPACT;\n"
-	"CREATE UNIQUE CLUSTERED INDEX IND ON \"%s_DOC_ID\"(doc_id);\n"
+	"CREATE UNIQUE CLUSTERED INDEX IND ON $doc_id_table(doc_id);\n"
 };
 #endif
 
@@ -220,11 +216,11 @@ static const char* fts_create_index_sql = {
 	"BEGIN\n"
 	""
 	"CREATE UNIQUE CLUSTERED INDEX FTS_INDEX_TABLE_IND "
-		"ON \"%s\"(word, first_doc_id);\n"
+		"ON $table (word, first_doc_id);\n"
 };
 
 /** FTS auxiliary table suffixes that are common to all FT indexes. */
-static const char* fts_common_tables[] = {
+const char* fts_common_tables[] = {
 	"BEING_DELETED",
 	"BEING_DELETED_CACHE",
 	"CONFIG",
@@ -248,19 +244,19 @@ const  fts_index_selector_t fts_index_selector[] = {
 static const char* fts_config_table_insert_values_sql =
 	"BEGIN\n"
 	"\n"
-	"INSERT INTO \"%s\" VALUES('"
+	"INSERT INTO $config_table VALUES('"
 		FTS_MAX_CACHE_SIZE_IN_MB "', '256');\n"
 	""
-	"INSERT INTO \"%s\" VALUES('"
+	"INSERT INTO $config_table VALUES('"
 		FTS_OPTIMIZE_LIMIT_IN_SECS  "', '180');\n"
 	""
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_SYNCED_DOC_ID "', '0');\n"
 	""
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_TOTAL_DELETED_COUNT "', '0');\n"
 	"" /* Note: 0 == FTS_TABLE_STATE_RUNNING */
-	"INSERT INTO \"%s\" VALUES ('"
+	"INSERT INTO $config_table VALUES ('"
 		FTS_TABLE_STATE "', '0');\n";
 
 /** Run SYNC on the table, i.e., write out data from the cache to the
@@ -334,7 +330,6 @@ dberr_t
 fts_update_sync_doc_id(
 /*===================*/
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id,		/*!< in: last document id */
 	trx_t*			trx)		/*!< in: update trx, or NULL */
 	MY_ATTRIBUTE((nonnull(1)));
@@ -1586,19 +1581,17 @@ fts_rename_aux_tables(
 
 	FTS_INIT_FTS_TABLE(&fts_table, NULL, FTS_COMMON_TABLE, table);
 
+	dberr_t err = DB_SUCCESS;
+	char old_table_name[MAX_FULL_NAME_LEN];
+
 	/* Rename common auxiliary tables */
 	for (i = 0; fts_common_tables[i] != NULL; ++i) {
-		char*	old_table_name;
-		dberr_t	err = DB_SUCCESS;
-
 		fts_table.suffix = fts_common_tables[i];
 
-		old_table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, old_table_name, true);
 
 		err = fts_rename_one_aux_table(new_name, old_table_name, trx);
 
-		mem_free(old_table_name);
-
 		if (err != DB_SUCCESS) {
 			return(err);
 		}
@@ -1617,12 +1610,8 @@ fts_rename_aux_tables(
 		FTS_INIT_INDEX_TABLE(&fts_table, NULL, FTS_INDEX_TABLE, index);
 
 		for (ulint j = 0; fts_index_selector[j].value; ++j) {
-			dberr_t	err;
-			char*	old_table_name;
-
 			fts_table.suffix = fts_get_suffix(j);
-
-			old_table_name = fts_get_table_name(&fts_table);
+			fts_get_table_name(&fts_table, old_table_name, true);
 
 			err = fts_rename_one_aux_table(
 				new_name, old_table_name, trx);
@@ -1631,8 +1620,6 @@ fts_rename_aux_tables(
 					err = DB_DEADLOCK;
 					fts_sql_rollback(trx););
 
-			mem_free(old_table_name);
-
 			if (err != DB_SUCCESS) {
 				return(err);
 			}
@@ -1660,11 +1647,11 @@ fts_drop_common_tables(
 
 	for (i = 0; fts_common_tables[i] != NULL; ++i) {
 		dberr_t	err;
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table->suffix = fts_common_tables[i];
 
-		table_name = fts_get_table_name(fts_table);
+		fts_get_table_name(fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1672,8 +1659,6 @@ fts_drop_common_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 
 	return(error);
@@ -1699,11 +1684,11 @@ fts_drop_index_split_tables(
 
 	for (i = 0; fts_index_selector[i].value; ++i) {
 		dberr_t	err;
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table.suffix = fts_get_suffix(i);
 
-		table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1711,8 +1696,6 @@ fts_drop_index_split_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 
 	return(error);
@@ -1749,11 +1732,11 @@ fts_drop_index_tables(
 	FTS_INIT_INDEX_TABLE(&fts_table, NULL, FTS_INDEX_TABLE, index);
 
 	for (ulint i = 0; index_tables[i] != NULL; ++i) {
-		char*	table_name;
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		fts_table.suffix = index_tables[i];
 
-		table_name = fts_get_table_name(&fts_table);
+		fts_get_table_name(&fts_table, table_name, true);
 
 		err = fts_drop_table(trx, table_name);
 
@@ -1761,8 +1744,6 @@ fts_drop_index_tables(
 		if (err != DB_SUCCESS && err != DB_FAIL) {
 			error = err;
 		}
-
-		mem_free(table_name);
 	}
 #endif /* FTS_DOC_STATS_DEBUG */
 
@@ -1831,26 +1812,6 @@ fts_drop_tables(
 	return(error);
 }
 
-/*********************************************************************//**
-Prepare the SQL, so that all '%s' are replaced by the common prefix.
-@return sql string, use mem_free() to free the memory */
-static
-char*
-fts_prepare_sql(
-/*============*/
-	fts_table_t*	fts_table,	/*!< in: table name info */
-	const char*	my_template)	/*!< in: sql template */
-{
-	char*		sql;
-	char*		name_prefix;
-
-	name_prefix = fts_get_table_name_prefix(fts_table);
-	sql = ut_strreplace(my_template, "%s", name_prefix);
-	mem_free(name_prefix);
-
-	return(sql);
-}
-
 /*********************************************************************//**
 Creates the common ancillary tables needed for supporting an FTS index
 on the given table. row_mysql_lock_data_dictionary must have been called
@@ -1865,12 +1826,15 @@ fts_create_common_tables(
 	const char*	name,		/*!< in: table name normalized.*/
 	bool		skip_doc_id_index)/*!< in: Skip index on doc id */
 {
-	char*		sql;
 	dberr_t		error;
 	que_t*		graph;
 	fts_table_t	fts_table;
 	mem_heap_t*	heap = mem_heap_create(1024);
 	pars_info_t*	info;
+	char		fts_name[MAX_FULL_NAME_LEN];
+	char		full_name[sizeof(fts_common_tables) / sizeof(char*)]
+				[MAX_FULL_NAME_LEN];
+	ulint		i;
 
 	FTS_INIT_FTS_TABLE(&fts_table, NULL, FTS_COMMON_TABLE, table);
 
@@ -1882,9 +1846,19 @@ fts_create_common_tables(
 	}
 
 	/* Create the FTS tables that are common to an FTS index. */
-	sql = fts_prepare_sql(&fts_table, fts_create_common_tables_sql);
-	graph = fts_parse_sql_no_dict_lock(NULL, NULL, sql);
-	mem_free(sql);
+	info = pars_info_create();
+
+	for (i = 0; fts_common_tables[i] != NULL; ++i) {
+
+		fts_table.suffix = fts_common_tables[i];
+		fts_get_table_name(&fts_table, full_name[i], true);
+
+		pars_info_bind_id(info, true,
+				  fts_common_tables[i], full_name[i]);
+	}
+
+	graph = fts_parse_sql_no_dict_lock(NULL, info,
+					   fts_create_common_tables_sql);
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1896,9 +1870,14 @@ fts_create_common_tables(
 	}
 
 	/* Write the default settings to the config table. */
+	info = pars_info_create();
+
 	fts_table.suffix = "CONFIG";
+	fts_get_table_name(&fts_table, fts_name, true);
+	pars_info_bind_id(info, true, "config_table", fts_name);
+
 	graph = fts_parse_sql_no_dict_lock(
-		&fts_table, NULL, fts_config_table_insert_values_sql);
+		&fts_table, info, fts_config_table_insert_values_sql);
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1966,13 +1945,15 @@ fts_create_one_index_table(
 {
 	dict_field_t*		field;
 	dict_table_t*		new_table = NULL;
-	char*			table_name = fts_get_table_name(fts_table);
+	char			table_name[MAX_FULL_NAME_LEN];
 	dberr_t			error;
 	CHARSET_INFO*		charset;
 	ulint			flags2 = 0;
 
 	ut_ad(index->type & DICT_FTS);
 
+	fts_get_table_name(fts_table, table_name, true);
+
 	if (srv_file_per_table) {
 		flags2 = DICT_TF2_USE_TABLESPACE;
 	}
@@ -2016,8 +1997,6 @@ fts_create_one_index_table(
 			"Fail to create FTS index table %s", table_name);
 	}
 
-	mem_free(table_name);
-
 	return(new_table);
 }
 
@@ -2040,23 +2019,27 @@ fts_create_index_tables_low(
 	que_t*		graph;
 	fts_table_t	fts_table;
 	dberr_t		error = DB_SUCCESS;
+	pars_info_t*	info;
 	mem_heap_t*	heap = mem_heap_create(1024);
+	char		fts_name[MAX_FULL_NAME_LEN];
 
 	fts_table.type = FTS_INDEX_TABLE;
 	fts_table.index_id = index->id;
 	fts_table.table_id = table_id;
-	fts_table.parent = table_name;
 	fts_table.table = index->table;
 
 #ifdef FTS_DOC_STATS_DEBUG
-	char*		sql;
-
 	/* Create the FTS auxiliary tables that are specific
 	to an FTS index. */
-	sql = fts_prepare_sql(&fts_table, fts_create_index_tables_sql);
+	info = pars_info_create();
+
+	fts_table.suffix = "DOC_ID";
+	fts_get_table_name(&fts_table, fts_name, true);
 
-	graph = fts_parse_sql_no_dict_lock(NULL, NULL, sql);
-	mem_free(sql);
+	pars_info_bind_id(info, true, "doc_id_table", fts_name);
+
+	graph = fts_parse_sql_no_dict_lock(NULL, info,
+					   fts_create_index_tables_sql);
 
 	error = fts_eval_sql(trx, graph);
 	que_graph_free(graph);
@@ -2065,6 +2048,8 @@ fts_create_index_tables_low(
 	for (i = 0; fts_index_selector[i].value && error == DB_SUCCESS; ++i) {
 		dict_table_t*	new_table;
 
+		info = pars_info_create();
+
 		/* Create the FTS auxiliary tables that are specific
 		to an FTS index. We need to preserve the table_id %s
 		which fts_parse_sql_no_dict_lock() will fill in for us. */
@@ -2078,8 +2063,12 @@ fts_create_index_tables_low(
 			break;
 		}
 
+		fts_get_table_name(&fts_table, fts_name, true);
+
+		pars_info_bind_id(info, true, "table", fts_name);
+
 		graph = fts_parse_sql_no_dict_lock(
-			&fts_table, NULL, fts_create_index_sql);
+			&fts_table, info, fts_create_index_sql);
 
 		error = fts_eval_sql(trx, graph);
 		que_graph_free(graph);
@@ -2632,7 +2621,6 @@ fts_update_next_doc_id(
 /*===================*/
 	trx_t*			trx,		/*!< in/out: transaction */
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id)		/*!< in: DOC ID to set */
 {
 	table->fts->cache->synced_doc_id = doc_id;
@@ -2641,7 +2629,7 @@ fts_update_next_doc_id(
 	table->fts->cache->first_doc_id = table->fts->cache->next_doc_id;
 
 	fts_update_sync_doc_id(
-		table, table_name, table->fts->cache->synced_doc_id, trx);
+		table, table->fts->cache->synced_doc_id, trx);
 
 }
 
@@ -2704,6 +2692,7 @@ fts_cmp_set_sync_doc_id(
 	fts_table_t	fts_table;
 	que_t*		graph = NULL;
 	fts_cache_t*	cache = table->fts->cache;
+	char		table_name[MAX_FULL_NAME_LEN];
 retry:
 	ut_a(table->fts->doc_col != ULINT_UNDEFINED);
 
@@ -2712,8 +2701,6 @@ fts_cmp_set_sync_doc_id(
 	fts_table.type = FTS_COMMON_TABLE;
 	fts_table.table = table;
 
-	fts_table.parent = table->name;
-
 	trx = trx_allocate_for_background();
 
 	trx->op_info = "update the next FTS document id";
@@ -2723,10 +2710,13 @@ fts_cmp_set_sync_doc_id(
 	pars_info_bind_function(
 		info, "my_func", fts_fetch_store_doc_id, doc_id);
 
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "config_table", table_name);
+
 	graph = fts_parse_sql(
 		&fts_table, info,
 		"DECLARE FUNCTION my_func;\n"
-		"DECLARE CURSOR c IS SELECT value FROM \"%s\""
+		"DECLARE CURSOR c IS SELECT value FROM $config_table"
 		" WHERE key = 'synced_doc_id' FOR UPDATE;\n"
 		"BEGIN\n"
 		""
@@ -2770,7 +2760,7 @@ fts_cmp_set_sync_doc_id(
 
 	if (doc_id_cmp > *doc_id) {
 		error = fts_update_sync_doc_id(
-			table, table->name, cache->synced_doc_id, trx);
+			table, cache->synced_doc_id, trx);
 	}
 
 	*doc_id = cache->next_doc_id;
@@ -2808,7 +2798,6 @@ dberr_t
 fts_update_sync_doc_id(
 /*===================*/
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id,		/*!< in: last document id */
 	trx_t*			trx)		/*!< in: update trx, or NULL */
 {
@@ -2820,16 +2809,12 @@ fts_update_sync_doc_id(
 	dberr_t		error;
 	ibool		local_trx = FALSE;
 	fts_cache_t*	cache = table->fts->cache;
+	char		fts_name[MAX_FULL_NAME_LEN];
 
 	fts_table.suffix = "CONFIG";
 	fts_table.table_id = table->id;
 	fts_table.type = FTS_COMMON_TABLE;
 	fts_table.table = table;
-	if (table_name) {
-		fts_table.parent = table_name;
-	} else {
-		fts_table.parent = table->name;
-	}
 
 	if (!trx) {
 		trx = trx_allocate_for_background();
@@ -2845,10 +2830,14 @@ fts_update_sync_doc_id(
 
 	pars_info_bind_varchar_literal(info, "doc_id", id, id_len);
 
+	fts_get_table_name(&fts_table, fts_name,
+			   table->fts->fts_status & TABLE_DICT_LOCKED);
+	pars_info_bind_id(info, true, "table_name", fts_name);
+
 	graph = fts_parse_sql(
 		&fts_table, info,
 		"BEGIN "
-		"UPDATE \"%s\" SET value = :doc_id"
+		"UPDATE $table_name SET value = :doc_id"
 		" WHERE key = 'synced_doc_id';");
 
 	error = fts_eval_sql(trx, graph);
@@ -2895,22 +2884,6 @@ fts_doc_ids_create(void)
 	return(fts_doc_ids);
 }
 
-/*********************************************************************//**
-Free a fts_doc_ids_t. */
-
-void
-fts_doc_ids_free(
-/*=============*/
-	fts_doc_ids_t*	fts_doc_ids)
-{
-	mem_heap_t*	heap = static_cast(
-		fts_doc_ids->self_heap->arg);
-
-	memset(fts_doc_ids, 0, sizeof(*fts_doc_ids));
-
-	mem_heap_free(heap);
-}
-
 /*********************************************************************//**
 Do commit-phase steps necessary for the insertion of a new row. */
 void
@@ -2995,6 +2968,7 @@ fts_delete(
 
 	/* Note the deleted document for OPTIMIZE to purge. */
 	if (error == DB_SUCCESS) {
+		char	table_name[MAX_FULL_NAME_LEN];
 
 		trx->op_info = "adding doc id to FTS DELETED";
 
@@ -3002,10 +2976,13 @@ fts_delete(
 
 		fts_table.suffix = "DELETED";
 
+		fts_get_table_name(&fts_table, table_name);
+		pars_info_bind_id(info, true, "deleted", table_name);
+
 		graph = fts_parse_sql(
 			&fts_table,
 			info,
-			"BEGIN INSERT INTO \"%s\" VALUES (:doc_id);");
+			"BEGIN INSERT INTO $deleted VALUES (:doc_id);");
 
 		error = fts_eval_sql(trx, graph);
 
@@ -3821,14 +3798,18 @@ fts_write_node(
 	pars_info_t*	info;
 	dberr_t		error;
 	ib_uint32_t	doc_count;
-	ib_time_t	start_time;
+	time_t		start_time;
 	doc_id_t	last_doc_id;
 	doc_id_t	first_doc_id;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
 		info = pars_info_create();
+
+		fts_get_table_name(fts_table, table_name);
+		pars_info_bind_id(info, true, "index_table_name", table_name);
 	}
 
 	pars_info_bind_varchar_literal(info, "token", word->f_str, word->f_len);
@@ -3854,18 +3835,19 @@ fts_write_node(
 		DATA_BLOB, DATA_BINARY_TYPE);
 
 	if (!*graph) {
+
 		*graph = fts_parse_sql(
 			fts_table,
 			info,
 			"BEGIN\n"
-			"INSERT INTO \"%s\" VALUES "
+			"INSERT INTO $index_table_name VALUES "
 			"(:token, :first_doc_id,"
 			" :last_doc_id, :doc_count, :ilist);");
 	}
 
-	start_time = ut_time();
+	start_time = time(NULL);
 	error = fts_eval_sql(trx, *graph);
-	elapsed_time += ut_time() - start_time;
+	elapsed_time += time(NULL) - start_time;
 	++n_nodes;
 
 	return(error);
@@ -3885,6 +3867,7 @@ fts_sync_add_deleted_cache(
 	pars_info_t*	info;
 	que_t*		graph;
 	fts_table_t	fts_table;
+	char		table_name[MAX_FULL_NAME_LEN];
 	doc_id_t	dummy = 0;
 	dberr_t		error = DB_SUCCESS;
 	ulint		n_elems = ib_vector_size(doc_ids);
@@ -3900,10 +3883,13 @@ fts_sync_add_deleted_cache(
 	FTS_INIT_FTS_TABLE(
 		&fts_table, "DELETED_CACHE", FTS_COMMON_TABLE, sync->table);
 
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		&fts_table,
 		info,
-		"BEGIN INSERT INTO \"%s\" VALUES (:doc_id);");
+		"BEGIN INSERT INTO $table_name VALUES (:doc_id);");
 
 	for (i = 0; i < n_elems && error == DB_SUCCESS; ++i) {
 		fts_update_t*	update;
@@ -4080,6 +4066,7 @@ fts_sync_write_doc_stat(
 	doc_id_t	doc_id;
 	dberr_t		error = DB_SUCCESS;
 	ib_uint32_t	word_count;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	if (*graph) {
 		info = (*graph)->info;
@@ -4102,10 +4089,15 @@ fts_sync_write_doc_stat(
 		FTS_INIT_INDEX_TABLE(
 			&fts_table, "DOC_ID", FTS_INDEX_TABLE, index);
 
+		fts_get_table_name(&fts_table, table_name);
+
+		pars_info_bind_id(info, true, "doc_id_table", table_name);
+
 		*graph = fts_parse_sql(
 			&fts_table,
 			info,
-			"BEGIN INSERT INTO \"%s\" VALUES (:doc_id, :count);");
+			"BEGIN "
+			"INSERT INTO $doc_id_table VALUES (:doc_id, :count);");
 	}
 
 	for (;;) {
@@ -4227,6 +4219,7 @@ fts_is_word_in_index(
 {
 	pars_info_t*	info;
 	dberr_t		error;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "looking up word in FTS index";
 
@@ -4236,6 +4229,8 @@ fts_is_word_in_index(
 		info = pars_info_create();
 	}
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 	pars_info_bind_function(info, "my_func", fts_lookup_word, found);
 	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
 
@@ -4246,7 +4241,7 @@ fts_is_word_in_index(
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT doc_count\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word = :word "
 			" ORDER BY first_doc_id;\n"
 			"BEGIN\n"
@@ -4303,7 +4298,7 @@ fts_sync_begin(
 	n_nodes = 0;
 	elapsed_time = 0;
 
-	sync->start_time = ut_time();
+	sync->start_time = time(NULL);
 
 	sync->trx = trx_allocate_for_background();
 
@@ -4462,7 +4457,7 @@ fts_sync_commit(
 			"SYNC for table %s: SYNC time : %lu secs: "
 			"elapsed %lf ins/sec",
 			sync->table->name,
-			(ulong) (ut_time() - sync->start_time),
+			(ulong) (time(NULL) - sync->start_time),
 			(double) n_nodes/ (double) elapsed_time);
 	}
 
@@ -4995,6 +4990,7 @@ fts_get_rows_count(
 	que_t*		graph;
 	dberr_t		error;
 	ulint		count = 0;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx = trx_allocate_for_background();
 
@@ -5004,13 +5000,16 @@ fts_get_rows_count(
 
 	pars_info_bind_function(info, "my_func", fts_read_ulint, &count);
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT COUNT(*) "
-		" FROM \"%s\";\n"
+		" FROM $table_name;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -6219,7 +6218,7 @@ fts_rename_one_aux_table_to_hex_format(
 {
 	const char*     ptr;
 	fts_table_t	fts_table;
-	char*		new_name;
+	char		new_name[MAX_FULL_NAME_LEN];
 	dberr_t		error;
 
 	ptr = strchr(aux_table->name, '/');
@@ -6260,12 +6259,11 @@ fts_rename_one_aux_table_to_hex_format(
 
 	ut_a(fts_table.suffix != NULL);
 
-	fts_table.parent = parent_table->name;
 	fts_table.table_id = aux_table->parent_id;
 	fts_table.index_id = aux_table->index_id;
 	fts_table.table = parent_table;
 
-	new_name = fts_get_table_name(&fts_table);
+	fts_get_table_name(&fts_table, new_name);
 	ut_ad(strcmp(new_name, aux_table->name) != 0);
 
 	if (trx_get_dict_operation(trx) == TRX_DICT_OP_NONE) {
@@ -6286,8 +6284,6 @@ fts_rename_one_aux_table_to_hex_format(
 			aux_table->name, new_name);
 	}
 
-	mem_free(new_name);
-
 	return (error);
 }
 
diff --git a/storage/xtradb/fts/fts0opt.cc b/storage/xtradb/fts/fts0opt.cc
index 28e704eb9a5851d8deafbb6698af5e28aa501678..2f8739d3d2cd908322a64a4d0bef39f6c9a896d9 100644
--- a/storage/xtradb/fts/fts0opt.cc
+++ b/storage/xtradb/fts/fts0opt.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -43,6 +43,9 @@ Completed 2011/7/10 Sunny and Jimmy Yang
 /** The FTS optimize thread's work queue. */
 static ib_wqueue_t* fts_optimize_wq;
 
+/** The FTS vector to store fts_slot_t */
+static ib_vector_t*  fts_slots;
+
 /** Time to wait for a message. */
 static const ulint FTS_QUEUE_WAIT_IN_USECS = 5000000;
 
@@ -56,16 +59,7 @@ static bool fts_opt_start_shutdown = false;
 static const ulint FTS_WORD_NODES_INIT_SIZE = 64;
 
 /** Last time we did check whether system need a sync */
-static ib_time_t	last_check_sync_time;
-
-/** State of a table within the optimization sub system. */
-enum fts_state_t {
-	FTS_STATE_LOADED,
-	FTS_STATE_RUNNING,
-	FTS_STATE_SUSPENDED,
-	FTS_STATE_DONE,
-	FTS_STATE_EMPTY
-};
+static time_t	last_check_sync_time;
 
 /** FTS optimize thread message types. */
 enum fts_msg_type_t {
@@ -175,11 +169,11 @@ struct fts_encode_t {
 /** We use this information to determine when to start the optimize
 cycle for a table. */
 struct fts_slot_t {
-	dict_table_t*	table;		/*!< Table to optimize */
-
-	table_id_t	table_id;	/*!< Table id */
+	/** table identifier, or 0 if the slot is empty */
+	table_id_t	table_id;
 
-	fts_state_t	state;		/*!< State of this slot */
+	/** whether this slot is being processed */
+	bool		running;
 
 	ulint		added;		/*!< Number of doc ids added since the
 					last time this table was optimized */
@@ -187,12 +181,11 @@ struct fts_slot_t {
 	ulint		deleted;	/*!< Number of doc ids deleted since the
 					last time this table was optimized */
 
-	ib_time_t	last_run;	/*!< Time last run completed */
+	/** time(NULL) of completing fts_optimize_table_bk() */
+	time_t		last_run;
 
-	ib_time_t	completed;	/*!< Optimize finish time */
-
-	ib_time_t	interval_time;	/*!< Minimum time to wait before
-					optimizing the table again. */
+	/** time(NULL) of latest successful fts_optimize_table() */
+	time_t		completed;
 };
 
 /** A table remove message for the FTS optimize thread. */
@@ -229,30 +222,33 @@ UNIV_INTERN char	fts_enable_diag_print;
 /** ZLib compressed block size.*/
 static ulint FTS_ZIP_BLOCK_SIZE	= 1024;
 
-/** The amount of time optimizing in a single pass, in milliseconds. */
-static ib_time_t fts_optimize_time_limit = 0;
+/** The amount of time optimizing in a single pass, in seconds. */
+static ulint fts_optimize_time_limit;
+
+/** It's defined in fts0fts.cc  */
+extern const char* fts_common_tables[];
 
 /** SQL Statement for changing state of rows to be deleted from FTS Index. */
 static	const char* fts_init_delete_sql =
 	"BEGIN\n"
 	"\n"
-	"INSERT INTO \"%s_BEING_DELETED\"\n"
-		"SELECT doc_id FROM \"%s_DELETED\";\n"
+	"INSERT INTO $BEING_DELETED\n"
+		"SELECT doc_id FROM $DELETED;\n"
 	"\n"
-	"INSERT INTO \"%s_BEING_DELETED_CACHE\"\n"
-		"SELECT doc_id FROM \"%s_DELETED_CACHE\";\n";
+	"INSERT INTO $BEING_DELETED_CACHE\n"
+		"SELECT doc_id FROM $DELETED_CACHE;\n";
 
 static const char* fts_delete_doc_ids_sql =
 	"BEGIN\n"
 	"\n"
-	"DELETE FROM \"%s_DELETED\" WHERE doc_id = :doc_id1;\n"
-	"DELETE FROM \"%s_DELETED_CACHE\" WHERE doc_id = :doc_id2;\n";
+	"DELETE FROM $DELETED WHERE doc_id = :doc_id1;\n"
+	"DELETE FROM $DELETED_CACHE WHERE doc_id = :doc_id2;\n";
 
 static const char* fts_end_delete_sql =
 	"BEGIN\n"
 	"\n"
-	"DELETE FROM \"%s_BEING_DELETED\";\n"
-	"DELETE FROM \"%s_BEING_DELETED_CACHE\";\n";
+	"DELETE FROM $BEING_DELETED;\n"
+	"DELETE FROM $BEING_DELETED_CACHE;\n";
 
 /**********************************************************************//**
 Initialize fts_zip_t. */
@@ -483,21 +479,17 @@ fts_index_fetch_nodes(
 {
 	pars_info_t*	info;
 	dberr_t		error;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS index nodes";
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
-		info = pars_info_create();
-	}
-
-	pars_info_bind_function(info, "my_func", fetch->read_record, fetch);
-	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
-
-	if (!*graph) {
 		ulint	selected;
 
+		info = pars_info_create();
+
 		ut_a(fts_table->type == FTS_INDEX_TABLE);
 
 		selected = fts_select_index(fts_table->charset,
@@ -505,6 +497,16 @@ fts_index_fetch_nodes(
 
 		fts_table->suffix = fts_get_suffix(selected);
 
+		fts_get_table_name(fts_table, table_name);
+
+		pars_info_bind_id(info, true, "table_name", table_name);
+	}
+
+	pars_info_bind_function(info, "my_func", fetch->read_record, fetch);
+	pars_info_bind_varchar_literal(info, "word", word->f_str, word->f_len);
+
+	if (!*graph) {
+
 		*graph = fts_parse_sql(
 			fts_table,
 			info,
@@ -512,7 +514,7 @@ fts_index_fetch_nodes(
 			"DECLARE CURSOR c IS"
 			" SELECT word, doc_count, first_doc_id, last_doc_id, "
 				"ilist\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word LIKE :word\n"
 			" ORDER BY first_doc_id;\n"
 			"BEGIN\n"
@@ -812,6 +814,8 @@ fts_index_fetch_words(
 	     fts_index_selector[selected].value;
 	     selected++) {
 
+		char	table_name[MAX_FULL_NAME_LEN];
+
 		optim->fts_index_table.suffix = fts_get_suffix(selected);
 
 		/* We've search all indexes. */
@@ -827,13 +831,16 @@ fts_index_fetch_words(
 		pars_info_bind_varchar_literal(
 			info, "word", word->f_str, word->f_len);
 
+		fts_get_table_name(&optim->fts_index_table, table_name);
+		pars_info_bind_id(info, true, "table_name", table_name);
+
 		graph = fts_parse_sql(
 			&optim->fts_index_table,
 			info,
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT word\n"
-			" FROM \"%s\"\n"
+			" FROM $table_name\n"
 			" WHERE word > :word\n"
 			" ORDER BY word;\n"
 			"BEGIN\n"
@@ -975,6 +982,7 @@ fts_table_fetch_doc_ids(
 	que_t*		graph;
 	pars_info_t*	info = pars_info_create();
 	ibool		alloc_bk_trx = FALSE;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	ut_a(fts_table->suffix != NULL);
 	ut_a(fts_table->type == FTS_COMMON_TABLE);
@@ -988,12 +996,15 @@ fts_table_fetch_doc_ids(
 
 	pars_info_bind_function(info, "my_func", fts_fetch_doc_ids, doc_ids);
 
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
+
 	graph = fts_parse_sql(
 		fts_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
-		" SELECT doc_id FROM \"%s\";\n"
+		" SELECT doc_id FROM $table_name;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -1446,7 +1457,7 @@ fts_optimize_write_word(
 	que_t*		graph;
 	ulint		selected;
 	dberr_t		error = DB_SUCCESS;
-	char*		table_name = fts_get_table_name(fts_table);
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -1464,11 +1475,13 @@ fts_optimize_write_word(
 				    word->f_str, word->f_len);
 
 	fts_table->suffix = fts_get_suffix(selected);
+	fts_get_table_name(fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		fts_table,
 		info,
-		"BEGIN DELETE FROM \"%s\" WHERE word = :word;");
+		"BEGIN DELETE FROM $table_name WHERE word = :word;");
 
 	error = fts_eval_sql(trx, graph);
 
@@ -1482,8 +1495,6 @@ fts_optimize_write_word(
 	fts_que_graph_free(graph);
 	graph = NULL;
 
-	mem_free(table_name);
-
 	/* Even if the operation needs to be rolled back and redone,
 	we iterate over the nodes in order to free the ilist. */
 	for (i = 0; i < ib_vector_size(nodes); ++i) {
@@ -1541,7 +1552,7 @@ fts_optimize_compact(
 /*=================*/
 	fts_optimize_t*	optim,		/*!< in: optimize state data */
 	dict_index_t*	index,		/*!< in: current FTS being optimized */
-	ib_time_t	start_time)	/*!< in: optimize start time */
+	time_t		start_time)	/*!< in: optimize start time */
 {
 	ulint		i;
 	dberr_t		error = DB_SUCCESS;
@@ -1574,8 +1585,11 @@ fts_optimize_compact(
 		/* Free the word that was optimized. */
 		fts_word_free(word);
 
+		ulint interval = ulint(time(NULL) - start_time);
+
 		if (fts_optimize_time_limit > 0
-		    && (ut_time() - start_time) > fts_optimize_time_limit) {
+		    && (lint(interval) < 0
+			|| interval > fts_optimize_time_limit)) {
 
 			optim->done = TRUE;
 		}
@@ -1609,12 +1623,10 @@ fts_optimize_create(
 
 	optim->trx = trx_allocate_for_background();
 
-	optim->fts_common_table.parent = table->name;
 	optim->fts_common_table.table_id = table->id;
 	optim->fts_common_table.type = FTS_COMMON_TABLE;
 	optim->fts_common_table.table = table;
 
-	optim->fts_index_table.parent = table->name;
 	optim->fts_index_table.table_id = table->id;
 	optim->fts_index_table.type = FTS_INDEX_TABLE;
 	optim->fts_index_table.table = table;
@@ -1636,7 +1648,7 @@ fts_optimize_get_index_start_time(
 /*==============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t*	start_time)		/*!< out: time in secs */
+	time_t*		start_time)		/*!< out: time in secs */
 {
 	return(fts_config_get_index_ulint(
 		       trx, index, FTS_OPTIMIZE_START_TIME,
@@ -1652,7 +1664,7 @@ fts_optimize_set_index_start_time(
 /*==============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t	start_time)		/*!< in: start time */
+	time_t		start_time)		/*!< in: start time */
 {
 	return(fts_config_set_index_ulint(
 		       trx, index, FTS_OPTIMIZE_START_TIME,
@@ -1668,7 +1680,7 @@ fts_optimize_get_index_end_time(
 /*============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t*	end_time)		/*!< out: time in secs */
+	time_t*		end_time)		/*!< out: time in secs */
 {
 	return(fts_config_get_index_ulint(
 		       trx, index, FTS_OPTIMIZE_END_TIME, (ulint*) end_time));
@@ -1683,7 +1695,7 @@ fts_optimize_set_index_end_time(
 /*============================*/
 	trx_t*		trx,			/*!< in: transaction */
 	dict_index_t*	index,			/*!< in: FTS index */
-	ib_time_t	end_time)		/*!< in: end time */
+	time_t		end_time)		/*!< in: end time */
 {
 	return(fts_config_set_index_ulint(
 		       trx, index, FTS_OPTIMIZE_END_TIME, (ulint) end_time));
@@ -1735,7 +1747,7 @@ fts_optimize_free(
 	fts_doc_ids_free(optim->to_delete);
 	fts_optimize_graph_free(&optim->graph);
 
-	mem_free(optim->name_prefix);
+	ut_free(optim->name_prefix);
 
 	/* This will free the heap from which optim itself was allocated. */
 	mem_heap_free(heap);
@@ -1745,22 +1757,23 @@ fts_optimize_free(
 Get the max time optimize should run in millisecs.
 @return max optimize time limit in millisecs. */
 static
-ib_time_t
+ulint
 fts_optimize_get_time_limit(
 /*========================*/
 	trx_t*		trx,			/*!< in: transaction */
 	fts_table_t*	fts_table)		/*!< in: aux table */
 {
-	ib_time_t	time_limit = 0;
+	ulint	time_limit = 0;
 
 	fts_config_get_ulint(
 		trx, fts_table,
-		FTS_OPTIMIZE_LIMIT_IN_SECS, (ulint*) &time_limit);
+		FTS_OPTIMIZE_LIMIT_IN_SECS, &time_limit);
 
+	/* FIXME: This is returning milliseconds, while the variable
+	is being stored and interpreted as seconds! */
 	return(time_limit * 1000);
 }
 
-
 /**********************************************************************//**
 Run OPTIMIZE on the given table. Note: this can take a very long time
 (hours). */
@@ -1773,7 +1786,6 @@ fts_optimize_words(
 	fts_string_t*	word)	/*!< in: the starting word to optimize */
 {
 	fts_fetch_t	fetch;
-	ib_time_t	start_time;
 	que_t*		graph = NULL;
 	CHARSET_INFO*	charset = optim->fts_index_table.charset;
 
@@ -1783,14 +1795,12 @@ fts_optimize_words(
 	fts_optimize_time_limit = fts_optimize_get_time_limit(
 		optim->trx, &optim->fts_common_table);
 
-	start_time = ut_time();
+	const time_t start_time = time(NULL);
 
 	/* Setup the callback to use for fetching the word ilist etc. */
 	fetch.read_arg = optim->words;
 	fetch.read_record = fts_optimize_index_fetch_node;
 
-	fprintf(stderr, "%.*s\n", (int) word->f_len, word->f_str);
-
 	while(!optim->done) {
 		dberr_t	error;
 		trx_t*	trx = optim->trx;
@@ -1908,7 +1918,7 @@ fts_optimize_index_completed(
 	dberr_t		error;
 	byte		buf[sizeof(ulint)];
 #ifdef FTS_OPTIMIZE_DEBUG
-	ib_time_t	end_time = ut_time();
+	time_t		end_time = time(NULL);
 
 	error = fts_optimize_set_index_end_time(optim->trx, index, end_time);
 #endif
@@ -2075,9 +2085,10 @@ fts_optimize_purge_deleted_doc_ids(
 	pars_info_t*	info;
 	que_t*		graph;
 	fts_update_t*	update;
-	char*		sql_str;
 	doc_id_t	write_doc_id;
 	dberr_t		error = DB_SUCCESS;
+	char		deleted[MAX_FULL_NAME_LEN];
+	char		deleted_cache[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -2094,14 +2105,17 @@ fts_optimize_purge_deleted_doc_ids(
 	fts_bind_doc_id(info, "doc_id1", &write_doc_id);
 	fts_bind_doc_id(info, "doc_id2", &write_doc_id);
 
-	/* Since we only replace the table_id and don't construct the full
-	name, we do substitution ourselves. Remember to free sql_str. */
-	sql_str = ut_strreplace(
-		fts_delete_doc_ids_sql, "%s", optim->name_prefix);
+	/* Make sure the following two names are consistent with the name
+	used in the fts_delete_doc_ids_sql */
+	optim->fts_common_table.suffix = fts_common_tables[3];
+	fts_get_table_name(&optim->fts_common_table, deleted);
+	pars_info_bind_id(info, true, fts_common_tables[3], deleted);
 
-	graph = fts_parse_sql(NULL, info, sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[4];
+	fts_get_table_name(&optim->fts_common_table, deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[4], deleted_cache);
 
-	mem_free(sql_str);
+	graph = fts_parse_sql(NULL, info, fts_delete_doc_ids_sql);
 
 	/* Delete the doc ids that were copied at the start. */
 	for (i = 0; i < ib_vector_size(optim->to_delete->doc_ids); ++i) {
@@ -2142,17 +2156,26 @@ fts_optimize_purge_deleted_doc_id_snapshot(
 {
 	dberr_t		error;
 	que_t*		graph;
-	char*		sql_str;
+	pars_info_t*	info;
+	char		being_deleted[MAX_FULL_NAME_LEN];
+	char		being_deleted_cache[MAX_FULL_NAME_LEN];
 
-	/* Since we only replace the table_id and don't construct
-	the full name, we do the '%s' substitution ourselves. */
-	sql_str = ut_strreplace(fts_end_delete_sql, "%s", optim->name_prefix);
+	info = pars_info_create();
+
+	/* Make sure the following two names are consistent with the name
+	used in the fts_end_delete_sql */
+	optim->fts_common_table.suffix = fts_common_tables[0];
+	fts_get_table_name(&optim->fts_common_table, being_deleted);
+	pars_info_bind_id(info, true, fts_common_tables[0], being_deleted);
+
+	optim->fts_common_table.suffix = fts_common_tables[1];
+	fts_get_table_name(&optim->fts_common_table, being_deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[1],
+			  being_deleted_cache);
 
 	/* Delete the doc ids that were copied to delete pending state at
 	the start of optimize. */
-	graph = fts_parse_sql(NULL, NULL, sql_str);
-
-	mem_free(sql_str);
+	graph = fts_parse_sql(NULL, info, fts_end_delete_sql);
 
 	error = fts_eval_sql(optim->trx, graph);
 	fts_que_graph_free(graph);
@@ -2192,16 +2215,35 @@ fts_optimize_create_deleted_doc_id_snapshot(
 {
 	dberr_t		error;
 	que_t*		graph;
-	char*		sql_str;
+	pars_info_t*	info;
+	char		being_deleted[MAX_FULL_NAME_LEN];
+	char		deleted[MAX_FULL_NAME_LEN];
+	char		being_deleted_cache[MAX_FULL_NAME_LEN];
+	char		deleted_cache[MAX_FULL_NAME_LEN];
+
+	info = pars_info_create();
 
-	/* Since we only replace the table_id and don't construct the
-	full name, we do the substitution ourselves. */
-	sql_str = ut_strreplace(fts_init_delete_sql, "%s", optim->name_prefix);
+	/* Make sure the following four names are consistent with the name
+	used in the fts_init_delete_sql */
+	optim->fts_common_table.suffix = fts_common_tables[0];
+	fts_get_table_name(&optim->fts_common_table, being_deleted);
+	pars_info_bind_id(info, true, fts_common_tables[0], being_deleted);
 
-	/* Move doc_ids that are to be deleted to state being deleted. */
-	graph = fts_parse_sql(NULL, NULL, sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[3];
+	fts_get_table_name(&optim->fts_common_table, deleted);
+	pars_info_bind_id(info, true, fts_common_tables[3], deleted);
 
-	mem_free(sql_str);
+	optim->fts_common_table.suffix = fts_common_tables[1];
+	fts_get_table_name(&optim->fts_common_table, being_deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[1],
+			  being_deleted_cache);
+
+	optim->fts_common_table.suffix = fts_common_tables[4];
+	fts_get_table_name(&optim->fts_common_table, deleted_cache);
+	pars_info_bind_id(info, true, fts_common_tables[4], deleted_cache);
+
+	/* Move doc_ids that are to be deleted to state being deleted. */
+	graph = fts_parse_sql(NULL, info, fts_init_delete_sql);
 
 	error = fts_eval_sql(optim->trx, graph);
 
@@ -2274,8 +2316,8 @@ fts_optimize_indexes(
 		dict_index_t*	index;
 
 #ifdef	FTS_OPTIMIZE_DEBUG
-		ib_time_t	end_time;
-		ib_time_t	start_time;
+		time_t	end_time;
+		time_t	start_time;
 
 		/* Get the start and end optimize times for this index. */
 		error = fts_optimize_get_index_start_time(
@@ -2295,14 +2337,14 @@ fts_optimize_indexes(
 		/* Start time will be 0 only for the first time or after
 		completing the optimization of all FTS indexes. */
 		if (start_time == 0) {
-			start_time = ut_time();
+			start_time = time(NULL);
 
 			error = fts_optimize_set_index_start_time(
 				optim->trx, index, start_time);
 		}
 
 		/* Check if this index needs to be optimized or not. */
-		if (ut_difftime(end_time, start_time) < 0) {
+		if (difftime(end_time, start_time) < 0) {
 			error = fts_optimize_index(optim, index);
 
 			if (error != DB_SUCCESS) {
@@ -2374,7 +2416,7 @@ fts_optimize_reset_start_time(
 	for (uint i = 0; i < ib_vector_size(fts->indexes); ++i) {
 		dict_index_t*	index;
 
-		ib_time_t	start_time = 0;
+		time_t	start_time = 0;
 
 		/* Reset the start time to 0 for this index. */
 		error = fts_optimize_set_index_start_time(
@@ -2403,32 +2445,45 @@ fts_optimize_table_bk(
 /*==================*/
 	fts_slot_t*	slot)	/*!< in: table to optimiza */
 {
-	dberr_t		error;
-	dict_table_t*	table = slot->table;
-	fts_t*		fts = table->fts;
+	const time_t now = time(NULL);
+	const ulint interval = ulint(now - slot->last_run);
 
 	/* Avoid optimizing tables that were optimized recently. */
 	if (slot->last_run > 0
-	    && (ut_time() - slot->last_run) < slot->interval_time) {
+	    && lint(interval) >= 0
+	    && interval < FTS_OPTIMIZE_INTERVAL_IN_SECS) {
 
 		return(DB_SUCCESS);
+	}
+
+	dict_table_t* table = dict_table_open_on_id(
+		slot->table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
-	} else if (fts && fts->cache
-		   && fts->cache->deleted >= FTS_OPTIMIZE_THRESHOLD) {
+	if (!table) {
+		slot->last_run = now;
+		return DB_SUCCESS;
+	}
+
+	dberr_t		error;
 
+	if (fil_table_accessible(table)
+	    && table->fts && table->fts->cache
+	    && table->fts->cache->deleted >= FTS_OPTIMIZE_THRESHOLD) {
 		error = fts_optimize_table(table);
 
+		slot->last_run = time(NULL);
+
 		if (error == DB_SUCCESS) {
-			slot->state = FTS_STATE_DONE;
-			slot->last_run = 0;
-			slot->completed = ut_time();
+			slot->running = false;
+			slot->completed = slot->last_run;
 		}
 	} else {
+		/* Note time this run completed. */
+		slot->last_run = now;
 		error = DB_SUCCESS;
 	}
 
-	/* Note time this run completed. */
-	slot->last_run = ut_time();
+	dict_table_close(table, FALSE, FALSE);
 
 	return(error);
 }
@@ -2647,85 +2702,59 @@ fts_optimize_request_sync_table(
 	ib_wqueue_add(fts_optimize_wq, msg, msg->heap);
 }
 
-/**********************************************************************//**
-Add the table to the vector if it doesn't already exist. */
-static
-ibool
-fts_optimize_new_table(
-/*===================*/
-	ib_vector_t*	tables,			/*!< in/out: vector of tables */
-	dict_table_t*	table)			/*!< in: table to add */
+/** Add a table to fts_slots if it doesn't already exist. */
+static bool fts_optimize_new_table(dict_table_t* table)
 {
 	ulint		i;
 	fts_slot_t*	slot;
-	ulint		empty_slot = ULINT_UNDEFINED;
+	fts_slot_t*	empty = NULL;
+	const table_id_t table_id = table->id;
+	ut_ad(table_id);
 
 	/* Search for duplicates, also find a free slot if one exists. */
-	for (i = 0; i < ib_vector_size(tables); ++i) {
+	for (i = 0; i < ib_vector_size(fts_slots); ++i) {
 
-		slot = static_cast(
-			ib_vector_get(tables, i));
+		slot = static_cast(ib_vector_get(fts_slots, i));
 
-		if (slot->state == FTS_STATE_EMPTY) {
-			empty_slot = i;
-		} else if (slot->table->id == table->id) {
+		if (!slot->table_id) {
+			empty = slot;
+		} else if (slot->table_id == table_id) {
 			/* Already exists in our optimize queue. */
-			ut_ad(slot->table_id = table->id);
 			return(FALSE);
 		}
 	}
 
-	/* Reuse old slot. */
-	if (empty_slot != ULINT_UNDEFINED) {
-
-		slot = static_cast(
-			ib_vector_get(tables, empty_slot));
-
-		ut_a(slot->state == FTS_STATE_EMPTY);
-
-	} else { /* Create a new slot. */
-
-		slot = static_cast(ib_vector_push(tables, NULL));
-	}
+	slot = empty ? empty : static_cast(
+		ib_vector_push(fts_slots, NULL));
 
 	memset(slot, 0x0, sizeof(*slot));
 
-	slot->table = table;
 	slot->table_id = table->id;
-	slot->state = FTS_STATE_LOADED;
-	slot->interval_time = FTS_OPTIMIZE_INTERVAL_IN_SECS;
+	slot->running = false;
 
 	return(TRUE);
 }
 
-/**********************************************************************//**
-Remove the table from the vector if it exists. */
-static
-ibool
-fts_optimize_del_table(
-/*===================*/
-	ib_vector_t*	tables,			/*!< in/out: vector of tables */
-	fts_msg_del_t*	msg)			/*!< in: table to delete */
+/** Remove a table from fts_slots if it exists.
+@param[in,out]	table	table to be removed from fts_slots */
+static bool fts_optimize_del_table(const dict_table_t* table)
 {
-	ulint		i;
-	dict_table_t*	table = msg->table;
+	const table_id_t table_id = table->id;
+	ut_ad(table_id);
 
-	for (i = 0; i < ib_vector_size(tables); ++i) {
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
 		fts_slot_t*	slot;
 
-		slot = static_cast(ib_vector_get(tables, i));
+		slot = static_cast(ib_vector_get(fts_slots, i));
 
-		/* FIXME: Should we assert on this ? */
-		if (slot->state != FTS_STATE_EMPTY
-		    && slot->table->id == table->id) {
-
-			ut_print_timestamp(stderr);
-			fprintf(stderr, " InnoDB: FTS Optimize Removing "
-				"table %s\n", table->name);
-
-			slot->table = NULL;
-			slot->state = FTS_STATE_EMPTY;
+		if (slot->table_id == table_id) {
+			if (fts_enable_diag_print) {
+				ib_logf(IB_LOG_LEVEL_INFO,
+					"FTS Optimize Removing table %s",
+					table->name);
+			}
 
+			slot->table_id = 0;
 			return(TRUE);
 		}
 	}
@@ -2734,58 +2763,28 @@ fts_optimize_del_table(
 }
 
 /**********************************************************************//**
-Calculate how many of the registered tables need to be optimized.
+Calculate how many tables in fts_slots need to be optimized.
 @return no. of tables to optimize */
-static
-ulint
-fts_optimize_how_many(
-/*==================*/
-	const ib_vector_t*	tables)		/*!< in: registered tables
-						vector*/
+static ulint fts_optimize_how_many()
 {
-	ulint		i;
-	ib_time_t	delta;
-	ulint		n_tables = 0;
-	ib_time_t	current_time;
-
-	current_time = ut_time();
-
-	for (i = 0; i < ib_vector_size(tables); ++i) {
-		const fts_slot_t*	slot;
-
-		slot = static_cast(
-			ib_vector_get_const(tables, i));
-
-		switch (slot->state) {
-		case FTS_STATE_DONE:
-		case FTS_STATE_LOADED:
-			ut_a(slot->completed <= current_time);
+	ulint n_tables = 0;
+	const time_t current_time = time(NULL);
 
-			delta = current_time - slot->completed;
-
-			/* Skip slots that have been optimized recently. */
-			if (delta >= slot->interval_time) {
-				++n_tables;
-			}
-			break;
-
-		case FTS_STATE_RUNNING:
-			ut_a(slot->last_run <= current_time);
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
+		const fts_slot_t* slot = static_cast(
+			ib_vector_get_const(fts_slots, i));
+		if (slot->table_id == 0) {
+			continue;
+		}
 
-			delta = current_time - slot->last_run;
+		const time_t end = slot->running
+			? slot->last_run : slot->completed;
+		ulint interval = ulint(current_time - end);
 
-			if (delta > slot->interval_time) {
-				++n_tables;
-			}
-			break;
-
-			/* Slots in a state other than the above
-			are ignored. */
-		case FTS_STATE_EMPTY:
-		case FTS_STATE_SUSPENDED:
-			break;
+		if (lint(interval) < 0
+		    || interval >= FTS_OPTIMIZE_INTERVAL_IN_SECS) {
+			++n_tables;
 		}
-
 	}
 
 	return(n_tables);
@@ -2794,33 +2793,38 @@ fts_optimize_how_many(
 /**********************************************************************//**
 Check if the total memory used by all FTS table exceeds the maximum limit.
 @return true if a sync is needed, false otherwise */
-static
-bool
-fts_is_sync_needed(
-/*===============*/
-	const ib_vector_t*	tables)		/*!< in: registered tables
-						vector*/
+static bool fts_is_sync_needed()
 {
 	ulint		total_memory = 0;
-	double		time_diff = difftime(ut_time(), last_check_sync_time);
+	const time_t	now = time(NULL);
+	double		time_diff = difftime(now, last_check_sync_time);
 
-	if (fts_need_sync || time_diff < 5) {
+	if (fts_need_sync || (time_diff >= 0 && time_diff < 5)) {
 		return(false);
 	}
 
-	last_check_sync_time = ut_time();
+	last_check_sync_time = now;
+
+	for (ulint i = 0; i < ib_vector_size(fts_slots); ++i) {
+		const fts_slot_t* slot = static_cast(
+			ib_vector_get_const(fts_slots, i));
 
-	for (ulint i = 0; i < ib_vector_size(tables); ++i) {
-		const fts_slot_t*	slot;
+		if (slot->table_id == 0) {
+			continue;
+		}
 
-		slot = static_cast(
-			ib_vector_get_const(tables, i));
+		dict_table_t* table = dict_table_open_on_id(
+			slot->table_id, FALSE, DICT_TABLE_OP_NORMAL);
+		if (!table) {
+			continue;
+		}
 
-		if (slot->state != FTS_STATE_EMPTY && slot->table
-		    && slot->table->fts) {
-			total_memory += slot->table->fts->cache->total_size;
+		if (table->fts && table->fts->cache) {
+			total_memory += table->fts->cache->total_size;
 		}
 
+		dict_table_close(table, FALSE, FALSE);
+
 		if (total_memory > fts_max_total_cache_size) {
 			return(true);
 		}
@@ -2831,16 +2835,12 @@ fts_is_sync_needed(
 
 /** Sync fts cache of a table
 @param[in]	table_id	table id */
-void
-fts_optimize_sync_table(
-	table_id_t	table_id)
+static void fts_optimize_sync_table(table_id_t table_id)
 {
-	dict_table_t*   table = NULL;
-
-	table = dict_table_open_on_id(table_id, FALSE, DICT_TABLE_OP_NORMAL);
-
-	if (table) {
-		if (dict_table_has_fts_index(table) && table->fts->cache) {
+	if (dict_table_t* table = dict_table_open_on_id(
+		    table_id, FALSE, DICT_TABLE_OP_NORMAL)) {
+		if (fil_table_accessible(table)
+		    && table->fts && table->fts->cache) {
 			fts_sync_table(table, true, false, false);
 		}
 
@@ -2858,7 +2858,6 @@ fts_optimize_thread(
 	void*		arg)			/*!< in: work queue*/
 {
 	mem_heap_t*	heap;
-	ib_vector_t*	tables;
 	ib_alloc_t*	heap_alloc;
 	ulint		current = 0;
 	ibool		done = FALSE;
@@ -2873,7 +2872,7 @@ fts_optimize_thread(
 	heap = mem_heap_create(sizeof(dict_table_t*) * 64);
 	heap_alloc = ib_heap_allocator_create(heap);
 
-	tables = ib_vector_create(heap_alloc, sizeof(fts_slot_t), 4);
+	fts_slots = ib_vector_create(heap_alloc, sizeof(fts_slot_t), 4);
 
 	while(!done && srv_shutdown_state == SRV_SHUTDOWN_NONE) {
 
@@ -2884,28 +2883,18 @@ fts_optimize_thread(
 		    && ib_wqueue_is_empty(wq)
 		    && n_tables > 0
 		    && n_optimize > 0) {
-
-			fts_slot_t*	slot;
-
-			ut_a(ib_vector_size(tables) > 0);
-
-			slot = static_cast(
-				ib_vector_get(tables, current));
+			fts_slot_t* slot = static_cast(
+				ib_vector_get(fts_slots, current));
 
 			/* Handle the case of empty slots. */
-			if (slot->state != FTS_STATE_EMPTY) {
-
-				slot->state = FTS_STATE_RUNNING;
-
+			if (slot->table_id) {
+				slot->running = true;
 				fts_optimize_table_bk(slot);
 			}
 
-			++current;
-
 			/* Wrap around the counter. */
-			if (current >= ib_vector_size(tables)) {
-				n_optimize = fts_optimize_how_many(tables);
-
+			if (++current >= ib_vector_size(fts_slots)) {
+				n_optimize = fts_optimize_how_many();
 				current = 0;
 			}
 
@@ -2917,7 +2906,7 @@ fts_optimize_thread(
 
 			/* Timeout ? */
 			if (msg == NULL) {
-				if (fts_is_sync_needed(tables)) {
+				if (fts_is_sync_needed()) {
 					fts_need_sync = true;
 				}
 
@@ -2933,17 +2922,16 @@ fts_optimize_thread(
 			case FTS_MSG_ADD_TABLE:
 				ut_a(!done);
 				if (fts_optimize_new_table(
-					tables,
-					static_cast(
-					msg->ptr))) {
+					    static_cast(
+						    msg->ptr))) {
 					++n_tables;
 				}
 				break;
 
 			case FTS_MSG_DEL_TABLE:
 				if (fts_optimize_del_table(
-					tables, static_cast(
-						msg->ptr))) {
+					    static_cast(
+						    msg->ptr)->table)) {
 					--n_tables;
 				}
 
@@ -2967,33 +2955,25 @@ fts_optimize_thread(
 			}
 
 			mem_heap_free(msg->heap);
-
-			if (!done) {
-				n_optimize = fts_optimize_how_many(tables);
-			} else {
-				n_optimize = 0;
-			}
+			n_optimize = done ? 0 : fts_optimize_how_many();
 		}
 	}
 
 	/* Server is being shutdown, sync the data from FTS cache to disk
 	if needed */
 	if (n_tables > 0) {
-		ulint	i;
-
-		for (i = 0; i < ib_vector_size(tables); i++) {
-			fts_slot_t*	slot;
-
-			slot = static_cast(
-				ib_vector_get(tables, i));
+		for (ulint i = 0; i < ib_vector_size(fts_slots); i++) {
+			fts_slot_t* slot = static_cast(
+				ib_vector_get(fts_slots, i));
 
-			if (slot->state != FTS_STATE_EMPTY) {
-				fts_optimize_sync_table(slot->table_id);
+			if (table_id_t table_id = slot->table_id) {
+				fts_optimize_sync_table(table_id);
 			}
 		}
 	}
 
-	ib_vector_free(tables);
+	ib_vector_free(fts_slots);
+	fts_slots = NULL;
 
 	ib_logf(IB_LOG_LEVEL_INFO, "FTS optimize thread exiting.");
 
@@ -3021,7 +3001,7 @@ fts_optimize_init(void)
 
 	fts_optimize_wq = ib_wqueue_create();
 	ut_a(fts_optimize_wq != NULL);
-	last_check_sync_time = ut_time();
+	last_check_sync_time = time(NULL);
 
 	os_thread_create(fts_optimize_thread, fts_optimize_wq, NULL);
 }
diff --git a/storage/xtradb/fts/fts0pars.y b/storage/xtradb/fts/fts0pars.y
index 65c4189eecea37213baabf414c7d7381331126b6..31895e8a86cbd9b830e373cf7b5b08ef5bcf1172 100644
--- a/storage/xtradb/fts/fts0pars.y
+++ b/storage/xtradb/fts/fts0pars.y
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fts/fts0que.cc b/storage/xtradb/fts/fts0que.cc
index b9ad43c626ab366d0d11dd19efb421fc4720fc5e..8fce8efac2b8fdeaaad9c7f58e4d97cde9fc0a62 100644
--- a/storage/xtradb/fts/fts0que.cc
+++ b/storage/xtradb/fts/fts0que.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2052,13 +2052,22 @@ fts_query_find_term(
 	fts_select_t		select;
 	doc_id_t		match_doc_id;
 	trx_t*			trx = query->trx;
+	char			table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS index matching nodes";
 
 	if (*graph) {
 		info = (*graph)->info;
 	} else {
+		ulint	selected;
+
 		info = pars_info_create();
+
+		selected = fts_select_index(*word->f_str);
+		query->fts_index_table.suffix = fts_get_suffix(selected);
+
+		fts_get_table_name(&query->fts_index_table, table_name);
+		pars_info_bind_id(info, true, "index_table_name", table_name);
 	}
 
 	select.found = FALSE;
@@ -2077,11 +2086,6 @@ fts_query_find_term(
 	fts_bind_doc_id(info, "max_doc_id", &match_doc_id);
 
 	if (!*graph) {
-		ulint		selected;
-
-		selected = fts_select_index(*word->f_str);
-
-		query->fts_index_table.suffix = fts_get_suffix(selected);
 
 		*graph = fts_parse_sql(
 			&query->fts_index_table,
@@ -2089,7 +2093,7 @@ fts_query_find_term(
 			"DECLARE FUNCTION my_func;\n"
 			"DECLARE CURSOR c IS"
 			" SELECT doc_count, ilist\n"
-			" FROM \"%s\"\n"
+			" FROM $index_table_name\n"
 			" WHERE word LIKE :word AND "
 			"	first_doc_id <= :min_doc_id AND "
 			"	last_doc_id >= :max_doc_id\n"
@@ -2188,6 +2192,7 @@ fts_query_total_docs_containing_term(
 	que_t*			graph;
 	ulint			selected;
 	trx_t*			trx = query->trx;
+	char			table_name[MAX_FULL_NAME_LEN]
 
 	trx->op_info = "fetching FTS index document count";
 
@@ -2202,13 +2207,17 @@ fts_query_total_docs_containing_term(
 
 	query->fts_index_table.suffix = fts_get_suffix(selected);
 
+	fts_get_table_name(&query->fts_index_table, table_name);
+
+	pars_info_bind_id(info, true, "index_table_name", table_name);
+
 	graph = fts_parse_sql(
 		&query->fts_index_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT doc_count\n"
-		" FROM %s\n"
+		" FROM $index_table_name\n"
 		" WHERE word = :word "
 		" ORDER BY first_doc_id;\n"
 		"BEGIN\n"
@@ -2267,6 +2276,7 @@ fts_query_terms_in_document(
 	que_t*		graph;
 	doc_id_t	read_doc_id;
 	trx_t*		trx = query->trx;
+	char		table_name[MAX_FULL_NAME_LEN];
 
 	trx->op_info = "fetching FTS document term count";
 
@@ -2282,13 +2292,17 @@ fts_query_terms_in_document(
 
 	query->fts_index_table.suffix = "DOC_ID";
 
+	fts_get_table_name(&query->fts_index_table, table_name);
+
+	pars_info_bind_id(info, true, "index_table_name", table_name);
+
 	graph = fts_parse_sql(
 		&query->fts_index_table,
 		info,
 		"DECLARE FUNCTION my_func;\n"
 		"DECLARE CURSOR c IS"
 		" SELECT count\n"
-		" FROM \"%s\"\n"
+		" FROM $index_table_name\n"
 		" WHERE doc_id = :doc_id "
 		"BEGIN\n"
 		"\n"
@@ -3891,7 +3905,6 @@ fts_query(
 
 	query.fts_common_table.type = FTS_COMMON_TABLE;
 	query.fts_common_table.table_id = index->table->id;
-	query.fts_common_table.parent = index->table->name;
 	query.fts_common_table.table = index->table;
 
 	charset = fts_index_get_charset(index);
@@ -3899,7 +3912,6 @@ fts_query(
 	query.fts_index_table.type = FTS_INDEX_TABLE;
 	query.fts_index_table.index_id = index->id;
 	query.fts_index_table.table_id = index->table->id;
-	query.fts_index_table.parent = index->table->name;
 	query.fts_index_table.charset = charset;
 	query.fts_index_table.table = index->table;
 
diff --git a/storage/xtradb/fts/fts0sql.cc b/storage/xtradb/fts/fts0sql.cc
index cb8eff3cacce5254caab91e375bcdcce7a4bd0a1..258164415f4345e7609c2cecb7793e2135bbbd3e 100644
--- a/storage/xtradb/fts/fts0sql.cc
+++ b/storage/xtradb/fts/fts0sql.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -35,8 +36,7 @@ Created 2007-03-27 Sunny Bains
 #include "fts0vlc.ic"
 #endif
 
-/** SQL statements for creating the ancillary FTS tables. %s must be replaced
-with the indexed table's id. */
+/** SQL statements for creating the ancillary FTS tables. */
 
 /** Preamble to all SQL statements. */
 static const char* fts_sql_begin=
@@ -95,76 +95,56 @@ fts_get_table_id(
 	return(len);
 }
 
-/******************************************************************//**
-Construct the prefix name of an FTS table.
-@return own: table name, must be freed with mem_free() */
-UNIV_INTERN
-char*
-fts_get_table_name_prefix(
-/*======================*/
-	const fts_table_t*
-			fts_table)	/*!< in: Auxiliary table type */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[in]	dict_locked	whether dict_sys->mutex is being held
+@return	the prefix, must be freed with ut_free() */
+UNIV_INTERN char* fts_get_table_name_prefix(const fts_table_t* fts_table)
 {
-	int		len;
-	const char*	slash;
-	char*		prefix_name;
-	int		dbname_len = 0;
-	int		prefix_name_len;
 	char		table_id[FTS_AUX_MIN_TABLE_ID_LENGTH];
-
-	slash = static_cast(
-		memchr(fts_table->parent, '/', strlen(fts_table->parent)));
-
-	if (slash) {
-		/* Print up to and including the separator. */
-		dbname_len = static_cast(slash - fts_table->parent) + 1;
-	}
-
-	len = fts_get_table_id(fts_table, table_id);
-
-	prefix_name_len = dbname_len + 4 + len + 1;
-
-	prefix_name = static_cast(mem_alloc(prefix_name_len));
-
-	len = sprintf(prefix_name, "%.*sFTS_%s",
-		      dbname_len, fts_table->parent, table_id);
-
-	ut_a(len > 0);
-	ut_a(len == prefix_name_len - 1);
-
-	return(prefix_name);
+	const size_t table_id_len = size_t(fts_get_table_id(fts_table,
+							    table_id)) + 1;
+	mutex_enter(&dict_sys->mutex);
+	const char* slash = strchr(fts_table->table->name, '/');
+	ut_ad(slash);
+	/* Include the separator as well. */
+	const size_t dbname_len = (slash - fts_table->table->name) + 1;
+	ut_ad(dbname_len > 1);
+	const size_t prefix_name_len = dbname_len + 4 + table_id_len;
+	char* prefix_name = static_cast(ut_malloc(prefix_name_len));
+	memcpy(prefix_name, fts_table->table->name, dbname_len);
+	mutex_exit(&dict_sys->mutex);
+	memcpy(prefix_name + dbname_len, "FTS_", 4);
+	memcpy(prefix_name + dbname_len + 4, table_id, table_id_len);
+	return prefix_name;
 }
 
-/******************************************************************//**
-Construct the name of an ancillary FTS table.
-@return own: table name, must be freed with mem_free() */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[out]	table_name	a name up to MAX_FULL_NAME_LEN
+@param[in]	dict_locked	whether dict_sys->mutex is being held */
 UNIV_INTERN
-char*
-fts_get_table_name(
-/*===============*/
-	const fts_table_t*	fts_table)
-					/*!< in: Auxiliary table type */
+void fts_get_table_name(const fts_table_t* fts_table, char* table_name,
+			bool dict_locked)
 {
-	int		len;
-	char*		name;
-	int		name_len;
-	char*		prefix_name;
-
-	prefix_name = fts_get_table_name_prefix(fts_table);
-
-	name_len = static_cast(
-		strlen(prefix_name) + 1 + strlen(fts_table->suffix) + 1);
-
-	name = static_cast(mem_alloc(name_len));
-
-	len = sprintf(name, "%s_%s", prefix_name, fts_table->suffix);
-
-	ut_a(len > 0);
-	ut_a(len == name_len - 1);
-
-	mem_free(prefix_name);
-
-	return(name);
+	if (!dict_locked) {
+		mutex_enter(&dict_sys->mutex);
+	}
+	ut_ad(mutex_own(&dict_sys->mutex));
+	const char* slash = strchr(fts_table->table->name, '/');
+	ut_ad(slash);
+	/* Include the separator as well. */
+	const size_t dbname_len = (slash - fts_table->table->name) + 1;
+	ut_ad(dbname_len > 1);
+	memcpy(table_name, fts_table->table->name, dbname_len);
+	if (!dict_locked) {
+		mutex_exit(&dict_sys->mutex);
+	}
+	memcpy(table_name += dbname_len, "FTS_", 4);
+	table_name += 4;
+	table_name += fts_get_table_id(fts_table, table_name);
+	*table_name++ = '_';
+	strcpy(table_name, fts_table->suffix);
 }
 
 /******************************************************************//**
@@ -180,24 +160,9 @@ fts_parse_sql(
 {
 	char*		str;
 	que_t*		graph;
-	char*		str_tmp;
 	ibool		dict_locked;
 
-	if (fts_table != NULL) {
-		char*	table_name;
-
-		table_name = fts_get_table_name(fts_table);
-		str_tmp = ut_strreplace(sql, "%s", table_name);
-		mem_free(table_name);
-	} else {
-		ulint	sql_len = strlen(sql) + 1;
-
-		str_tmp = static_cast(mem_alloc(sql_len));
-		strcpy(str_tmp, sql);
-	}
-
-	str = ut_str3cat(fts_sql_begin, str_tmp, fts_sql_end);
-	mem_free(str_tmp);
+	str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
 
 	dict_locked = (fts_table && fts_table->table->fts
 		       && (fts_table->table->fts->fts_status
@@ -223,7 +188,7 @@ fts_parse_sql(
 }
 
 /******************************************************************//**
-Parse an SQL string. %s is replaced with the table's id.
+Parse an SQL string.
 @return query graph */
 UNIV_INTERN
 que_t*
@@ -235,28 +200,10 @@ fts_parse_sql_no_dict_lock(
 {
 	char*		str;
 	que_t*		graph;
-	char*		str_tmp = NULL;
 
-#ifdef UNIV_DEBUG
 	ut_ad(mutex_own(&dict_sys->mutex));
-#endif
-
-	if (fts_table != NULL) {
-		char*		table_name;
-
-		table_name = fts_get_table_name(fts_table);
-		str_tmp = ut_strreplace(sql, "%s", table_name);
-		mem_free(table_name);
-	}
-
-	if (str_tmp != NULL) {
-		str = ut_str3cat(fts_sql_begin, str_tmp, fts_sql_end);
-		mem_free(str_tmp);
-	} else {
-		str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
-	}
 
-	//fprintf(stderr, "%s\n", str);
+	str = ut_str3cat(fts_sql_begin, sql, fts_sql_end);
 
 	graph = pars_sql(info, str);
 	ut_a(graph);
diff --git a/storage/xtradb/fts/fts0tlex.cc b/storage/xtradb/fts/fts0tlex.cc
index 73c34a607ca7de3bfbfe7497b02def640144ff42..9cb46c70e1a203dc5616e3dd6fd4757cd7d8919a 100644
--- a/storage/xtradb/fts/fts0tlex.cc
+++ b/storage/xtradb/fts/fts0tlex.cc
@@ -649,7 +649,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**
diff --git a/storage/xtradb/fts/fts0tlex.l b/storage/xtradb/fts/fts0tlex.l
index 4f55a83afe5faf1261d27a76298ddf3db2356045..bcf5439ae9f90456f5c635b8aa887ff06987ebb3 100644
--- a/storage/xtradb/fts/fts0tlex.l
+++ b/storage/xtradb/fts/fts0tlex.l
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fts/make_parser.sh b/storage/xtradb/fts/make_parser.sh
index 52b63eff6745493c0a304ece2117db3d301383f8..6b82c5ba68a714641f445263bd1b424ef9f3ec6c 100755
--- a/storage/xtradb/fts/make_parser.sh
+++ b/storage/xtradb/fts/make_parser.sh
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 
 TMPF=t.$$
diff --git a/storage/xtradb/fut/fut0fut.cc b/storage/xtradb/fut/fut0fut.cc
index 9bb1c512182d02aa4be83c8ab9be25b6a8fa7c1a..74814acbb1d6b388dd5c8986cd6b50cca06413d1 100644
--- a/storage/xtradb/fut/fut0fut.cc
+++ b/storage/xtradb/fut/fut0fut.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/fut/fut0lst.cc b/storage/xtradb/fut/fut0lst.cc
index dd3fa1238d926a4f89231c15c7c6a96d7b663984..76cf3cadd5fe3988e227ab4232d07b9d5b8b82e3 100644
--- a/storage/xtradb/fut/fut0lst.cc
+++ b/storage/xtradb/fut/fut0lst.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ha/ha0ha.cc b/storage/xtradb/ha/ha0ha.cc
index 3674260f1730396effecc0cf5f6db83c732f449a..259925a40bff2bf62133860561c1aa573e730f12 100644
--- a/storage/xtradb/ha/ha0ha.cc
+++ b/storage/xtradb/ha/ha0ha.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ha/ha0storage.cc b/storage/xtradb/ha/ha0storage.cc
index 6820591f316ca11e42980abb3778ff8063b5e2f8..2a8ee8b2432b8f486ecddfc93d66e4920044b2e1 100644
--- a/storage/xtradb/ha/ha0storage.cc
+++ b/storage/xtradb/ha/ha0storage.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ha/hash0hash.cc b/storage/xtradb/ha/hash0hash.cc
index 6f5b98e5e987ec9ed8e83bdc4cef8657f433dd01..acb81623a81fbb91dfacde5920e6c5c0e818c600 100644
--- a/storage/xtradb/ha/hash0hash.cc
+++ b/storage/xtradb/ha/hash0hash.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/handler/ha_innodb.cc b/storage/xtradb/handler/ha_innodb.cc
index 583ee3b54f9585f4294d9606257c77219ee1baeb..5e7482ff6bface34b7ed422fbf327e559fa2569a 100644
--- a/storage/xtradb/handler/ha_innodb.cc
+++ b/storage/xtradb/handler/ha_innodb.cc
@@ -30,7 +30,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -92,7 +92,6 @@ this program; if not, write to the Free Software Foundation, Inc.,
 #include "dict0stats_bg.h"
 #include "ha_prototypes.h"
 #include "ut0mem.h"
-#include "ut0timer.h"
 #include "ibuf0ibuf.h"
 #include "dict0dict.h"
 #include "srv0mon.h"
@@ -961,20 +960,6 @@ innodb_empty_free_list_algorithm_allowed(
 			|| algorithm != SRV_EMPTY_FREE_LIST_BACKOFF);
 }
 
-/** Get the list of foreign keys referencing a specified table
-table.
-@param thd		The thread handle
-@param path		Path to the table
-@param f_key_list[out]	The list of foreign keys
-
-@return error code or zero for success */
-static
-int
-innobase_get_parent_fk_list(
-	THD*			thd,
-	const char*		path,
-	List*	f_key_list) __attribute__((unused));
-
 /******************************************************************//**
 Maps a MySQL trx isolation level code to the InnoDB isolation level code
 @return	InnoDB isolation level */
@@ -1962,13 +1947,14 @@ innobase_srv_conc_enter_innodb(
 
 		} else if (trx->mysql_thd != NULL
 			   && thd_is_replication_slave_thread(trx->mysql_thd)) {
-
-			UT_WAIT_FOR(
-				srv_conc_get_active_threads()
-				< srv_thread_concurrency,
-				srv_replication_delay * 1000);
-
-		}  else {
+			const ulonglong end = my_interval_timer()
+				+ ulonglong(srv_replication_delay) * 1000000;
+			while (srv_conc_get_active_threads()
+			       >= srv_thread_concurrency
+			       || my_interval_timer() >= end) {
+				os_thread_sleep(2000 /* 2 ms */);
+			}
+		} else {
 			srv_conc_enter_innodb(trx);
 		}
 	}
@@ -4590,14 +4576,6 @@ innobase_init(
 	/* Turn on monitor counters that are default on */
 	srv_mon_default_on();
 
-#ifndef UNIV_HOTBACKUP
-#ifdef _WIN32
-	if (ut_win_init_time()) {
-		goto mem_free_and_error;
-	}
-#endif /* _WIN32 */
-#endif /* !UNIV_HOTBACKUP */
-
 	DBUG_RETURN(FALSE);
 error:
 	DBUG_RETURN(TRUE);
@@ -13233,11 +13211,12 @@ ha_innobase::delete_table(
 	++trx->will_lock;
 	trx->ddl = true;
 
+	const int sqlcom = thd_sql_command(thd);
+
 	/* Drop the table in InnoDB */
 	err = row_drop_table_for_mysql(
-		norm_name, trx, thd_sql_command(thd) == SQLCOM_DROP_DB,
-		FALSE);
-
+		norm_name, trx, sqlcom == SQLCOM_DROP_DB,
+		sqlcom == SQLCOM_CREATE_TABLE /* CREATE TABLE ... SELECT */);
 
 	if (err == DB_TABLE_NOT_FOUND
 	    && innobase_get_lower_case_table_names() == 1) {
@@ -13267,8 +13246,9 @@ ha_innobase::delete_table(
 #endif
 			err = row_drop_table_for_mysql(
 				par_case_name, trx,
-				thd_sql_command(thd) == SQLCOM_DROP_DB,
-				FALSE);
+				sqlcom == SQLCOM_DROP_DB,
+				sqlcom == SQLCOM_CREATE_TABLE
+				/* CREATE TABLE ... SELECT */);
 		}
 	}
 
@@ -14121,7 +14101,7 @@ innodb_rec_per_key(
 		}
 
 		/* If the number of NULL values is the same as or
-		large than that of the distinct values, we could
+		larger than that of the distinct values, we could
 		consider that the table consists mostly of NULL value.
 		Set rec_per_key to 1. */
 		if (n_diff <= n_null) {
@@ -15084,6 +15064,10 @@ get_foreign_key_info(
 	LEX_STRING*		referenced_key_name;
 	LEX_STRING*		name = NULL;
 
+	if (row_is_mysql_tmp_table_name(foreign->foreign_table_name)) {
+		return NULL;
+	}
+
 	ptr = dict_remove_db_name(foreign->id);
 	f_key_info.foreign_id = thd_make_lex_string(thd, 0, ptr,
 						    (uint) strlen(ptr), 1);
@@ -15198,49 +15182,6 @@ fill_foreign_key_list(THD* thd,
 	}
 }
 
-/** Get the list of foreign keys referencing a specified table
-table.
-@param thd		The thread handle
-@param path		Path to the table
-@param f_key_list[out]	The list of foreign keys
-
-@return error code or zero for success */
-static
-int
-innobase_get_parent_fk_list(
-	THD*			thd,
-	const char*		path,
-	List*	f_key_list)
-{
-	ut_a(strlen(path) <= FN_REFLEN);
-	char	norm_name[FN_REFLEN + 1];
-	normalize_table_name(norm_name, path);
-
-	trx_t*	parent_trx = check_trx_exists(thd);
-	parent_trx->op_info = "getting list of referencing foreign keys";
-	trx_search_latch_release_if_reserved(parent_trx);
-
-	mutex_enter(&dict_sys->mutex);
-
-	dict_table_t*	table
-		= dict_table_open_on_name(norm_name, TRUE, FALSE,
-					  static_cast(
-						  DICT_ERR_IGNORE_INDEX_ROOT
-						  | DICT_ERR_IGNORE_CORRUPT));
-	if (!table) {
-		mutex_exit(&dict_sys->mutex);
-		return(HA_ERR_NO_SUCH_TABLE);
-	}
-
-	fill_foreign_key_list(thd, table, f_key_list);
-
-	dict_table_close(table, TRUE, FALSE);
-
-	mutex_exit(&dict_sys->mutex);
-	parent_trx->op_info = "";
-	return(0);
-}
-
 /*******************************************************************//**
 Gets the list of foreign keys in this table.
 @return always 0, that is, always succeeds */
@@ -17892,98 +17833,36 @@ innodb_stopword_table_validate(
 	return(ret);
 }
 
-/*************************************************************//**
-Check whether valid argument given to "innodb_fts_internal_tbl_name"
-This function is registered as a callback with MySQL.
-@return 0 for valid stopword table */
-static
-int
-innodb_internal_table_validate(
-/*===========================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to system
-						variable */
-	void*				save,	/*!< out: immediate result
-						for update function */
-	struct st_mysql_value*		value)	/*!< in: incoming string */
-{
-	const char*	table_name;
-	char		buff[STRING_BUFFER_USUAL_SIZE];
-	int		len = sizeof(buff);
-	int		ret = 1;
-	dict_table_t*	user_table;
-
-	ut_a(save != NULL);
-	ut_a(value != NULL);
-
-	table_name = value->val_str(value, buff, &len);
-
-	if (!table_name) {
-		*static_cast(save) = NULL;
-		return(0);
-	}
-
-	user_table = dict_table_open_on_name(
-		table_name, FALSE, TRUE, DICT_ERR_IGNORE_NONE);
-
-	if (user_table) {
-		if (dict_table_has_fts_index(user_table)) {
-			*static_cast(save) = table_name;
-			ret = 0;
+/** The latest assigned innodb_ft_aux_table name */
+static char* innodb_ft_aux_table;
+
+/** Update innodb_ft_aux_table_id on SET GLOBAL innodb_ft_aux_table.
+@param[out]	save	new value of innodb_ft_aux_table
+@param[in]	value	user-specified value */
+static int innodb_ft_aux_table_validate(THD*, st_mysql_sys_var*,
+					void* save, st_mysql_value* value)
+{
+	char buf[STRING_BUFFER_USUAL_SIZE];
+	int len = sizeof buf;
+
+	if (const char* table_name = value->val_str(value, buf, &len)) {
+		if (dict_table_t* table = dict_table_open_on_name(
+			    table_name, FALSE, TRUE, DICT_ERR_IGNORE_NONE)) {
+			const table_id_t id = dict_table_has_fts_index(table)
+				? table->id : 0;
+			dict_table_close(table, FALSE, FALSE);
+			if (id) {
+				innodb_ft_aux_table_id = id;
+				*static_cast(save) = table_name;
+				return 0;
+			}
 		}
 
-		dict_table_close(user_table, FALSE, TRUE);
-
-		DBUG_EXECUTE_IF("innodb_evict_autoinc_table",
-			mutex_enter(&dict_sys->mutex);
-			dict_table_remove_from_cache_low(user_table, TRUE);
-			mutex_exit(&dict_sys->mutex);
-		);
-	}
-
-	return(ret);
-}
-
-/****************************************************************//**
-Update global variable "fts_internal_tbl_name" with the "saved"
-stopword table name value. This function is registered as a callback
-with MySQL. */
-static
-void
-innodb_internal_table_update(
-/*=========================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
-{
-	const char*	table_name;
-	char*		old;
-
-	ut_a(save != NULL);
-	ut_a(var_ptr != NULL);
-
-	table_name = *static_cast(save);
-	old = *(char**) var_ptr;
-
-	if (table_name) {
-		*(char**) var_ptr =  my_strdup(table_name,  MYF(0));
-	} else {
-		*(char**) var_ptr = NULL;
-	}
-
-	if (old) {
-		my_free(old);
-	}
-
-	fts_internal_tbl_name2 = *(char**) var_ptr;
-	if (fts_internal_tbl_name2 == NULL) {
-		fts_internal_tbl_name = const_cast("default");
+		return 1;
 	} else {
-		fts_internal_tbl_name = fts_internal_tbl_name2;
+		*static_cast(save) = NULL;
+		innodb_ft_aux_table_id = 0;
+		return 0;
 	}
 }
 
@@ -18002,11 +17881,13 @@ innodb_adaptive_hash_index_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	if (*(my_bool*) save) {
 		btr_search_enable();
 	} else {
 		btr_search_disable();
 	}
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 /****************************************************************//**
@@ -18027,7 +17908,9 @@ innodb_cmp_per_index_update(
 	/* Reset the stats whenever we enable the table
 	INFORMATION_SCHEMA.innodb_cmp_per_index. */
 	if (!srv_cmp_per_index_enabled && *(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		page_zip_reset_stat_per_index();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 
 	srv_cmp_per_index_enabled = !!(*(my_bool*) save);
@@ -18048,9 +17931,11 @@ innodb_old_blocks_pct_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
-	innobase_old_blocks_pct = static_cast(
-		buf_LRU_old_ratio_update(
-			*static_cast(save), TRUE));
+	mysql_mutex_unlock(&LOCK_global_system_variables);
+	uint ratio = buf_LRU_old_ratio_update(*static_cast(save),
+					      true);
+	mysql_mutex_lock(&LOCK_global_system_variables);
+	innobase_old_blocks_pct = ratio;
 }
 
 /****************************************************************//**
@@ -18068,9 +17953,10 @@ innodb_change_buffer_max_size_update(
 	const void*			save)	/*!< in: immediate result
 						from check function */
 {
-	innobase_change_buffer_max_size =
-			(*static_cast(save));
+	innobase_change_buffer_max_size = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	ibuf_max_size_update(innobase_change_buffer_max_size);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 #ifdef UNIV_DEBUG
@@ -18114,6 +18000,7 @@ innodb_make_page_dirty(
 {
 	mtr_t mtr;
 	ulong space_id = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 
 	mtr_start(&mtr);
 
@@ -18131,6 +18018,7 @@ innodb_make_page_dirty(
 				 MLOG_2BYTES, &mtr);
 	}
 	mtr_commit(&mtr);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 #endif // UNIV_DEBUG
 
@@ -18776,8 +18664,11 @@ innodb_buffer_pool_evict_update(
 {
 	if (const char* op = *static_cast(save)) {
 		if (!strcmp(op, "uncompressed")) {
+			mysql_mutex_unlock(&LOCK_global_system_variables);
 			for (uint tries = 0; tries < 10000; tries++) {
 				if (innodb_buffer_pool_evict_uncompressed()) {
+					mysql_mutex_lock(
+						&LOCK_global_system_variables);
 					return;
 				}
 
@@ -18880,8 +18771,7 @@ innodb_defragment_frequency_update(
 	          from check function */
 {
 	srv_defragment_frequency = (*static_cast(save));
-	srv_defragment_interval = ut_microseconds_to_timer(
-		1000000.0 / srv_defragment_frequency);
+	srv_defragment_interval = 1000000000ULL / srv_defragment_frequency;
 }
 
 /****************************************************************//**
@@ -19314,7 +19204,9 @@ purge_run_now_set(
 						check function */
 {
 	if (*(my_bool*) save && trx_purge_state() != PURGE_STATE_DISABLED) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		trx_purge_run();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19337,7 +19229,9 @@ purge_stop_now_set(
 						check function */
 {
 	if (*(my_bool*) save && trx_purge_state() != PURGE_STATE_DISABLED) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		trx_purge_stop();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19359,6 +19253,8 @@ checkpoint_now_set(
 						check function */
 {
 	if (*(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
+
 		while (log_sys->last_checkpoint_lsn < log_sys->lsn) {
 			log_make_checkpoint_at(LSN_MAX, TRUE);
 			fil_flush_file_spaces(FIL_LOG);
@@ -19372,6 +19268,8 @@ checkpoint_now_set(
 				"system tablespace at checkpoint err=%s",
 				ut_strerr(err));
 		}
+
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19393,8 +19291,10 @@ buf_flush_list_now_set(
 						  check function */
 {
 	if (*(my_bool*) save) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_flush_list(ULINT_MAX, LSN_MAX, NULL);
 		buf_flush_wait_batch_end(NULL, BUF_FLUSH_LIST);
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19521,7 +19421,9 @@ buffer_pool_dump_now(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_dump_start();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19544,7 +19446,9 @@ buffer_pool_load_now(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_load_start();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
@@ -19567,96 +19471,71 @@ buffer_pool_load_abort(
 						check function */
 {
 	if (*(my_bool*) save && !srv_read_only_mode) {
+		mysql_mutex_unlock(&LOCK_global_system_variables);
 		buf_load_abort();
+		mysql_mutex_lock(&LOCK_global_system_variables);
 	}
 }
 
 /** Update innodb_status_output or innodb_status_output_locks,
 which control InnoDB "status monitor" output to the error log.
-@param[in]	thd	thread handle
-@param[in]	var	system variable
-@param[out]	var_ptr	current value
+@param[out]	var	current value
 @param[in]	save	to-be-assigned value */
 static
 void
-innodb_status_output_update(
-/*========================*/
-	THD*				thd __attribute__((unused)),
-	struct st_mysql_sys_var*	var __attribute__((unused)),
-	void*				var_ptr __attribute__((unused)),
-	const void*			save __attribute__((unused)))
+innodb_status_output_update(THD*,st_mysql_sys_var*,void*var,const void*save)
 {
-	*static_cast(var_ptr) = *static_cast(save);
+	*static_cast(var) = *static_cast(save);
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	/* Wakeup server monitor thread. */
 	os_event_set(srv_monitor_event);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_threads */
+/** Update the system variable innodb_encryption_threads.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_threads_update(
-/*=============================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_threads_update(THD*,st_mysql_sys_var*,void*,const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_thread_cnt(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_rotate_key_age */
+/** Update the system variable innodb_encryption_rotate_key_age.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_rotate_key_age_update(
-/*====================================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_rotate_key_age_update(THD*,st_mysql_sys_var*,void*,
+					const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_rotate_key_age(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encryption_rotation_iops */
+/** Update the system variable innodb_encryption_rotation_iops.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encryption_rotation_iops_update(
-/*===================================*/
-	THD*				thd,	/*!< in: thread handle */
-	struct st_mysql_sys_var*	var,	/*!< in: pointer to
-						system variable */
-	void*				var_ptr,/*!< out: where the
-						formal string goes */
-	const void*			save)	/*!< in: immediate result
-						from check function */
+innodb_encryption_rotation_iops_update(THD*,st_mysql_sys_var*,void*,
+				       const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_rotation_iops(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
-/******************************************************************
-Update the system variable innodb_encrypt_tables*/
+/** Update the system variable innodb_encrypt_tables.
+@param[in]	save	to-be-assigned value */
 static
 void
-innodb_encrypt_tables_update(
-/*=========================*/
-	THD*                            thd,    /*!< in: thread handle */
-	struct st_mysql_sys_var*        var,    /*!< in: pointer to
-						system variable */
-	void*                           var_ptr,/*!< out: where the
-						formal string goes */
-	const void*                     save)   /*!< in: immediate result
-						from check function */
+innodb_encrypt_tables_update(THD*,st_mysql_sys_var*,void*,const void*save)
 {
+	mysql_mutex_unlock(&LOCK_global_system_variables);
 	fil_crypt_set_encrypt_tables(*static_cast(save));
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 static SHOW_VAR innodb_status_variables_export[]= {
@@ -20746,11 +20625,10 @@ static MYSQL_SYSVAR_BOOL(disable_sort_file_cache, srv_disable_sort_file_cache,
   "Whether to disable OS system file cache for sort I/O",
   NULL, NULL, FALSE);
 
-static MYSQL_SYSVAR_STR(ft_aux_table, fts_internal_tbl_name2,
-  PLUGIN_VAR_NOCMDARG,
+static MYSQL_SYSVAR_STR(ft_aux_table, innodb_ft_aux_table,
+  PLUGIN_VAR_NOCMDARG | PLUGIN_VAR_MEMALLOC,
   "FTS internal auxiliary table to be checked",
-  innodb_internal_table_validate,
-  innodb_internal_table_update, NULL);
+  innodb_ft_aux_table_validate, NULL, NULL);
 
 static MYSQL_SYSVAR_ULONG(ft_cache_size, fts_max_cache_size,
   PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
@@ -21095,12 +20973,15 @@ innobase_disallow_writes_update(
 						variable */
 	const void*		save)		/* in: temporary storage */
 {
-	*(my_bool*)var_ptr = *(my_bool*)save;
+	const my_bool val = *static_cast(save);
+	*static_cast(var_ptr) = val;
 	ut_a(srv_allow_writes_event);
-	if (*(my_bool*)var_ptr)
+	mysql_mutex_unlock(&LOCK_global_system_variables);
+	if (val)
 		os_event_reset(srv_allow_writes_event);
 	else
 		os_event_set(srv_allow_writes_event);
+	mysql_mutex_lock(&LOCK_global_system_variables);
 }
 
 static MYSQL_SYSVAR_BOOL(disallow_writes, innobase_disallow_writes,
diff --git a/storage/xtradb/handler/ha_innodb.h b/storage/xtradb/handler/ha_innodb.h
index 48ec8ba5bae06cb57f6154a9453fda42806307f7..4a7c526d35b72d8b00ec622cce7dee269be60cdd 100644
--- a/storage/xtradb/handler/ha_innodb.h
+++ b/storage/xtradb/handler/ha_innodb.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/handler/handler0alter.cc b/storage/xtradb/handler/handler0alter.cc
index 808f8529a772eb84c7e02b6b9f6d769bb7573fab..12257ec0f8fd83a46e60d0ff25b52f9ccd18045e 100644
--- a/storage/xtradb/handler/handler0alter.cc
+++ b/storage/xtradb/handler/handler0alter.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/handler/i_s.cc b/storage/xtradb/handler/i_s.cc
index 5c2d65e5799a9b8a52cfa9d0009440079380d386..8eb53502da825f834bae5e65aa14cb8f1e9621a0 100644
--- a/storage/xtradb/handler/i_s.cc
+++ b/storage/xtradb/handler/i_s.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -75,6 +75,9 @@ Modified Dec 29, 2014 Jan Lindström (Added sys_semaphore_waits)
 #include "fil0fil.h"
 #include "fil0crypt.h"
 
+/** The latest successfully looked up innodb_fts_aux_table */
+UNIV_INTERN table_id_t innodb_ft_aux_table_id;
+
 /** structure associates a name string with a file page type and/or buffer
 page state. */
 struct buf_page_desc_t{
@@ -2928,25 +2931,21 @@ i_s_fts_deleted_generic_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	} else if (!dict_table_has_fts_index(user_table)) {
 		dict_table_close(user_table, FALSE, FALSE);
-
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	}
 
@@ -2961,6 +2960,12 @@ i_s_fts_deleted_generic_fill(
 
 	fts_table_fetch_doc_ids(trx, &fts_table, deleted);
 
+	dict_table_close(user_table, FALSE, FALSE);
+
+	rw_lock_s_unlock(&dict_operation_lock);
+
+	trx_free_for_background(trx);
+
 	fields = table->field;
 
 	int	ret = 0;
@@ -2975,14 +2980,8 @@ i_s_fts_deleted_generic_fill(
 		BREAK_IF(ret = schema_table_store_record(thd, table));
 	}
 
-	trx_free_for_background(trx);
-
 	fts_doc_ids_free(deleted);
 
-	dict_table_close(user_table, FALSE, FALSE);
-
-	rw_lock_s_unlock(&dict_operation_lock);
-
 	DBUG_RETURN(ret);
 }
 
@@ -3340,32 +3339,33 @@ i_s_fts_index_cache_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
+	rw_lock_s_lock(&dict_operation_lock);
+
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
+no_fts:
+		rw_lock_s_unlock(&dict_operation_lock);
 		DBUG_RETURN(0);
 	}
 
-	if (user_table->fts == NULL || user_table->fts->cache == NULL) {
+	if (!user_table->fts || !user_table->fts->cache) {
 		dict_table_close(user_table, FALSE, FALSE);
-
-		DBUG_RETURN(0);
+		goto no_fts;
 	}
 
 	cache = user_table->fts->cache;
 
-	ut_a(cache);
-
 	int			ret = 0;
 	fts_string_t		conv_str;
-	conv_str.f_len = system_charset_info->mbmaxlen
-		* FTS_MAX_WORD_LEN_IN_CHAR;
-	conv_str.f_str = static_cast(ut_malloc(conv_str.f_len));
+	byte			word[HA_FT_MAXBYTELEN + 1];
+	conv_str.f_len = sizeof word;
+	conv_str.f_str = word;
 
 	for (ulint i = 0; i < ib_vector_size(cache->indexes); i++) {
 		fts_index_cache_t*      index_cache;
@@ -3377,9 +3377,8 @@ i_s_fts_index_cache_fill(
 				 index_cache, thd, &conv_str, tables));
 	}
 
-	ut_free(conv_str.f_str);
-
 	dict_table_close(user_table, FALSE, FALSE);
+	rw_lock_s_unlock(&dict_operation_lock);
 
 	DBUG_RETURN(ret);
 }
@@ -3470,6 +3469,7 @@ i_s_fts_index_table_fill_selected(
 	que_t*			graph;
 	dberr_t			error;
 	fts_fetch_t		fetch;
+	char			table_name[MAX_FULL_NAME_LEN];
 
 	info = pars_info_create();
 
@@ -3490,6 +3490,8 @@ i_s_fts_index_table_fill_selected(
 
 	FTS_INIT_INDEX_TABLE(&fts_table, fts_get_suffix(selected),
 			     FTS_INDEX_TABLE, index);
+	fts_get_table_name(&fts_table, table_name);
+	pars_info_bind_id(info, true, "table_name", table_name);
 
 	graph = fts_parse_sql(
 		&fts_table, info,
@@ -3497,7 +3499,7 @@ i_s_fts_index_table_fill_selected(
 		"DECLARE CURSOR c IS"
 		" SELECT word, doc_count, first_doc_id, last_doc_id, "
 		"ilist\n"
-		" FROM %s WHERE word >= :word;\n"
+		" FROM $table_name WHERE word >= :word;\n"
 		"BEGIN\n"
 		"\n"
 		"OPEN c;\n"
@@ -3789,19 +3791,17 @@ i_s_fts_index_table_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
 	}
 
@@ -3953,32 +3953,28 @@ i_s_fts_config_fill(
 		DBUG_RETURN(0);
 	}
 
-	if (!fts_internal_tbl_name) {
-		DBUG_RETURN(0);
-	}
-
-	DEBUG_SYNC_C("i_s_fts_config_fille_check");
-
-	fields = table->field;
+	RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
 
-	/* Prevent DDL to drop fts aux tables. */
+	/* Prevent DROP of the internal tables for fulltext indexes.
+	FIXME: acquire DDL-blocking MDL on the user table name! */
 	rw_lock_s_lock(&dict_operation_lock);
 
-	user_table = dict_table_open_on_name(
-		fts_internal_tbl_name, FALSE, FALSE, DICT_ERR_IGNORE_NONE);
+	user_table = dict_table_open_on_id(
+		innodb_ft_aux_table_id, FALSE, DICT_TABLE_OP_NORMAL);
 
 	if (!user_table) {
+no_fts:
 		rw_lock_s_unlock(&dict_operation_lock);
-
 		DBUG_RETURN(0);
-	} else if (!dict_table_has_fts_index(user_table)) {
-		dict_table_close(user_table, FALSE, FALSE);
-
-		rw_lock_s_unlock(&dict_operation_lock);
+	}
 
-		DBUG_RETURN(0);
+	if (!dict_table_has_fts_index(user_table)) {
+		dict_table_close(user_table, FALSE, FALSE);
+		goto no_fts;
 	}
 
+	fields = table->field;
+
 	trx = trx_allocate_for_background();
 	trx->op_info = "Select for FTS CONFIG TABLE";
 
@@ -4030,12 +4026,12 @@ i_s_fts_config_fill(
 
 	fts_sql_commit(trx);
 
-	trx_free_for_background(trx);
-
 	dict_table_close(user_table, FALSE, FALSE);
 
 	rw_lock_s_unlock(&dict_operation_lock);
 
+	trx_free_for_background(trx);
+
 	DBUG_RETURN(ret);
 }
 
diff --git a/storage/xtradb/handler/i_s.h b/storage/xtradb/handler/i_s.h
index 4bb3ea334628a7971dd5f64b58a4638206a90b55..81d6977954d8d805b6e80e2c38159a136d574fd9 100644
--- a/storage/xtradb/handler/i_s.h
+++ b/storage/xtradb/handler/i_s.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2013, Oracle and/or its affiliates. All Rights Reserved.
-Copyrigth (c) 2014, 2017, MariaDB Corporation.
+Copyrigth (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -27,6 +27,7 @@ Modified Dec 29, 2014 Jan Lindström
 
 #ifndef i_s_h
 #define i_s_h
+#include "dict0types.h"
 
 const char plugin_author[] = "Oracle Corporation";
 const char maria_plugin_author[] = "MariaDB Corporation";
@@ -69,6 +70,9 @@ extern struct st_maria_plugin	i_s_innodb_tablespaces_scrubbing;
 extern struct st_mysql_plugin	i_s_innodb_sys_semaphore_waits;
 extern struct st_mysql_plugin	i_s_innodb_changed_page_bitmaps;
 
+/** The latest successfully looked up innodb_fts_aux_table */
+extern table_id_t innodb_ft_aux_table_id;
+
 /** maximum number of buffer page info we would cache. */
 #define MAX_BUF_INFO_CACHED		10000
 
diff --git a/storage/xtradb/handler/xtradb_i_s.cc b/storage/xtradb/handler/xtradb_i_s.cc
index b3c79975fb303f4e52b7fa24dfbad71b5fbd8b96..0e7cec6b3748b64cb316218dab35f90f3418422d 100644
--- a/storage/xtradb/handler/xtradb_i_s.cc
+++ b/storage/xtradb/handler/xtradb_i_s.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/handler/xtradb_i_s.h b/storage/xtradb/handler/xtradb_i_s.h
index 994bc11c1b832440eda2943661a6b662318874c2..37a30cae032fa0bc8cedd8c9bbbd9f0c7c409d0b 100644
--- a/storage/xtradb/handler/xtradb_i_s.h
+++ b/storage/xtradb/handler/xtradb_i_s.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ibuf/ibuf0ibuf.cc b/storage/xtradb/ibuf/ibuf0ibuf.cc
index 96a86eea4c19d5eb5512028a12bb92a031241151..c8510915bf5246a68bf983be837e43c2468d4687 100644
--- a/storage/xtradb/ibuf/ibuf0ibuf.cc
+++ b/storage/xtradb/ibuf/ibuf0ibuf.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/api0api.h b/storage/xtradb/include/api0api.h
index 500bf4fe3b22de39056b7ce4068fe3a68ada8b4e..1d4882d1f04485479ccac7744965432311d2426f 100644
--- a/storage/xtradb/include/api0api.h
+++ b/storage/xtradb/include/api0api.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/api0misc.h b/storage/xtradb/include/api0misc.h
index fcd748390d1e56cb93bd39076b7ae7eaf3455f18..4827b53d24923582e48f2b57f7c0e6179f1ac68e 100644
--- a/storage/xtradb/include/api0misc.h
+++ b/storage/xtradb/include/api0misc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0btr.h b/storage/xtradb/include/btr0btr.h
index 9ab62f7739f367242f6b077e7a57388e6b817f20..ef5130bacdea6aba8dc2451a9587e328728242e8 100644
--- a/storage/xtradb/include/btr0btr.h
+++ b/storage/xtradb/include/btr0btr.h
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0btr.ic b/storage/xtradb/include/btr0btr.ic
index 9f13c9303ca1633b65fe876022d042976748bf43..c206b6d49a91a411a6977c81144c0b66281b267d 100644
--- a/storage/xtradb/include/btr0btr.ic
+++ b/storage/xtradb/include/btr0btr.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0cur.h b/storage/xtradb/include/btr0cur.h
index 1b0632e21205182cf0da9786859ff1c7b74f417b..af0bee8d8b14f41ed38cf17083680bdd2811043f 100644
--- a/storage/xtradb/include/btr0cur.h
+++ b/storage/xtradb/include/btr0cur.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0cur.ic b/storage/xtradb/include/btr0cur.ic
index 43ee3304c0ec4f525cf2df8eca80c33f6d88009d..c27956f29cf3aba43f0bd1a66434feb41acd519f 100644
--- a/storage/xtradb/include/btr0cur.ic
+++ b/storage/xtradb/include/btr0cur.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0defragment.h b/storage/xtradb/include/btr0defragment.h
index 477824c1a35861ca9e5a351c0e443a1ad33e20a0..9f6aba490a8bca00f67fa01b1f5bca58d3752e28 100644
--- a/storage/xtradb/include/btr0defragment.h
+++ b/storage/xtradb/include/btr0defragment.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0pcur.h b/storage/xtradb/include/btr0pcur.h
index dafe14ce55617a96fcf9a655410c821ecfb8beb6..bcb9fb6dba3b45243f875c92bcc15f3d64deba72 100644
--- a/storage/xtradb/include/btr0pcur.h
+++ b/storage/xtradb/include/btr0pcur.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0pcur.ic b/storage/xtradb/include/btr0pcur.ic
index 1cd13824542a631508a2d1e4b204a7b562c14527..05ac35c1ebb899ed11f516ce45626515b194382e 100644
--- a/storage/xtradb/include/btr0pcur.ic
+++ b/storage/xtradb/include/btr0pcur.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0sea.h b/storage/xtradb/include/btr0sea.h
index 55366d3c0d3f22cbec6a5993b1b7e22b4592cd50..9d415b10a98445fdf0e413565874ea95124c38b8 100644
--- a/storage/xtradb/include/btr0sea.h
+++ b/storage/xtradb/include/btr0sea.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0sea.ic b/storage/xtradb/include/btr0sea.ic
index e963d8a844912676a3c7355c9f03ee9764617549..4838799e9069f25bdbddf94391e9c85c1b6fb6dd 100644
--- a/storage/xtradb/include/btr0sea.ic
+++ b/storage/xtradb/include/btr0sea.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/btr0types.h b/storage/xtradb/include/btr0types.h
index 4bc9c72ecccd0a6cc79eeb39ed98726ce03e2537..e3c64bd11759f4444f7fea08b7c26e3b0588db5f 100644
--- a/storage/xtradb/include/btr0types.h
+++ b/storage/xtradb/include/btr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0buddy.h b/storage/xtradb/include/buf0buddy.h
index 09768dda92f458af8d745594da429e96e15f9eb3..76472bffe215e10fb72de1b0e2a8c84f362c46be 100644
--- a/storage/xtradb/include/buf0buddy.h
+++ b/storage/xtradb/include/buf0buddy.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0buddy.ic b/storage/xtradb/include/buf0buddy.ic
index a5fb510dd19e3c86c1fcb61444138ab837816abf..5cab28be6a38af29f5de718342b5d76e79258141 100644
--- a/storage/xtradb/include/buf0buddy.ic
+++ b/storage/xtradb/include/buf0buddy.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0buf.h b/storage/xtradb/include/buf0buf.h
index a618d925f576f3cb7a85124c6f6ccaf7d3b1128c..e8a82f2e3e45ab677f1781e941c7f710df19979e 100644
--- a/storage/xtradb/include/buf0buf.h
+++ b/storage/xtradb/include/buf0buf.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0buf.ic b/storage/xtradb/include/buf0buf.ic
index 20721b28ef2e6e745374ff3857f75745d3b61d8c..f4778e1776915230fd11e1faaad75e04df010b78 100644
--- a/storage/xtradb/include/buf0buf.ic
+++ b/storage/xtradb/include/buf0buf.ic
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0checksum.h b/storage/xtradb/include/buf0checksum.h
index 6818345f965d13c3d488a668a5c13dab75766d6a..8a87c4815eab3e6d5bd82062d80597c098bf6761 100644
--- a/storage/xtradb/include/buf0checksum.h
+++ b/storage/xtradb/include/buf0checksum.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0dblwr.h b/storage/xtradb/include/buf0dblwr.h
index 7b7464761cc1d2500039a5d30fae8c313e36d71f..3d51c1e1061ec1e7899106ee2fa7d8eec7d7924f 100644
--- a/storage/xtradb/include/buf0dblwr.h
+++ b/storage/xtradb/include/buf0dblwr.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0dump.h b/storage/xtradb/include/buf0dump.h
index c704a8e97e090e514891b03f9d750a335294ab55..32db2a0eb0277c4194624d0f54a23167d1705b30 100644
--- a/storage/xtradb/include/buf0dump.h
+++ b/storage/xtradb/include/buf0dump.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0flu.h b/storage/xtradb/include/buf0flu.h
index 6089baf81e829cde412a4c2e7973a1e81053d54f..f682d537c5ea471095744719b5f3e14091c834e2 100644
--- a/storage/xtradb/include/buf0flu.h
+++ b/storage/xtradb/include/buf0flu.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0flu.ic b/storage/xtradb/include/buf0flu.ic
index 06fa49754cd4d2ed7e0d1e56d3363fccaf2cd18f..0e66ce6855f17770a15f35dad071ce5bd99f1bea 100644
--- a/storage/xtradb/include/buf0flu.ic
+++ b/storage/xtradb/include/buf0flu.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0lru.h b/storage/xtradb/include/buf0lru.h
index ee84d168e285b8c3b6dd5e4fcbc534e9b58d91ce..69ada4abb70e3eb10bca86bf0ca792fa0fda25c6 100644
--- a/storage/xtradb/include/buf0lru.h
+++ b/storage/xtradb/include/buf0lru.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -208,13 +208,13 @@ buf_LRU_make_block_old(
 Updates buf_pool->LRU_old_ratio.
 @return	updated old_pct */
 UNIV_INTERN
-ulint
+uint
 buf_LRU_old_ratio_update(
 /*=====================*/
 	uint	old_pct,/*!< in: Reserve this percentage of
 			the buffer pool for "old" blocks. */
-	ibool	adjust);/*!< in: TRUE=adjust the LRU list;
-			FALSE=just assign buf_pool->LRU_old_ratio
+	bool	adjust);/*!< in: true=adjust the LRU list;
+			false=just assign buf_pool->LRU_old_ratio
 			during the initialization of InnoDB */
 /********************************************************************//**
 Update the historical stats that we are collecting for LRU eviction
diff --git a/storage/xtradb/include/buf0lru.ic b/storage/xtradb/include/buf0lru.ic
index 6e0da7a25886a8a106785e4aff578506eaafc2d3..b39fc06e96cbbac159c4a6da39b04182ca2734b3 100644
--- a/storage/xtradb/include/buf0lru.ic
+++ b/storage/xtradb/include/buf0lru.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0mtflu.h b/storage/xtradb/include/buf0mtflu.h
index 0475335bbf53d70432cabd4db55b33aec5c6a0d4..5f11de572adb85fde997960dc81c8734eb94c0e6 100644
--- a/storage/xtradb/include/buf0mtflu.h
+++ b/storage/xtradb/include/buf0mtflu.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0rea.h b/storage/xtradb/include/buf0rea.h
index ab73108a71ebae7085f80d5841ad91f6653726db..35ce384f5d20266b1149e5b85704c947d095db84 100644
--- a/storage/xtradb/include/buf0rea.h
+++ b/storage/xtradb/include/buf0rea.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/buf0types.h b/storage/xtradb/include/buf0types.h
index 6db3cb1238c64850f8edceea228e810dce7e6ac8..0df0b0f4a29c4af0826efd6acccb042a258c45a7 100644
--- a/storage/xtradb/include/buf0types.h
+++ b/storage/xtradb/include/buf0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/data0data.h b/storage/xtradb/include/data0data.h
index 1d954bfc07cbe1e3bc74e59827b8538a840b7ffc..2cd9f61baf4e13e1fedb6d4ec5cd74d9dd241869 100644
--- a/storage/xtradb/include/data0data.h
+++ b/storage/xtradb/include/data0data.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/data0data.ic b/storage/xtradb/include/data0data.ic
index deac969a03d7a5711377c772f37c02a945b7303b..21f534d1be79c65dfe8669de2be71ca9e43d76e9 100644
--- a/storage/xtradb/include/data0data.ic
+++ b/storage/xtradb/include/data0data.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/data0type.h b/storage/xtradb/include/data0type.h
index f3ecab5a3ba443f61915284534e6cebf2b6819fa..73dcb720b064ddbf223f30335290aa4115e99aec 100644
--- a/storage/xtradb/include/data0type.h
+++ b/storage/xtradb/include/data0type.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/data0type.ic b/storage/xtradb/include/data0type.ic
index a7e2eb0682c04b4ab6bed2454153075cf9a9da1a..7f655d1621e91767b1a413f72c931de2552a0868 100644
--- a/storage/xtradb/include/data0type.ic
+++ b/storage/xtradb/include/data0type.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/data0types.h b/storage/xtradb/include/data0types.h
index bd2bb57761194562fa35da1647869800d4a5efca..bcd6b8bc21e7c3062996819f833d904ff8ea0827 100644
--- a/storage/xtradb/include/data0types.h
+++ b/storage/xtradb/include/data0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/db0err.h b/storage/xtradb/include/db0err.h
index 8bd3beda110e6fcec77006d8e1dc5d973b321da4..c7412bf9e9b075775523768b43b6872b6558b75e 100644
--- a/storage/xtradb/include/db0err.h
+++ b/storage/xtradb/include/db0err.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0boot.h b/storage/xtradb/include/dict0boot.h
index 4fd9b0b7f98a6a4662f757f011de50c114214491..b2c7bf46e32a3b624200674301c789a0c246592c 100644
--- a/storage/xtradb/include/dict0boot.h
+++ b/storage/xtradb/include/dict0boot.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0boot.ic b/storage/xtradb/include/dict0boot.ic
index 42e91ee930ea1038cc26b4facc96a4c0744e0047..3721d3de9ec26685fba3ffb504536867ea7668fc 100644
--- a/storage/xtradb/include/dict0boot.ic
+++ b/storage/xtradb/include/dict0boot.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0crea.h b/storage/xtradb/include/dict0crea.h
index 082048b8bbdff98d118934f89e8edeeb223df623..172de01620bef54067ed0a49a09dceb14fdc2546 100644
--- a/storage/xtradb/include/dict0crea.h
+++ b/storage/xtradb/include/dict0crea.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0crea.ic b/storage/xtradb/include/dict0crea.ic
index 3eb3ddfa84efe3aa89bb3acf88ca7e058c776e2e..59d6fb9d80c0460131042d4451b70ef2d2f5b23b 100644
--- a/storage/xtradb/include/dict0crea.ic
+++ b/storage/xtradb/include/dict0crea.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0dict.h b/storage/xtradb/include/dict0dict.h
index 241ed89e36bf9c85c114f4ce1b805dba142c6c9c..dde8368a0ce7c2b426dbd1191e70eeb266f86313 100644
--- a/storage/xtradb/include/dict0dict.h
+++ b/storage/xtradb/include/dict0dict.h
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0dict.ic b/storage/xtradb/include/dict0dict.ic
index 5c0cdbd722765e0b7acf17eb0775b512fcc789b3..475391a3f758e788825313fb428740e09b7a355b 100644
--- a/storage/xtradb/include/dict0dict.ic
+++ b/storage/xtradb/include/dict0dict.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0load.h b/storage/xtradb/include/dict0load.h
index 1a720de5bb6613fefb2a627f26311df3ff9fa71b..54446fee62542f11420434d73ba11a058b046d6a 100644
--- a/storage/xtradb/include/dict0load.h
+++ b/storage/xtradb/include/dict0load.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0load.ic b/storage/xtradb/include/dict0load.ic
index 2c0f1ff38a5c7eb395c29139ac3ca417a31a7472..a0b0feb56ddfb68f5eeac9b212d26f831f08a41e 100644
--- a/storage/xtradb/include/dict0load.ic
+++ b/storage/xtradb/include/dict0load.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0mem.h b/storage/xtradb/include/dict0mem.h
index 09eabf298c9f9e3de35875a6d9f50707858081a1..1dcc3ebdd0cf93da4fabd11113efecd1c8aba202 100644
--- a/storage/xtradb/include/dict0mem.h
+++ b/storage/xtradb/include/dict0mem.h
@@ -2,7 +2,7 @@
 
 Copyright (c) 1996, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1198,7 +1198,7 @@ struct dict_table_t{
 				goes to zero. If it's -1, means there's DDL
 		                on the table, DML from memcached will be
 				blocked. */
-	ib_time_t	stats_last_recalc;
+	time_t		stats_last_recalc;
 				/*!< Timestamp of last recalc of the stats */
 	ib_uint32_t	stat_persistent;
 				/*!< The two bits below are set in the
diff --git a/storage/xtradb/include/dict0mem.ic b/storage/xtradb/include/dict0mem.ic
index 38d51f61789650954fe9082e3483836d365ca223..9acdd6a45cc7b5cc3e52ae89238cbfa0246f0b66 100644
--- a/storage/xtradb/include/dict0mem.ic
+++ b/storage/xtradb/include/dict0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0pagecompress.h b/storage/xtradb/include/dict0pagecompress.h
index 6503c86ffa27d0f71ef24a6e1963a4c64dd86812..9c0c551d9e1ce78f801d29cc3edb8f0d2381c8f7 100644
--- a/storage/xtradb/include/dict0pagecompress.h
+++ b/storage/xtradb/include/dict0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0pagecompress.ic b/storage/xtradb/include/dict0pagecompress.ic
index 13c2b46c51caf2a6c1d562e95914efe308a6a386..6311668ee8a8060c47e5b5a95218e7b8d5809909 100644
--- a/storage/xtradb/include/dict0pagecompress.ic
+++ b/storage/xtradb/include/dict0pagecompress.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0priv.h b/storage/xtradb/include/dict0priv.h
index e034662aba0462de7e7d7f3eaca681e40880721f..3ebd7599703a862d643994d0158b05e09dbf2aca 100644
--- a/storage/xtradb/include/dict0priv.h
+++ b/storage/xtradb/include/dict0priv.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0priv.ic b/storage/xtradb/include/dict0priv.ic
index 983218af78a50df37fb31022ad95d37ad716e76a..e9b111c3271be81b577a15d926c64165735b246c 100644
--- a/storage/xtradb/include/dict0priv.ic
+++ b/storage/xtradb/include/dict0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0stats.h b/storage/xtradb/include/dict0stats.h
index 72501bf9429cc9b2aa51ea892b3e8e484e597dc6..4eda752c46f27cd3bed2062052607beb433ba0cc 100644
--- a/storage/xtradb/include/dict0stats.h
+++ b/storage/xtradb/include/dict0stats.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0stats.ic b/storage/xtradb/include/dict0stats.ic
index ec9a9065470d4aa41c190f2f7211aff71031a70d..940100077609cb1269adeac6175ea9d763d624e0 100644
--- a/storage/xtradb/include/dict0stats.ic
+++ b/storage/xtradb/include/dict0stats.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0stats_bg.h b/storage/xtradb/include/dict0stats_bg.h
index 66fcf7a09982e46221c13cc64fdc6ddfd61c53f1..a14c183c667393075f59549b2521a945faacc763 100644
--- a/storage/xtradb/include/dict0stats_bg.h
+++ b/storage/xtradb/include/dict0stats_bg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0stats_bg.ic b/storage/xtradb/include/dict0stats_bg.ic
index 87e3225de58954ec1a66ac00e8d43e547ada370c..7e0d596afa95a497ddf733cd134c6e651048f53a 100644
--- a/storage/xtradb/include/dict0stats_bg.ic
+++ b/storage/xtradb/include/dict0stats_bg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dict0types.h b/storage/xtradb/include/dict0types.h
index 909fdf9cf3d816b463c15f3524857b0b58d9e769..e44bc15e93a122f3e308e25cb8998d555c0e739f 100644
--- a/storage/xtradb/include/dict0types.h
+++ b/storage/xtradb/include/dict0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dyn0dyn.h b/storage/xtradb/include/dyn0dyn.h
index 20963a1472b434d2a87fce76019ab08da1a22f09..83b5b7b025f46e6427189c84906204bc1d4a9191 100644
--- a/storage/xtradb/include/dyn0dyn.h
+++ b/storage/xtradb/include/dyn0dyn.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/dyn0dyn.ic b/storage/xtradb/include/dyn0dyn.ic
index 6e97649245ee370e0f7ed8da4a0ac5db5377b465..d26082d5463c6fc7d7eac720a1d6afd55f5ca3bd 100644
--- a/storage/xtradb/include/dyn0dyn.ic
+++ b/storage/xtradb/include/dyn0dyn.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/eval0eval.h b/storage/xtradb/include/eval0eval.h
index e3b1e6c16b6ff018cf7259213f146a393f57cf35..4301b491ad2662d84bba821a69efb82a9cb2be09 100644
--- a/storage/xtradb/include/eval0eval.h
+++ b/storage/xtradb/include/eval0eval.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/eval0eval.ic b/storage/xtradb/include/eval0eval.ic
index e4b1dd08017ee8ed2d5ae6047b28bea93051d87b..47d70d593223fb0eb606ec13f01a432506166607 100644
--- a/storage/xtradb/include/eval0eval.ic
+++ b/storage/xtradb/include/eval0eval.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/eval0proc.h b/storage/xtradb/include/eval0proc.h
index 7755fb10343f2fee94572a987dad405f5de9c29d..6dfeff1cc89c3022b76b5d92e88f4d406962364f 100644
--- a/storage/xtradb/include/eval0proc.h
+++ b/storage/xtradb/include/eval0proc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/eval0proc.ic b/storage/xtradb/include/eval0proc.ic
index 81418bae2c916f7de190a9ba4c848588ef705678..c3ba8a97d3f75745015dfff561335352a585360e 100644
--- a/storage/xtradb/include/eval0proc.ic
+++ b/storage/xtradb/include/eval0proc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fil0crypt.h b/storage/xtradb/include/fil0crypt.h
index 199f5a63786b6fcd648be0aa109254193f3e3dd5..9c6a9ec305b1f1994033dccf1755a5764fbba664 100644
--- a/storage/xtradb/include/fil0crypt.h
+++ b/storage/xtradb/include/fil0crypt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fil0crypt.ic b/storage/xtradb/include/fil0crypt.ic
index cb9ba083466b79a456ebbe73dae44b7427e74138..0c3b0114487392e8e443e622037107145aeb6a90 100644
--- a/storage/xtradb/include/fil0crypt.ic
+++ b/storage/xtradb/include/fil0crypt.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fil0fil.h b/storage/xtradb/include/fil0fil.h
index 7be4d0380e09659e39c0791923f1a84726337574..a4274f4d8a6d98c1e43663b4ceceb06f275f4b99 100644
--- a/storage/xtradb/include/fil0fil.h
+++ b/storage/xtradb/include/fil0fil.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -841,6 +841,18 @@ fil_op_log_parse_or_replay(
 				only be parsed but not replayed */
 	ulint	log_flags);	/*!< in: redo log flags
 				(stored in the page number parameter) */
+
+/** Determine whether a table can be accessed in operations that are
+not (necessarily) protected by meta-data locks.
+(Rollback would generally be protected, but rollback of
+FOREIGN KEY CASCADE/SET NULL is not protected by meta-data locks
+but only by InnoDB table locks, which may be broken by
+lock_remove_all_on_table().)
+@param[in]	table	persistent table
+checked @return whether the table is accessible */
+UNIV_INTERN bool fil_table_accessible(const dict_table_t* table)
+	MY_ATTRIBUTE((warn_unused_result, nonnull));
+
 /** Delete a tablespace and associated .ibd file.
 @param[in]	id		tablespace identifier
 @param[in]	drop_ahi	whether to drop the adaptive hash index
diff --git a/storage/xtradb/include/fil0fil.ic b/storage/xtradb/include/fil0fil.ic
index 3f21c5293081e17e044f2a0be11676a3c286c306..e9e681ffbef128deab19c1a0312d8915722b2167 100644
--- a/storage/xtradb/include/fil0fil.ic
+++ b/storage/xtradb/include/fil0fil.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fil0pagecompress.h b/storage/xtradb/include/fil0pagecompress.h
index 934372c55b2a45169f07b4e0d11d21ab37aac309..c2f94247d2af10eab786ee0ee3258fbc9580be21 100644
--- a/storage/xtradb/include/fil0pagecompress.h
+++ b/storage/xtradb/include/fil0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fsp0fsp.h b/storage/xtradb/include/fsp0fsp.h
index bc81a9c126b0736ba8df1c96bcee5e0ec7150f58..b31a75745296e9f8cfb9acef8a21c6e8e8074bc4 100644
--- a/storage/xtradb/include/fsp0fsp.h
+++ b/storage/xtradb/include/fsp0fsp.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fsp0fsp.ic b/storage/xtradb/include/fsp0fsp.ic
index ee4cb1f32c73b415ea218771ba3734a448082127..f7b047171f74699c55483b9496af15e439ba5362 100644
--- a/storage/xtradb/include/fsp0fsp.ic
+++ b/storage/xtradb/include/fsp0fsp.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fsp0pagecompress.h b/storage/xtradb/include/fsp0pagecompress.h
index c623d11c32607f0d5f842666b8f2031c5c7bd123..0dfbc258e0512caaeac42c2e776ae2e9a37e6e99 100644
--- a/storage/xtradb/include/fsp0pagecompress.h
+++ b/storage/xtradb/include/fsp0pagecompress.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fsp0pagecompress.ic b/storage/xtradb/include/fsp0pagecompress.ic
index 99d0dfb3c7cbdfee7b60fe659c0f1550fa58c4be..159b0526b8cbc4a8b4d84430d018115d86cc26d1 100644
--- a/storage/xtradb/include/fsp0pagecompress.ic
+++ b/storage/xtradb/include/fsp0pagecompress.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fsp0types.h b/storage/xtradb/include/fsp0types.h
index 7152d65054fd339486f400e57d6056e48711f027..f2ea27a9d5413f4ff90e0bab23a6742bee170c4d 100644
--- a/storage/xtradb/include/fsp0types.h
+++ b/storage/xtradb/include/fsp0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fts0ast.h b/storage/xtradb/include/fts0ast.h
index 983a35797731b353d17ea4e8fa9c61f7284a28b4..b7d467e00822bde5352ddee47c7a4bde81250752 100644
--- a/storage/xtradb/include/fts0ast.h
+++ b/storage/xtradb/include/fts0ast.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fts0fts.h b/storage/xtradb/include/fts0fts.h
index ce30a17c4b4a765b6e904f139f301de36eadd043..a1fab65973229bda771543fb384ab59c32f8da1d 100644
--- a/storage/xtradb/include/fts0fts.h
+++ b/storage/xtradb/include/fts0fts.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2016, 2017, MariaDB Corporation.
+Copyright (c) 2016, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -151,7 +151,6 @@ do {								\
 	(fts_table)->suffix = m_suffix;				\
         (fts_table)->type = m_type;				\
         (fts_table)->table_id = m_table->id;			\
-        (fts_table)->parent = m_table->name;			\
         (fts_table)->table = m_table;				\
 } while (0);
 
@@ -160,7 +159,6 @@ do {								\
 	(fts_table)->suffix = m_suffix;				\
         (fts_table)->type = m_type;				\
         (fts_table)->table_id = m_index->table->id;		\
-        (fts_table)->parent = m_index->table->name;		\
         (fts_table)->table = m_index->table;			\
         (fts_table)->index_id = m_index->id;			\
 } while (0);
@@ -265,10 +263,6 @@ struct fts_result_t {
 table id and the index id to generate the column specific FTS auxiliary
 table name. */
 struct fts_table_t {
-	const char*	parent;		/*!< Parent table name, this is
-					required only for the database
-					name */
-
 	fts_table_type_t
 			type;		/*!< The auxiliary table type */
 
@@ -373,11 +367,6 @@ extern bool		fts_need_sync;
 /** Maximum possible Fulltext word length (in characters) */
 #define FTS_MAX_WORD_LEN_IN_CHAR	HA_FT_MAXCHARLEN
 
-/** Variable specifying the table that has Fulltext index to display its
-content through information schema table */
-extern char*		fts_internal_tbl_name;
-extern char*		fts_internal_tbl_name2;
-
 #define	fts_que_graph_free(graph)			\
 do {							\
 	mutex_enter(&dict_sys->mutex);			\
@@ -424,7 +413,6 @@ fts_update_next_doc_id(
 /*===================*/
 	trx_t*			trx,		/*!< in/out: transaction */
 	const dict_table_t*	table,		/*!< in: table */
-	const char*		table_name,	/*!< in: table name, or NULL */
 	doc_id_t		doc_id)		/*!< in: DOC ID to set */
 	MY_ATTRIBUTE((nonnull(2)));
 
@@ -436,13 +424,11 @@ fts_doc_ids_t*
 fts_doc_ids_create(void);
 /*=====================*/
 
-/******************************************************************//**
-Free a fts_doc_ids_t. */
-UNIV_INTERN
-void
-fts_doc_ids_free(
-/*=============*/
-	fts_doc_ids_t*	doc_ids);		/*!< in: doc_ids to free */
+/** Free fts_doc_ids_t */
+inline void fts_doc_ids_free(fts_doc_ids_t* doc_ids)
+{
+	mem_heap_free(static_cast(doc_ids->self_heap->arg));
+}
 
 /******************************************************************//**
 Notify the FTS system about an operation on an FTS-indexed table. */
diff --git a/storage/xtradb/include/fts0opt.h b/storage/xtradb/include/fts0opt.h
index 92eaf8270d2af5f78ad19e22d160cc05f2b64964..e8bd4be95b7af4b2ad03cb145e435e269e6d9275 100644
--- a/storage/xtradb/include/fts0opt.h
+++ b/storage/xtradb/include/fts0opt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fts0priv.h b/storage/xtradb/include/fts0priv.h
index a3936f54a48c08d655203f97e986fcea1f08bb69..266534c9511ea7e514deae1e3a1ac6ba668a1af5 100644
--- a/storage/xtradb/include/fts0priv.h
+++ b/storage/xtradb/include/fts0priv.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -132,16 +133,15 @@ fts_eval_sql(
 	trx_t*		trx,		/*!< in: transaction */
 	que_t*		graph)		/*!< in: Parsed statement */
 	MY_ATTRIBUTE((nonnull, warn_unused_result));
-/******************************************************************//**
-Construct the name of an ancillary FTS table for the given table.
-@return own: table name, must be freed with mem_free() */
+
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[out]	table_name	a name up to MAX_FULL_NAME_LEN
+@param[in]	dict_locked	whether dict_sys->mutex is being held */
 UNIV_INTERN
-char*
-fts_get_table_name(
-/*===============*/
-	const fts_table_t*
-			fts_table)	/*!< in: FTS aux table info */
-	MY_ATTRIBUTE((nonnull, malloc, warn_unused_result));
+void fts_get_table_name(const fts_table_t* fts_table, char* table_name,
+			bool dict_locked = false)
+	MY_ATTRIBUTE((nonnull));
 /******************************************************************//**
 Construct the column specification part of the SQL string for selecting the
 indexed FTS columns for the given table. Adds the necessary bound
@@ -597,15 +597,11 @@ fts_get_table_id(
 					FTS_AUX_MIN_TABLE_ID_LENGTH bytes
 					long */
 	MY_ATTRIBUTE((nonnull, warn_unused_result));
-/******************************************************************//**
-Construct the prefix name of an FTS table.
-@return own: table name, must be freed with mem_free() */
-UNIV_INTERN
-char*
-fts_get_table_name_prefix(
-/*======================*/
-	const fts_table_t*
-			fts_table)	/*!< in: Auxiliary table type */
+/** Construct the name of an internal FTS table for the given table.
+@param[in]	fts_table	metadata on fulltext-indexed table
+@param[in]	dict_locked	whether dict_sys->mutex is being held
+@return	the prefix, must be freed with ut_free() */
+UNIV_INTERN char* fts_get_table_name_prefix(const fts_table_t* fts_table)
 	MY_ATTRIBUTE((nonnull, malloc, warn_unused_result));
 /******************************************************************//**
 Add node positions. */
diff --git a/storage/xtradb/include/fts0priv.ic b/storage/xtradb/include/fts0priv.ic
index 88f2d67c7b898b8653de978b489143bf9df696a7..6d52edc75a1589cbf8b80d505e56db67404dac59 100644
--- a/storage/xtradb/include/fts0priv.ic
+++ b/storage/xtradb/include/fts0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fts0types.h b/storage/xtradb/include/fts0types.h
index 9ecd9080881c3e7810eb56d0c99f78c68b6daba0..3cb01a92df03be016402c493169a832f44792c2f 100644
--- a/storage/xtradb/include/fts0types.h
+++ b/storage/xtradb/include/fts0types.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2016, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -122,7 +123,8 @@ struct fts_sync_t {
 	doc_id_t	max_doc_id;	/*!< The doc id at which the cache was
 					noted as being full, we use this to
 					set the upper_limit field */
-	ib_time_t	start_time;	/*!< SYNC start time */
+	time_t		start_time;	/*!< SYNC start time; only used if
+					fts_enable_diag_print */
 	bool		in_progress;	/*!< flag whether sync is in progress.*/
 	bool		unlock_cache;	/*!< flag whether unlock cache when
 					write fts node */
diff --git a/storage/xtradb/include/fts0types.ic b/storage/xtradb/include/fts0types.ic
index f0dfd023a70afd575618c9bed27bd26fa659c1cd..5e29cf6d8c59dca10d924c534cd052f5610e005a 100644
--- a/storage/xtradb/include/fts0types.ic
+++ b/storage/xtradb/include/fts0types.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fts0vlc.ic b/storage/xtradb/include/fts0vlc.ic
index e79bcf593477c6b9a3f60d96db8f7415a49a7860..75d8535057e8bc2f2c3f3be881579185ef309086 100644
--- a/storage/xtradb/include/fts0vlc.ic
+++ b/storage/xtradb/include/fts0vlc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fut0fut.h b/storage/xtradb/include/fut0fut.h
index 851cdb44cdf175989521604d2bcf743d21ea3be8..4f7b9af2e5e8736778c4be60d54ecd17e2f2e4ac 100644
--- a/storage/xtradb/include/fut0fut.h
+++ b/storage/xtradb/include/fut0fut.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fut0fut.ic b/storage/xtradb/include/fut0fut.ic
index 15c964df6c7e39aacde475c65a227801bab64857..57af9a511e38975bb6990af49fc4c8df0cb48a0d 100644
--- a/storage/xtradb/include/fut0fut.ic
+++ b/storage/xtradb/include/fut0fut.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fut0lst.h b/storage/xtradb/include/fut0lst.h
index 8554cc60cdde4c1c019c83b1075a63970447aa6a..f8a99bf1bd41abdf0edfa346c1fd8c5640fe1082 100644
--- a/storage/xtradb/include/fut0lst.h
+++ b/storage/xtradb/include/fut0lst.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/fut0lst.ic b/storage/xtradb/include/fut0lst.ic
index d18cf21378f520a77073d3a97a66540da07bb705..ba617ff0db58b2eaf79a1715816bd66bb7dd65d3 100644
--- a/storage/xtradb/include/fut0lst.ic
+++ b/storage/xtradb/include/fut0lst.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ha0ha.h b/storage/xtradb/include/ha0ha.h
index 58eb581e76a71d21dab75c8a327c24cc0f72e296..d28f8c72a38c7e51a8c76370b049925306aed384 100644
--- a/storage/xtradb/include/ha0ha.h
+++ b/storage/xtradb/include/ha0ha.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ha0ha.ic b/storage/xtradb/include/ha0ha.ic
index 9d0e396e2002c4ddfcc61360802f377aa9bbcafe..fdcaa593bdfffd6a9355904efff085fa51304a87 100644
--- a/storage/xtradb/include/ha0ha.ic
+++ b/storage/xtradb/include/ha0ha.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ha0storage.h b/storage/xtradb/include/ha0storage.h
index 0073930b502ed5164224a6831167477f6f1dfd19..d4e680a10a3ebf783ddd5233f64bd16c66df57ac 100644
--- a/storage/xtradb/include/ha0storage.h
+++ b/storage/xtradb/include/ha0storage.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ha0storage.ic b/storage/xtradb/include/ha0storage.ic
index 7150ca045ece1d271aabffeea8355de8fdd4ffff..03df7be5e737a405cef3044d9b61b87eb57c9a05 100644
--- a/storage/xtradb/include/ha0storage.ic
+++ b/storage/xtradb/include/ha0storage.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ha_prototypes.h b/storage/xtradb/include/ha_prototypes.h
index 3f3c4f28cedd3f0723261bf62d48f3459a33541d..50b223d34f87d3389904fc0815c02a767a90254f 100644
--- a/storage/xtradb/include/ha_prototypes.h
+++ b/storage/xtradb/include/ha_prototypes.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/handler0alter.h b/storage/xtradb/include/handler0alter.h
index 63379ad93716be302a0680c7495d10d665449f5e..ca71edb42fc9517306116b91d898487c08b666d3 100644
--- a/storage/xtradb/include/handler0alter.h
+++ b/storage/xtradb/include/handler0alter.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/hash0hash.h b/storage/xtradb/include/hash0hash.h
index 68d3c6ace4e2c61a18eb9d3b0e963a9df5234ae3..43fb7201dcba805d2f9f5b5c5991a2105c13b7f7 100644
--- a/storage/xtradb/include/hash0hash.h
+++ b/storage/xtradb/include/hash0hash.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/hash0hash.ic b/storage/xtradb/include/hash0hash.ic
index e4822538e1980ea461aa2ff35ad0d2fa3cab51ba..3d93cc12e3267499fa2959e265670fae661e7a23 100644
--- a/storage/xtradb/include/hash0hash.ic
+++ b/storage/xtradb/include/hash0hash.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ibuf0ibuf.h b/storage/xtradb/include/ibuf0ibuf.h
index 0b325b68a84fb74dccafb6af36ff6584effaa964..16a11c408a3b74d86bcf154010262c3ef84bded7 100644
--- a/storage/xtradb/include/ibuf0ibuf.h
+++ b/storage/xtradb/include/ibuf0ibuf.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ibuf0ibuf.ic b/storage/xtradb/include/ibuf0ibuf.ic
index a5df9f7b6b433b743aacaaeec6b5b812bd44baff..d26a8c60a04cf7bb005e01e27c79fcd25c257419 100644
--- a/storage/xtradb/include/ibuf0ibuf.ic
+++ b/storage/xtradb/include/ibuf0ibuf.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ibuf0types.h b/storage/xtradb/include/ibuf0types.h
index 3fdbf078b0ba2dd152f454755ad205cc82759a15..6b7c47208a093ee937c2f0db38c3d2b77a9fa1d7 100644
--- a/storage/xtradb/include/ibuf0types.h
+++ b/storage/xtradb/include/ibuf0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/lock0iter.h b/storage/xtradb/include/lock0iter.h
index 0054850b5263e0a601de6d560c6f809b191313dc..e63ed54bbd0bae44ef7189ceacb7281da1d2b6db 100644
--- a/storage/xtradb/include/lock0iter.h
+++ b/storage/xtradb/include/lock0iter.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/lock0lock.h b/storage/xtradb/include/lock0lock.h
index 5aff67db0ee1c921f373fc49e8101cc921df6b96..878a42ea81bb2f621edcd1f3dda717bcb0664f9c 100644
--- a/storage/xtradb/include/lock0lock.h
+++ b/storage/xtradb/include/lock0lock.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -629,22 +629,6 @@ lock_report_trx_id_insanity(
 	trx_id_t	max_trx_id)	/*!< in: trx_sys_get_max_trx_id() */
 	MY_ATTRIBUTE((nonnull));
 /*********************************************************************//**
-Prints info of a table lock. */
-UNIV_INTERN
-void
-lock_table_print(
-/*=============*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock);	/*!< in: table type lock */
-/*********************************************************************//**
-Prints info of a record lock. */
-UNIV_INTERN
-void
-lock_rec_print(
-/*===========*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock);	/*!< in: record type lock */
-/*********************************************************************//**
 Prints info of locks for all transactions.
 @return FALSE if not able to obtain lock mutex and exits without
 printing info */
diff --git a/storage/xtradb/include/lock0lock.ic b/storage/xtradb/include/lock0lock.ic
index 736936954cbed16fc29b3a8ef54fce96aac5a94b..bce04e582d9f3da0fa2695235fa18529b3da7500 100644
--- a/storage/xtradb/include/lock0lock.ic
+++ b/storage/xtradb/include/lock0lock.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/lock0priv.h b/storage/xtradb/include/lock0priv.h
index 7a74cbdc2e3d611015777d0f4f71d6ff3ef9ebf4..3b2c7f0802021785662f11992a09b254f2cbf53b 100644
--- a/storage/xtradb/include/lock0priv.h
+++ b/storage/xtradb/include/lock0priv.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -74,10 +74,14 @@ struct lock_t {
 					lock */
 	dict_index_t*	index;		/*!< index for a record lock */
 
-	/* Statistics for how long lock has been held and time
-	how long this lock had to be waited before it was granted */
-	time_t		requested_time; /*!< Lock request time */
-	ulint		wait_time;	/*!< Time waited this lock or 0 */
+	/** time(NULL) of the lock request creation.
+	Used for computing wait_time and diagnostics only.
+	Note: bogus durations may be reported
+	when the system time is adjusted! */
+	time_t		requested_time;
+	/** Cumulated wait time in seconds.
+	Note: may be bogus when the system time is adjusted! */
+	ulint		wait_time;
 
 	union {
 		lock_table_t	tab_lock;/*!< table lock */
diff --git a/storage/xtradb/include/lock0priv.ic b/storage/xtradb/include/lock0priv.ic
index 6b70dc33d3ca62d5f6776b27e4868d4efeb4f981..02c4ff093c8057a3a8d45e18ccc89574e2a77536 100644
--- a/storage/xtradb/include/lock0priv.ic
+++ b/storage/xtradb/include/lock0priv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/lock0types.h b/storage/xtradb/include/lock0types.h
index cf32e72f8640ebbec51a5d4118913cbc9cdc836e..90c6f6cea4c29b88767054d3678b127d9708f402 100644
--- a/storage/xtradb/include/lock0types.h
+++ b/storage/xtradb/include/lock0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/log0crypt.h b/storage/xtradb/include/log0crypt.h
index b7a221e0a8172892a13bd349d5f1d1067b5da1ce..97ceac7b8a7d091980f0d6e48ffecceca3f5a91e 100644
--- a/storage/xtradb/include/log0crypt.h
+++ b/storage/xtradb/include/log0crypt.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
diff --git a/storage/xtradb/include/log0log.h b/storage/xtradb/include/log0log.h
index 916e2ee3e604747f9d6d2e929bf72eb939d0fe34..5f4ca08c03c311dae83bbe6e697bce7ad0bf15ab 100644
--- a/storage/xtradb/include/log0log.h
+++ b/storage/xtradb/include/log0log.h
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/log0log.ic b/storage/xtradb/include/log0log.ic
index 70458fa546b7504f88f029bc303d42897817cf67..b6552446260d54dcf90bfd9479c421ea7f865865 100644
--- a/storage/xtradb/include/log0log.ic
+++ b/storage/xtradb/include/log0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/log0online.h b/storage/xtradb/include/log0online.h
index 1a53b9efa9cd167e391f29e4caaa54972d742958..3cdd6bc6dab050677f5e1a778aa26985d553e888 100644
--- a/storage/xtradb/include/log0online.h
+++ b/storage/xtradb/include/log0online.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
-Street, Fifth Floor, Boston, MA 02110-1301, USA
+Street, Fifth Floor, Boston, MA 02110-1335  USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/log0recv.h b/storage/xtradb/include/log0recv.h
index 73d53d2ddab0e7dc344cca4709d5b5c9ba7c42cf..afdc5ccd98e0d9e2b32594b46d9806f0ac83c3db 100644
--- a/storage/xtradb/include/log0recv.h
+++ b/storage/xtradb/include/log0recv.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -431,7 +431,7 @@ struct recv_sys_t{
 				log record, or there is a log parsing
 				buffer overflow */
 	/** the time when progress was last reported */
-	ib_time_t	progress_time;
+	time_t		progress_time;
 #ifdef UNIV_LOG_ARCHIVE
 	log_group_t*	archive_group;
 				/*!< in archive recovery: the log group whose
@@ -449,7 +449,7 @@ struct recv_sys_t{
 	@param[in]	time	the current time
 	@return	whether progress should be reported
 		(the last report was at least 15 seconds ago) */
-	bool report(ib_time_t time)
+	bool report(time_t time)
 	{
 		if (time - progress_time < 15) {
 			return false;
diff --git a/storage/xtradb/include/log0recv.ic b/storage/xtradb/include/log0recv.ic
index b29272f4672a179a8b8a8742652daadae3a4bad3..7d17e9dc9fc8ab360894f894bc34d6d0b0e795af 100644
--- a/storage/xtradb/include/log0recv.ic
+++ b/storage/xtradb/include/log0recv.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mach0data.h b/storage/xtradb/include/mach0data.h
index 2e16634a6c222803f8592ca10c8aa2c919ec38fa..5f3559b7ca666ad392a5051666696ac4f7b47373 100644
--- a/storage/xtradb/include/mach0data.h
+++ b/storage/xtradb/include/mach0data.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mach0data.ic b/storage/xtradb/include/mach0data.ic
index 3b1cf9c0378bb819008b60ceedc778f1c4a52caa..125bf09d6822067599d8d34340ecf372c96ba6e3 100644
--- a/storage/xtradb/include/mach0data.ic
+++ b/storage/xtradb/include/mach0data.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0dbg.h b/storage/xtradb/include/mem0dbg.h
index cc339b8291078a8b5fe09a8b7769a4fc1a186a56..448e5f80f5da6a8fefc4e42853396edf66968417 100644
--- a/storage/xtradb/include/mem0dbg.h
+++ b/storage/xtradb/include/mem0dbg.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0dbg.ic b/storage/xtradb/include/mem0dbg.ic
index ec60ed35337f3cf92168527dac3f885aa61db981..69bb5fd8d90352e7e43347c4ca760ec79cda583c 100644
--- a/storage/xtradb/include/mem0dbg.ic
+++ b/storage/xtradb/include/mem0dbg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0mem.h b/storage/xtradb/include/mem0mem.h
index de9b8b29fd9c79f0f4fffae5aa4c1d3b8147d1a8..b01a0fdee73856a34b5f90f609ab4719e61ceafe 100644
--- a/storage/xtradb/include/mem0mem.h
+++ b/storage/xtradb/include/mem0mem.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0mem.ic b/storage/xtradb/include/mem0mem.ic
index 2b4638718fd11770488d4ecb8408aa6e66c12ede..3010bbf5c021496a4ce438aa2f242162ec452bff 100644
--- a/storage/xtradb/include/mem0mem.ic
+++ b/storage/xtradb/include/mem0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0pool.h b/storage/xtradb/include/mem0pool.h
index a65ba50fdf9cae7ef173575acad26a10f1e6e7e5..d6fb23f74ad33f76634e38a93f7a8949f27b177c 100644
--- a/storage/xtradb/include/mem0pool.h
+++ b/storage/xtradb/include/mem0pool.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mem0pool.ic b/storage/xtradb/include/mem0pool.ic
index f4bafb8ba63ea1999828991f0229c4d32d547551..d99daf59e13fddf254a42117d481f66869adff10 100644
--- a/storage/xtradb/include/mem0pool.ic
+++ b/storage/xtradb/include/mem0pool.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mtr0log.h b/storage/xtradb/include/mtr0log.h
index 18a345d050fb66890d0325048d2461922aa3bfd1..929f68122aff11cb723b31ae6a546cb7e47a50be 100644
--- a/storage/xtradb/include/mtr0log.h
+++ b/storage/xtradb/include/mtr0log.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mtr0log.ic b/storage/xtradb/include/mtr0log.ic
index 8c891fac55babcf1a08eac987d184124417bd6a0..a4d333544ccf79a127a53afeca1688e53189d8aa 100644
--- a/storage/xtradb/include/mtr0log.ic
+++ b/storage/xtradb/include/mtr0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mtr0mtr.h b/storage/xtradb/include/mtr0mtr.h
index 42a57f1022a1e3cd621b6e61d33af97103d866da..2d3da4d2a256a4326c5f531dc0c3e766fa1bf394 100644
--- a/storage/xtradb/include/mtr0mtr.h
+++ b/storage/xtradb/include/mtr0mtr.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mtr0mtr.ic b/storage/xtradb/include/mtr0mtr.ic
index 04c39cf7f7ee7174e11125bc122a428ff29d99de..a44728463ae73908d78c89b91c9c33c4f072bbc0 100644
--- a/storage/xtradb/include/mtr0mtr.ic
+++ b/storage/xtradb/include/mtr0mtr.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/mtr0types.h b/storage/xtradb/include/mtr0types.h
index 43368c0b7260e9372828683d19541e6dedb23101..715e9d8b5789a38931a04f819acf7a2e40cac680 100644
--- a/storage/xtradb/include/mtr0types.h
+++ b/storage/xtradb/include/mtr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0file.h b/storage/xtradb/include/os0file.h
index 5e93b3454c73632559c50120bb855eb9d850bfda..dffacb81b5ef65515a8b9b4d3e65641ff771564a 100644
--- a/storage/xtradb/include/os0file.h
+++ b/storage/xtradb/include/os0file.h
@@ -22,7 +22,7 @@ Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 ***********************************************************************/
 
diff --git a/storage/xtradb/include/os0file.ic b/storage/xtradb/include/os0file.ic
index a2011da354591731eba79c1f4aa0c94002995a6d..612e3e4c1ac0ea11a05d2a9e36adc9362c8d162b 100644
--- a/storage/xtradb/include/os0file.ic
+++ b/storage/xtradb/include/os0file.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0once.h b/storage/xtradb/include/os0once.h
index a8bbaf1d2d4cbdafbb4e69b0f53f716f4e1674a7..aaf2db1174247ce842757925d8e8d7195d2a73dc 100644
--- a/storage/xtradb/include/os0once.h
+++ b/storage/xtradb/include/os0once.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0proc.h b/storage/xtradb/include/os0proc.h
index d6aafccf48e6f5daaca0841609b7374a9a128d7e..ffb53e05c9f729e1204a6520811034a46d673ad2 100644
--- a/storage/xtradb/include/os0proc.h
+++ b/storage/xtradb/include/os0proc.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0proc.ic b/storage/xtradb/include/os0proc.ic
index 506f4f8ce0c1d134c74456c92ffa3f35986f1e6c..4726eb56f6ddd8d2ac60b324e3e6aad1cf9257cb 100644
--- a/storage/xtradb/include/os0proc.ic
+++ b/storage/xtradb/include/os0proc.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0stacktrace.h b/storage/xtradb/include/os0stacktrace.h
index e79347c6189f4615d7110c278bd47c452389593c..ba09c0041e87c2163bd081c9a14b0eb6f7c9ee33 100644
--- a/storage/xtradb/include/os0stacktrace.h
+++ b/storage/xtradb/include/os0stacktrace.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0sync.h b/storage/xtradb/include/os0sync.h
index 7bc591b29112df4277036b7bf9376a331b0cdaec..d2dfcca54485a4479e04dc259abf251bdea11eec 100644
--- a/storage/xtradb/include/os0sync.h
+++ b/storage/xtradb/include/os0sync.h
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0sync.ic b/storage/xtradb/include/os0sync.ic
index 5f4b0d24089904bf929cb9c34585d970daccbc03..90c28f279e7f22ac641bac732cd1007d205c5911 100644
--- a/storage/xtradb/include/os0sync.ic
+++ b/storage/xtradb/include/os0sync.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0thread.h b/storage/xtradb/include/os0thread.h
index 7865358b0f7cd277de409d15b70ce307a5294894..619f984d5009a16fcca699845abe3717783ca36e 100644
--- a/storage/xtradb/include/os0thread.h
+++ b/storage/xtradb/include/os0thread.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/os0thread.ic b/storage/xtradb/include/os0thread.ic
index 0622d22f2dcf806c30d9d9d182f2687755f7100a..15f9b277fa1287a9831ca1ef10638d70f53f93c0 100644
--- a/storage/xtradb/include/os0thread.ic
+++ b/storage/xtradb/include/os0thread.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0cur.h b/storage/xtradb/include/page0cur.h
index f04667ff29c2ca9c5c4e1ff1f53de859a8eccdfc..aec7c63563cc404f68a05998dedea3ab47f418d3 100644
--- a/storage/xtradb/include/page0cur.h
+++ b/storage/xtradb/include/page0cur.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0cur.ic b/storage/xtradb/include/page0cur.ic
index 6e068d9f739c30c804ec069d8d5aedf04ea26a32..9d0e8408c54f76a86bd747edb733da54e1314958 100644
--- a/storage/xtradb/include/page0cur.ic
+++ b/storage/xtradb/include/page0cur.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0page.h b/storage/xtradb/include/page0page.h
index 26e71ff80818cae40be43bc5efbc424f945e56fb..2efc2d302a1014592f66f22f2b95b24fe2501754 100644
--- a/storage/xtradb/include/page0page.h
+++ b/storage/xtradb/include/page0page.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0page.ic b/storage/xtradb/include/page0page.ic
index b37715b53be7f641c166cadc8da55a24bc0ddf70..ba3957bb3693c0fa001b1052c1ec6f7d1be74d82 100644
--- a/storage/xtradb/include/page0page.ic
+++ b/storage/xtradb/include/page0page.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0types.h b/storage/xtradb/include/page0types.h
index 3b53de6cc2b1fbcf5c386d5db4960d1894554efa..8d8d2aa92bc8be94fd8088135c77716618eb3921 100644
--- a/storage/xtradb/include/page0types.h
+++ b/storage/xtradb/include/page0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0zip.h b/storage/xtradb/include/page0zip.h
index adafaa6d8b6ec8098ca4ebd9acc13453a2fa0085..7f1328eebc68873b7b514a474304f2b8b1bb7269 100644
--- a/storage/xtradb/include/page0zip.h
+++ b/storage/xtradb/include/page0zip.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/page0zip.ic b/storage/xtradb/include/page0zip.ic
index 3fa8a08c4f91f13491a7c34c3a50887f9fa8d59a..45979e4d0842ce3425cf2794fd46ef16a78de97c 100644
--- a/storage/xtradb/include/page0zip.ic
+++ b/storage/xtradb/include/page0zip.ic
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0grm.h b/storage/xtradb/include/pars0grm.h
index 8e725fe95454eb83966a154d033c62cf0e6e1cff..d3228f7c0f95179ac57679d90e51dc4358deb7c0 100644
--- a/storage/xtradb/include/pars0grm.h
+++ b/storage/xtradb/include/pars0grm.h
@@ -18,7 +18,7 @@
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Boston, MA 02110-1335  USA.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
diff --git a/storage/xtradb/include/pars0opt.h b/storage/xtradb/include/pars0opt.h
index 1084d644c906a49e2e9072661832797175e2183a..ce3e4410ee75b90b961741a9f0f9519c4d7986b3 100644
--- a/storage/xtradb/include/pars0opt.h
+++ b/storage/xtradb/include/pars0opt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0opt.ic b/storage/xtradb/include/pars0opt.ic
index 786d911ca3d33c22405cd4296691c5d68094a777..99075c81d39039608117401fb4aa1b5a0f158d7e 100644
--- a/storage/xtradb/include/pars0opt.ic
+++ b/storage/xtradb/include/pars0opt.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0pars.h b/storage/xtradb/include/pars0pars.h
index 313380a40b454a1ab8ff6c8a8743a029ff7b2097..1032862b20deccbcc0d75884955a1c022a8212ef 100644
--- a/storage/xtradb/include/pars0pars.h
+++ b/storage/xtradb/include/pars0pars.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0pars.ic b/storage/xtradb/include/pars0pars.ic
index 4c88337a265d413ab781c4290e4f432b700782b4..f788f4479bfb14813b966009112fc9741095ab35 100644
--- a/storage/xtradb/include/pars0pars.ic
+++ b/storage/xtradb/include/pars0pars.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0sym.h b/storage/xtradb/include/pars0sym.h
index bcf73639228fe8d220debc1d585e8d464909eee1..d423f84ab5714c0a9728be1e6ec4f4a824c441a5 100644
--- a/storage/xtradb/include/pars0sym.h
+++ b/storage/xtradb/include/pars0sym.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0sym.ic b/storage/xtradb/include/pars0sym.ic
index 266c1a6310df2d89495fd37a6892c0dd950c2d0b..6401a525cc56591596f9082efebee03d4b33a80b 100644
--- a/storage/xtradb/include/pars0sym.ic
+++ b/storage/xtradb/include/pars0sym.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/pars0types.h b/storage/xtradb/include/pars0types.h
index 47f4b432d2037b90e68b8ed3cf96cb0ef7f5bed2..f5b695225c6e0c951fa1c72953d788e2d46208fe 100644
--- a/storage/xtradb/include/pars0types.h
+++ b/storage/xtradb/include/pars0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/que0que.h b/storage/xtradb/include/que0que.h
index 005f28d2af1ce8da946a098939558a09ff298458..b5c958ba7f5a4abbf0df24d732ec4b3dcf2642c8 100644
--- a/storage/xtradb/include/que0que.h
+++ b/storage/xtradb/include/que0que.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/que0que.ic b/storage/xtradb/include/que0que.ic
index eff5a86d958860a9f60eb217b6d5821ee86e1d0e..1775467781a5838484a82b19cedd70bd3fa8df9c 100644
--- a/storage/xtradb/include/que0que.ic
+++ b/storage/xtradb/include/que0que.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/que0types.h b/storage/xtradb/include/que0types.h
index 0f11cad301afea64724bf32659ac4746b5129d9f..025cf818ab3c23f2c434a94100b109b57a45d752 100644
--- a/storage/xtradb/include/que0types.h
+++ b/storage/xtradb/include/que0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/read0i_s.h b/storage/xtradb/include/read0i_s.h
index 11b63affe09e6f1ca19c4adea65e8ebda7721031..0bf928187c9ac63467446a369b86be3f4689f366 100644
--- a/storage/xtradb/include/read0i_s.h
+++ b/storage/xtradb/include/read0i_s.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/read0read.h b/storage/xtradb/include/read0read.h
index 2d6885884f77629d16489c0507d696d6a8e3680d..751943c36e61308af6ea3edfd24adc458b1085a1 100644
--- a/storage/xtradb/include/read0read.h
+++ b/storage/xtradb/include/read0read.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/read0read.ic b/storage/xtradb/include/read0read.ic
index 66bef8866c9122d9f9396f7b4fddbe36ff75f1c7..b0c30c719fde326211a579a3689441f2d991b561 100644
--- a/storage/xtradb/include/read0read.ic
+++ b/storage/xtradb/include/read0read.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/read0types.h b/storage/xtradb/include/read0types.h
index 969f4ebb637379d7fe35f79dc5d2e954c08ad331..1ad501d931df707630312cd858dfcd4f45485154 100644
--- a/storage/xtradb/include/read0types.h
+++ b/storage/xtradb/include/read0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/rem0cmp.h b/storage/xtradb/include/rem0cmp.h
index 65116229fdce4c129b6199a217d145512b42285a..828e1175e6e1c27bd958c01f37ceea95dfadcad0 100644
--- a/storage/xtradb/include/rem0cmp.h
+++ b/storage/xtradb/include/rem0cmp.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/rem0cmp.ic b/storage/xtradb/include/rem0cmp.ic
index 67a2dcacba1c6ac80be9d22c317b5dc261f8009b..9dee05a768c467e43d20f550066e66504c6f0a8c 100644
--- a/storage/xtradb/include/rem0cmp.ic
+++ b/storage/xtradb/include/rem0cmp.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/rem0rec.h b/storage/xtradb/include/rem0rec.h
index afc191e632dae953f6bb7b103d583c430e11cb4a..ec29eee97167c416df96fc60c8a352fd8b98c9c3 100644
--- a/storage/xtradb/include/rem0rec.h
+++ b/storage/xtradb/include/rem0rec.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/rem0rec.ic b/storage/xtradb/include/rem0rec.ic
index 122ea733065a1768b7ac8f8ca1a4ce445c35373a..e0d0682ff60dcab4899d94b6f635c227d6585f81 100644
--- a/storage/xtradb/include/rem0rec.ic
+++ b/storage/xtradb/include/rem0rec.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/rem0types.h b/storage/xtradb/include/rem0types.h
index 5da96066f8851284b1a5260f0b18d93f1642ea91..b78700e91a9a858fc6b9344a40a0bd80bf45e53f 100644
--- a/storage/xtradb/include/rem0types.h
+++ b/storage/xtradb/include/rem0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0ext.h b/storage/xtradb/include/row0ext.h
index a098e2f9b2995508ed13de02b47ca008e3c5463e..02f46867da62b3191c929b589b40d657f6127a41 100644
--- a/storage/xtradb/include/row0ext.h
+++ b/storage/xtradb/include/row0ext.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0ext.ic b/storage/xtradb/include/row0ext.ic
index 39e150d91d5ff563999f873038ad17494ba2c4ab..913b51b34d207d6d3855a0a2a142928c63610e5b 100644
--- a/storage/xtradb/include/row0ext.ic
+++ b/storage/xtradb/include/row0ext.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0ftsort.h b/storage/xtradb/include/row0ftsort.h
index b006385371d1794a998ec1b8a22e8d2541de4bbe..7b99eb3773b720a27e1dcf7ab635abde60079e49 100644
--- a/storage/xtradb/include/row0ftsort.h
+++ b/storage/xtradb/include/row0ftsort.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0import.h b/storage/xtradb/include/row0import.h
index a821c230a3b264e27258c56403d27f9c0b46f055..4f9f372ffa151439fed383f2bb4731ecb3a84913 100644
--- a/storage/xtradb/include/row0import.h
+++ b/storage/xtradb/include/row0import.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0import.ic b/storage/xtradb/include/row0import.ic
index c5bbab49f6fbb42a00973e7058cce64ff884fecb..75b45e7710ab027c3e084ca28afa3a33ec19ed20 100644
--- a/storage/xtradb/include/row0import.ic
+++ b/storage/xtradb/include/row0import.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0ins.h b/storage/xtradb/include/row0ins.h
index 71ee39070ef2d57417237cb9c8fccc8374493934..54e7fa6d1fbc350b4c2e9864b69a18b22f2b29df 100644
--- a/storage/xtradb/include/row0ins.h
+++ b/storage/xtradb/include/row0ins.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0ins.ic b/storage/xtradb/include/row0ins.ic
index 9c191d869a232c7495f166a6d6749e21c0291a53..f1f0a4497260ec85e34c6730381e624bd1af7a4e 100644
--- a/storage/xtradb/include/row0ins.ic
+++ b/storage/xtradb/include/row0ins.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0log.h b/storage/xtradb/include/row0log.h
index 5ff148ff045d6caff52a3c7496d64daaa2ad8a8b..6d91e25e6bd8ea19b6989c0274178e54e451302b 100644
--- a/storage/xtradb/include/row0log.h
+++ b/storage/xtradb/include/row0log.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0log.ic b/storage/xtradb/include/row0log.ic
index b0f37dbd8e727c9ede7da0c335e6cfec0648fa9a..53f99da15fdc70d28027a477e22d186901f979e0 100644
--- a/storage/xtradb/include/row0log.ic
+++ b/storage/xtradb/include/row0log.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0merge.h b/storage/xtradb/include/row0merge.h
index af21ef49cb734203142b0145d8238a12b87a1369..b00edb08d1833bf0f46858b513aa833e65f2c475 100644
--- a/storage/xtradb/include/row0merge.h
+++ b/storage/xtradb/include/row0merge.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/row0mysql.h b/storage/xtradb/include/row0mysql.h
index 4915e7c7a312b15eea9998bf279c560cb50feb0e..6580596550e621a3b34e028218963a66952c62ad 100644
--- a/storage/xtradb/include/row0mysql.h
+++ b/storage/xtradb/include/row0mysql.h
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2000, 2017, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -493,7 +493,7 @@ row_drop_table_for_mysql(
 	const char*	name,	/*!< in: table name */
 	trx_t*		trx,	/*!< in: dictionary transaction handle */
 	bool		drop_db,/*!< in: true=dropping whole database */
-	ibool		create_failed,/*!lock.wait_started */
 	ullint		trx_weight;	/*!< TRX_WEIGHT() */
 	ulint		trx_mysql_thread_id; /*!< thd_get_thread_id() */
 	const char*	trx_query;	/*!< MySQL statement being
diff --git a/storage/xtradb/include/trx0purge.h b/storage/xtradb/include/trx0purge.h
index 7b9b5dc49cd4c99c437de38133569f3b4864344b..5f05cc12012411b61fd117992b43105f385ab23d 100644
--- a/storage/xtradb/include/trx0purge.h
+++ b/storage/xtradb/include/trx0purge.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0purge.ic b/storage/xtradb/include/trx0purge.ic
index ca9cc1fb894081596883cb39975ca2c71f72d5f6..a32ecefe4b5818ad47efb1c01b5aa9bb9257245c 100644
--- a/storage/xtradb/include/trx0purge.ic
+++ b/storage/xtradb/include/trx0purge.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0rec.h b/storage/xtradb/include/trx0rec.h
index fef12548003c9aefb92ec5955b106890e682085c..ab0ea88467fc233afd659df9df4add29be419eb8 100644
--- a/storage/xtradb/include/trx0rec.h
+++ b/storage/xtradb/include/trx0rec.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0rec.ic b/storage/xtradb/include/trx0rec.ic
index 08704f6b821063b1a025078f1c65a38874d5d473..57d1e9aff0bf16500560a75aaa24cced09c5a413 100644
--- a/storage/xtradb/include/trx0rec.ic
+++ b/storage/xtradb/include/trx0rec.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0roll.h b/storage/xtradb/include/trx0roll.h
index 565079b17b4a03bc84aad8c686d46ed1019ecd1a..27d4521031b0dc3542e149dda2e54fa20f95446b 100644
--- a/storage/xtradb/include/trx0roll.h
+++ b/storage/xtradb/include/trx0roll.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0roll.ic b/storage/xtradb/include/trx0roll.ic
index 178e9bb730af14792f16ca56d572a67afadf5132..e6f9dd5ebcbc858897197e4f36bc3e9351afdf10 100644
--- a/storage/xtradb/include/trx0roll.ic
+++ b/storage/xtradb/include/trx0roll.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0rseg.h b/storage/xtradb/include/trx0rseg.h
index e2853df70456b9fa09e7382b0eb13ef65cff456a..b162129c39ce2807a46ef72fd73f874c8a48e55a 100644
--- a/storage/xtradb/include/trx0rseg.h
+++ b/storage/xtradb/include/trx0rseg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0rseg.ic b/storage/xtradb/include/trx0rseg.ic
index 30743da9b8c87d772401df49f2625f9f70487d76..4bcbebaf6d34bf64aceb179e210b051fa04ca3d4 100644
--- a/storage/xtradb/include/trx0rseg.ic
+++ b/storage/xtradb/include/trx0rseg.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0sys.h b/storage/xtradb/include/trx0sys.h
index 85c454c4cf902f2e0a8b51016750a556e014cf45..ed1820825fcb6387691a4fbf0dbeafcdb3282236 100644
--- a/storage/xtradb/include/trx0sys.h
+++ b/storage/xtradb/include/trx0sys.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0sys.ic b/storage/xtradb/include/trx0sys.ic
index 699148cff6d51b5418683c0eb6635efc1f8a218a..9e9b70f22bbee6bb6d7f3e749e3f41e131916287 100644
--- a/storage/xtradb/include/trx0sys.ic
+++ b/storage/xtradb/include/trx0sys.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0trx.h b/storage/xtradb/include/trx0trx.h
index b3a513b9b91678e4b9e1b3252d4f5f6f8effc857..448b24291265921210d7cb1edd90871f4680293d 100644
--- a/storage/xtradb/include/trx0trx.h
+++ b/storage/xtradb/include/trx0trx.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -917,10 +917,11 @@ struct trx_t{
 					when trx->in_rw_trx_list. Initially
 					set to TRX_ID_MAX. */
 
-	time_t		start_time;	/*!< time the trx state last time became
-					TRX_STATE_ACTIVE */
-	ib_uint64_t	start_time_micro;	/*!< start time of transaction in
-					microseconds */
+	/** wall-clock time of the latest transition to TRX_STATE_ACTIVE;
+	used for diagnostic purposes only */
+	time_t		start_time;
+	/** microsecond_interval_timer() of transaction start */
+	ulonglong	start_time_micro;
 	trx_id_t	id;		/*!< transaction id */
 	XID		xid;		/*!< X/Open XA transaction
 					identification to identify a
@@ -1102,7 +1103,7 @@ struct trx_t{
 	ulint		io_reads;
 	ib_uint64_t	io_read;
 	ulint		io_reads_wait_timer;
-	ib_uint64_t	lock_que_wait_ustarted;
+	ulonglong	lock_que_wait_nstarted;
 	ulint           lock_que_wait_timer;
 	ulint           innodb_que_wait_timer;
 	ulint           distinct_page_access;
diff --git a/storage/xtradb/include/trx0trx.ic b/storage/xtradb/include/trx0trx.ic
index 6b8078a55e83d27128fc01543ebea71409913b85..ee64136bd7f70841294b4be196aad6860f62694f 100644
--- a/storage/xtradb/include/trx0trx.ic
+++ b/storage/xtradb/include/trx0trx.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0types.h b/storage/xtradb/include/trx0types.h
index a0b398fffa1b99666d5ee3018073c08290a3121e..1c869bdd4ac572e9bd9fc4d11f23df928ed18833 100644
--- a/storage/xtradb/include/trx0types.h
+++ b/storage/xtradb/include/trx0types.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0undo.h b/storage/xtradb/include/trx0undo.h
index 0148cc61579360a9f311e580604804be88a5c559..751f56a948305beede445c6d7940f1a39651a6a2 100644
--- a/storage/xtradb/include/trx0undo.h
+++ b/storage/xtradb/include/trx0undo.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0undo.ic b/storage/xtradb/include/trx0undo.ic
index 577759d6c3da7975ec5836ae6005f8003e1caa72..4ab197f5767c34844303ed1803693da30b6f666d 100644
--- a/storage/xtradb/include/trx0undo.ic
+++ b/storage/xtradb/include/trx0undo.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/trx0xa.h b/storage/xtradb/include/trx0xa.h
index 4d5adc68dcd0d38c5629c606aaf786d63fb9bfee..cb5d67cf5de462023b765d39e37c10f47821700c 100644
--- a/storage/xtradb/include/trx0xa.h
+++ b/storage/xtradb/include/trx0xa.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/univ.i b/storage/xtradb/include/univ.i
index 93e910831444d2c70df02fe8a8e8e4cffb55e1ee..69d5cbac5d1c01645355f848f59f3b6fbd772c4b 100644
--- a/storage/xtradb/include/univ.i
+++ b/storage/xtradb/include/univ.i
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -45,10 +45,10 @@ Created 1/20/1994 Heikki Tuuri
 
 #define INNODB_VERSION_MAJOR	5
 #define INNODB_VERSION_MINOR	6
-#define INNODB_VERSION_BUGFIX	43
+#define INNODB_VERSION_BUGFIX	44
 
 #ifndef PERCONA_INNODB_VERSION
-#define PERCONA_INNODB_VERSION 84.3
+#define PERCONA_INNODB_VERSION 86.0
 #endif
 
 /* Enable UNIV_LOG_ARCHIVE in XtraDB */
diff --git a/storage/xtradb/include/usr0sess.h b/storage/xtradb/include/usr0sess.h
index b5c80b97b4389740861ec33ae6e3a5042f46e536..5978332d5818be0dba8c1799354301439f2dca1e 100644
--- a/storage/xtradb/include/usr0sess.h
+++ b/storage/xtradb/include/usr0sess.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/usr0sess.ic b/storage/xtradb/include/usr0sess.ic
index 284e59537fee62e2b3997618e6138a6879f13c92..65e404fb7d150500e74b0e74ebd5dd75e0bb39ee 100644
--- a/storage/xtradb/include/usr0sess.ic
+++ b/storage/xtradb/include/usr0sess.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/usr0types.h b/storage/xtradb/include/usr0types.h
index 6ba937cacc8aac3f6e950906a525529861b46783..693bb239a54f12f59b04db7c8c4051285c549518 100644
--- a/storage/xtradb/include/usr0types.h
+++ b/storage/xtradb/include/usr0types.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0bh.h b/storage/xtradb/include/ut0bh.h
index 1085736c7ab0f01d67555c053aeceae9d1eb8e16..bde310a7d446f2e33cd7adcfa88ce39bc0dd0812 100644
--- a/storage/xtradb/include/ut0bh.h
+++ b/storage/xtradb/include/ut0bh.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0bh.ic b/storage/xtradb/include/ut0bh.ic
index b11de5b8b3e37e1f176cb697dfcea1ced13a1ae2..579a487fab84d6ca0358f1235f7d6242900feacd 100644
--- a/storage/xtradb/include/ut0bh.ic
+++ b/storage/xtradb/include/ut0bh.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0byte.h b/storage/xtradb/include/ut0byte.h
index 4893ab9f9af20df27594a4eab3c4ff778900991e..eb75ecd0fee1b41c8d0d1ba02e3fc348b8f8e529 100644
--- a/storage/xtradb/include/ut0byte.h
+++ b/storage/xtradb/include/ut0byte.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0byte.ic b/storage/xtradb/include/ut0byte.ic
index 1a7af5ae33d6451a0f1346ca9aa6a56abc0519f8..504744ad21e12bb8a5ce3a901df75c9cf14f4dfe 100644
--- a/storage/xtradb/include/ut0byte.ic
+++ b/storage/xtradb/include/ut0byte.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0counter.h b/storage/xtradb/include/ut0counter.h
index 6fde8a7a638f0ee40122d9fb034fc901a60db1c7..d2a6c1eb3e3d35768a10a040f74f57c041e872f2 100644
--- a/storage/xtradb/include/ut0counter.h
+++ b/storage/xtradb/include/ut0counter.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0crc32.h b/storage/xtradb/include/ut0crc32.h
index ab1d2db9874c4b46e504e8f58ff7b63d86c1f430..49a1bd132dea9a26a64f040ced84a812f307e4eb 100644
--- a/storage/xtradb/include/ut0crc32.h
+++ b/storage/xtradb/include/ut0crc32.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0dbg.h b/storage/xtradb/include/ut0dbg.h
index b4c941bc16394fb8e69264535c817f8c714424df..efc670184b8cdfc8198d76f628b7a0d68e9eb33c 100644
--- a/storage/xtradb/include/ut0dbg.h
+++ b/storage/xtradb/include/ut0dbg.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0list.h b/storage/xtradb/include/ut0list.h
index 796a272db59569bb3451290c6b8356a456c9cb1a..4f35624acbff9f3aaffb65c70a8bee29569f0072 100644
--- a/storage/xtradb/include/ut0list.h
+++ b/storage/xtradb/include/ut0list.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0list.ic b/storage/xtradb/include/ut0list.ic
index 7a7f53adb2f283672223131152e2b67cdada86cc..89f411a2a649dfdc7c49ed03b6242d26885dd8f8 100644
--- a/storage/xtradb/include/ut0list.ic
+++ b/storage/xtradb/include/ut0list.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0lst.h b/storage/xtradb/include/ut0lst.h
index b53e7ade4c130e4a4576f5c75cf3bc906eb5a957..741d55dca67d9c87580792d2df5a6e642a386ee4 100644
--- a/storage/xtradb/include/ut0lst.h
+++ b/storage/xtradb/include/ut0lst.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0mem.h b/storage/xtradb/include/ut0mem.h
index 81470358f2fc98b0adfd8e7eefaf343567a8a48e..12f93764dfa182639c64202b28851d42a7f7d237 100644
--- a/storage/xtradb/include/ut0mem.h
+++ b/storage/xtradb/include/ut0mem.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0mem.ic b/storage/xtradb/include/ut0mem.ic
index 5c9071d52cc14baf4efabd73005a85a9cc7fa7ea..f102bf959b4500918a9d76259d125d6849e40236 100644
--- a/storage/xtradb/include/ut0mem.ic
+++ b/storage/xtradb/include/ut0mem.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0rbt.h b/storage/xtradb/include/ut0rbt.h
index 5c25104b5d7f6dc1ddf3644a51c1ce34bca1f03d..39d17e0d1d0da925fc2c199e74d5b9bd91c7c398 100644
--- a/storage/xtradb/include/ut0rbt.h
+++ b/storage/xtradb/include/ut0rbt.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /******************************************************************//**
diff --git a/storage/xtradb/include/ut0rnd.h b/storage/xtradb/include/ut0rnd.h
index 6ed3ee3b2e5dc113fa464f4c2b55878679802137..0f8474225fa10a6b5756f16497fbc49c7efdfd7e 100644
--- a/storage/xtradb/include/ut0rnd.h
+++ b/storage/xtradb/include/ut0rnd.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0rnd.ic b/storage/xtradb/include/ut0rnd.ic
index 987dfac03c1d2db66cd798ffa3bd10348ffd5c7c..ce8c7203c8e506ba9381827ad6a0da3d3a0ad33f 100644
--- a/storage/xtradb/include/ut0rnd.ic
+++ b/storage/xtradb/include/ut0rnd.ic
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0sort.h b/storage/xtradb/include/ut0sort.h
index 75648b5c317b10286a27e87df8a14714a5204367..12f482078ffe8f6067d2115ed971326bcb9a6842 100644
--- a/storage/xtradb/include/ut0sort.h
+++ b/storage/xtradb/include/ut0sort.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0timer.h b/storage/xtradb/include/ut0timer.h
deleted file mode 100644
index 3015771b434d7268f7258155fbb7ef4e18041383..0000000000000000000000000000000000000000
--- a/storage/xtradb/include/ut0timer.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file include/ut0timer.h
-Timer routines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-#ifndef ut0timer_h
-#define ut0timer_h
-
-#include "univ.i"
-
-/* Current timer stats */
-extern struct my_timer_unit_info ut_timer;
-
-/**************************************************************//**
-Function pointer to point selected timer function.
-@return	timer current value */
-extern ulonglong (*ut_timer_now)(void);
-
-/**************************************************************//**
-Sets up the data required for use of my_timer_* functions.
-Selects the best timer by high frequency, and tight resolution.
-Points my_timer_now() to the selected timer function.
-Initializes my_timer struct to contain the info for selected timer.*/
-UNIV_INTERN
-void ut_init_timer(void);
-
-/**************************************************************//**
-Convert native timer units in a ulonglong into microseconds in a double
-@return time in microseconds */
-UNIV_INLINE
-double
-ut_timer_to_microseconds(
-/*=====================*/
-	ulonglong	when); /*!< in: time where to calculate */
-/**************************************************************//**
-Convert microseconds in a double to native timer units in a ulonglong
-@return time in microseconds */
-UNIV_INLINE
-ulonglong
-ut_microseconds_to_timer(
-/*=====================*/
-	ulonglong	when); /*!< in: time where to calculate */
-
-#ifndef UNIV_NONINL
-#include "ut0timer.ic"
-#endif
-
-#endif
diff --git a/storage/xtradb/include/ut0timer.ic b/storage/xtradb/include/ut0timer.ic
deleted file mode 100644
index 02af23cdc6df7db37cd77b474d02d101353b6ea4..0000000000000000000000000000000000000000
--- a/storage/xtradb/include/ut0timer.ic
+++ /dev/null
@@ -1,56 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, 2018, MariaDB Corporation.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file include/ut0timer.ic
-Timer routines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-
-/**************************************************************//**
-Convert native timer units in a ulonglong into microseconds in a double
-@return time in microseconds */
-UNIV_INLINE
-double
-ut_timer_to_microseconds(
-/*=====================*/
-	ulonglong	when) /*!< in: time where to calculate */
-{
-	double ret = (double)(when);
-	ret *= 1000000.0;
-	ret /= (double)(ut_timer.frequency);
-	return ret;
-}
-
-/**************************************************************//**
-Convert microseconds in a double to native timer units in a ulonglong
-@return time in microseconds */
-UNIV_INLINE
-ulonglong
-ut_microseconds_to_timer(
-/*=====================*/
-	ulonglong	when) /*!< in: time where to calculate */
-{
-	double ret = (double)when;
-	ret *= (double)(ut_timer.frequency);
-	ret /= 1000000.0;
-	return (ulonglong)ret;
-}
diff --git a/storage/xtradb/include/ut0ut.h b/storage/xtradb/include/ut0ut.h
index 726c01a2e0fda41fa0226513e9353d6153e24910..2dd791557705b2aa27fa658fa5680aa20484ce9a 100644
--- a/storage/xtradb/include/ut0ut.h
+++ b/storage/xtradb/include/ut0ut.h
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1994, 2017, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -50,9 +51,6 @@ Created 1/20/1994 Heikki Tuuri
 /** Index name prefix in fast index creation, as a string constant */
 #define TEMP_INDEX_PREFIX_STR	"\377"
 
-/** Time stamp */
-typedef time_t	ib_time_t;
-
 /* In order to call a piece of code, when a function returns or when the
 scope ends, use this utility class.  It will invoke the given function
 object in its destructor. */
@@ -108,22 +106,6 @@ struct ut_when_dtor {
 #  define UT_LOW_PRIORITY_CPU() ((void)0)
 #  define UT_RESUME_PRIORITY_CPU() ((void)0)
 # endif
-
-/*********************************************************************//**
-Delays execution for at most max_wait_us microseconds or returns earlier
-if cond becomes true.
-@param cond		in: condition to wait for; evaluated every 2 ms
-@param max_wait_us	in: maximum delay to wait, in microseconds */
-#define UT_WAIT_FOR(cond, max_wait_us)				\
-do {								\
-	ullint	start_us;					\
-	start_us = ut_time_us(NULL);				\
-	while (!(cond) 						\
-	       && ut_time_us(NULL) - start_us < (max_wait_us)) {\
-								\
-		os_thread_sleep(2000 /* 2 ms */);		\
-	}							\
-} while (0)
 #endif /* !UNIV_HOTBACKUP */
 
 template  T ut_min(T a, T b) { return(a < b ? a : b); }
@@ -242,39 +224,8 @@ store the given number of bits.
 @return		number of bytes (octets) needed to represent b */
 #define UT_BITS_IN_BYTES(b) (((b) + 7) / 8)
 
-/**********************************************************//**
-Returns system time. We do not specify the format of the time returned:
-the only way to manipulate it is to use the function ut_difftime.
-@return	system time */
-UNIV_INTERN
-ib_time_t
-ut_time(void);
-/*=========*/
 #ifndef UNIV_HOTBACKUP
 /**********************************************************//**
-Returns system time.
-Upon successful completion, the value 0 is returned; otherwise the
-value -1 is returned and the global variable errno is set to indicate the
-error.
-@return	0 on success, -1 otherwise */
-UNIV_INTERN
-int
-ut_usectime(
-/*========*/
-	ulint*	sec,	/*!< out: seconds since the Epoch */
-	ulint*	ms);	/*!< out: microseconds since the Epoch+*sec */
-
-/**********************************************************//**
-Returns the number of microseconds since epoch. Similar to
-time(3), the return value is also stored in *tloc, provided
-that tloc is non-NULL.
-@return	us since epoch */
-UNIV_INTERN
-ullint
-ut_time_us(
-/*=======*/
-	ullint*	tloc);	/*!< out: us since epoch, if non-NULL */
-/**********************************************************//**
 Returns the number of milliseconds since some epoch.  The
 value may wrap around.  It should only be used for heuristic
 purposes.
@@ -283,15 +234,6 @@ UNIV_INTERN
 ulint
 ut_time_ms(void);
 /*============*/
-#ifdef _WIN32
-/**********************************************************//**
-Initialise highest available time resolution API on Windows
-@return 0 if all OK else -1 */
-int
-ut_win_init_time();
-
-#endif /* _WIN32 */
-
 #endif /* !UNIV_HOTBACKUP */
 
 /**********************************************************//**
@@ -303,17 +245,6 @@ UNIV_INTERN
 ulint
 ut_time_ms(void);
 /*============*/
-
-/**********************************************************//**
-Returns the difference of two times in seconds.
-@return	time2 - time1 expressed in seconds */
-UNIV_INTERN
-double
-ut_difftime(
-/*========*/
-	ib_time_t	time2,	/*!< in: time */
-	ib_time_t	time1);	/*!< in: time */
-
 #endif /* !UNIV_INNOCHECKSUM */
 
 /**********************************************************//**
@@ -343,15 +274,6 @@ void
 ut_sprintf_timestamp_without_extra_chars(
 /*=====================================*/
 	char*	buf); /*!< in: buffer where to sprintf */
-/**********************************************************//**
-Returns current year, month, day. */
-UNIV_INTERN
-void
-ut_get_year_month_day(
-/*==================*/
-	ulint*	year,	/*!< out: current year */
-	ulint*	month,	/*!< out: month */
-	ulint*	day);	/*!< out: day */
 #else /* UNIV_HOTBACKUP */
 /*************************************************************//**
 Runs an idle loop on CPU. The argument gives the desired delay
diff --git a/storage/xtradb/include/ut0ut.ic b/storage/xtradb/include/ut0ut.ic
index 4e0f76e195781bd03b32944afbeeeca7b3ce40d8..380c588738df677ed695ea9c10304cc63b6c154c 100644
--- a/storage/xtradb/include/ut0ut.ic
+++ b/storage/xtradb/include/ut0ut.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0vec.h b/storage/xtradb/include/ut0vec.h
index 432fb348a0903709cc84f9faab7bc072fb497ee6..a08380fff001d7d6dd03145da69a6c47dbbf51e0 100644
--- a/storage/xtradb/include/ut0vec.h
+++ b/storage/xtradb/include/ut0vec.h
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0vec.ic b/storage/xtradb/include/ut0vec.ic
index f41a85e1d1d991dc340e41190d8833003a1ca846..1d4c0539cd65e3fd7bfaabca4b892dcb2fd3850d 100644
--- a/storage/xtradb/include/ut0vec.ic
+++ b/storage/xtradb/include/ut0vec.ic
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/include/ut0wqueue.h b/storage/xtradb/include/ut0wqueue.h
index e0f8f76d5f136800f2bdb72b413c47fa86f05af5..9bd58609205bb6fce214c920735dc32c0ac33185 100644
--- a/storage/xtradb/include/ut0wqueue.h
+++ b/storage/xtradb/include/ut0wqueue.h
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -89,7 +89,7 @@ ib_wqueue_timedwait(
 /*================*/
 					/* out: work item or NULL on timeout*/
 	ib_wqueue_t*	wq,		/* in: work queue */
-	ib_time_t	wait_in_usecs); /* in: wait time in micro seconds */
+	ulint		wait_in_usecs); /* in: wait time in micro seconds */
 
 /********************************************************************
 Return first item on work queue or NULL if queue is empty
diff --git a/storage/xtradb/lock/lock0iter.cc b/storage/xtradb/lock/lock0iter.cc
index b424d2fc757de6f893b4f11b7886b39a535eb77e..56bb69fa41ccb604dee336c18bbe8e7c50ba2580 100644
--- a/storage/xtradb/lock/lock0iter.cc
+++ b/storage/xtradb/lock/lock0iter.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/lock/lock0lock.cc b/storage/xtradb/lock/lock0lock.cc
index 9c86abf71721afc21a28d80ff2b7104ec78dec02..c110c83cbe704dbf04e4a4e549b95c7af0e11c99 100644
--- a/storage/xtradb/lock/lock0lock.cc
+++ b/storage/xtradb/lock/lock0lock.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -383,6 +383,20 @@ struct lock_stack_t {
 	ulint		heap_no;		/*!< heap number if rec lock */
 };
 
+/** Pretty-print a table lock.
+@param[in,out]	file	output stream
+@param[in]	lock	table lock
+@param[in]	now	current time */
+static void lock_table_print(FILE* file, const lock_t* lock, time_t now);
+
+/** Pretty-print a record lock.
+@param[in,out]	file	output stream
+@param[in]	lock	record lock
+@param[in]	now	current time
+@param[in,out]	mtr	mini-transaction */
+static void lock_rec_print(FILE* file, const lock_t* lock, time_t now,
+			   mtr_t* mtr = NULL);
+
 /*********************************************************************//**
 Checks if a waiting record lock request still has to wait in a queue.
 @return lock that is causing the wait */
@@ -466,20 +480,18 @@ UNIV_INTERN ibool	lock_deadlock_found = FALSE;
 /** Only created if !srv_read_only_mode */
 static FILE*		lock_latest_err_file;
 
-/********************************************************************//**
-Checks if a joining lock request results in a deadlock. If a deadlock is
+/** Check if a joining lock request results in a deadlock. If a deadlock is
 found this function will resolve the dadlock by choosing a victim transaction
-and rolling it back. It will attempt to resolve all deadlocks. The returned
-transaction id will be the joining transaction id or 0 if some other
-transaction was chosen as a victim and rolled back or no deadlock found.
-
-@return id of transaction chosen as victim or 0 */
-static
-trx_id_t
-lock_deadlock_check_and_resolve(
-/*===========================*/
-	const lock_t*	lock,	/*!< in: lock the transaction is requesting */
-	const trx_t*	trx);	/*!< in: transaction */
+and rolling it back. It will attempt to resolve all deadlocks.
+@param[in]	trx	joining transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time
+@return trx->id of the victim transaction
+@retval 0	if some other transaction was chosen as a victim and
+rolled back, or no deadlock was found. */
+static trx_id_t lock_deadlock_check_and_resolve(const trx_t* trx,
+						const lock_t* lock,
+						time_t now);
 
 /*********************************************************************//**
 Gets the nth bit of a record lock.
@@ -1147,12 +1159,11 @@ lock_rec_has_to_wait(
 		   thread, we need to look at trx ordering and lock types */
 		if (wsrep_thd_is_BF(trx->mysql_thd, FALSE)         &&
 		    wsrep_thd_is_BF(lock2->trx->mysql_thd, TRUE)) {
-
 			if (wsrep_debug) {
 				fprintf(stderr,
 					"BF-BF lock conflict, locking: %lu\n",
 					for_locking);
-				lock_rec_print(stderr, lock2);
+				lock_rec_print(stderr, lock2, time(NULL));
 			}
 
 			if (wsrep_trx_order_before(trx->mysql_thd,
@@ -1171,7 +1182,8 @@ lock_rec_has_to_wait(
 						"conflicts states: my %d locked %d\n",
 						wsrep_thd_conflict_state(trx->mysql_thd, FALSE),
 						wsrep_thd_conflict_state(lock2->trx->mysql_thd, FALSE) );
-					lock_rec_print(stderr, lock2);
+					lock_rec_print(stderr, lock2,
+						       time(NULL));
 					if (for_locking) return FALSE;
 					//abort();
 				}
@@ -1797,10 +1809,12 @@ wsrep_kill_victim(
 				fputs("*** WAITING FOR THIS LOCK TO BE GRANTED:\n",
 				      stderr);
 
+				time_t now = time(NULL);
+
 				if (lock_get_type(lock) == LOCK_REC) {
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, lock, now);
 				} else {
-					lock_table_print(stderr, lock);
+					lock_table_print(stderr, lock, now);
 				}
 			}
 
@@ -2055,16 +2069,20 @@ wsrep_print_wait_locks(
 {
 	if (wsrep_debug &&  c_lock->trx->lock.wait_lock != c_lock) {
 		fprintf(stderr, "WSREP: c_lock != wait lock\n");
+		time_t now = time(NULL);
+
 		if (lock_get_type_low(c_lock) & LOCK_TABLE) {
-			lock_table_print(stderr, c_lock);
+			lock_table_print(stderr, c_lock, now);
 		} else {
-			lock_rec_print(stderr, c_lock);
+			lock_rec_print(stderr, c_lock, now);
 		}
 
 		if (lock_get_type_low(c_lock->trx->lock.wait_lock) & LOCK_TABLE) {
-			lock_table_print(stderr, c_lock->trx->lock.wait_lock);
+			lock_table_print(stderr, c_lock->trx->lock.wait_lock,
+					 now);
 		} else {
-			lock_rec_print(stderr, c_lock->trx->lock.wait_lock);
+			lock_rec_print(stderr, c_lock->trx->lock.wait_lock,
+				       now);
 		}
 	}
 }
@@ -2077,10 +2095,7 @@ If neither of them is wait lock, the first one has higher priority.
 If only one of them is a wait lock, it has lower priority.
 Otherwise, the one with an older transaction has higher priority.
 @returns true if lock1 has higher priority, false otherwise. */
-bool
-has_higher_priority(
-	lock_t *lock1,
-	lock_t *lock2)
+static bool has_higher_priority(lock_t *lock1, lock_t *lock2)
 {
 	if (lock1 == NULL) {
 		return false;
@@ -2295,7 +2310,7 @@ lock_rec_create(
 	/* Set the bit corresponding to rec */
 	lock_rec_set_nth_bit(lock, heap_no);
 
-	lock->requested_time = ut_time();
+	lock->requested_time = time(NULL);
 	lock->wait_time = 0;
 
 	index->table->n_rec_locks++;
@@ -2448,8 +2463,6 @@ lock_rec_enqueue_waiting(
 	trx_t*			trx;
 	lock_t*			lock;
 	trx_id_t		victim_trx_id;
-	ulint			sec;
-	ulint			ms;
 	ulint			space;
 	ulint			page_no;
 	dberr_t			err;
@@ -2508,7 +2521,8 @@ lock_rec_enqueue_waiting(
 
 	trx_mutex_exit(trx);
 
-	victim_trx_id = lock_deadlock_check_and_resolve(lock, trx);
+	const time_t now = time(NULL);
+	victim_trx_id = lock_deadlock_check_and_resolve(trx, lock, now);
 
 	trx_mutex_enter(trx);
 
@@ -2532,11 +2546,10 @@ lock_rec_enqueue_waiting(
 		trx->lock.que_state = TRX_QUE_LOCK_WAIT;
 
 		trx->lock.was_chosen_as_deadlock_victim = FALSE;
-		trx->lock.wait_started = ut_time();
+		trx->lock.wait_started = now;
 
 		if (UNIV_UNLIKELY(trx->take_stats)) {
-			ut_usectime(&sec, &ms);
-			trx->lock_que_wait_ustarted = (ib_uint64_t)sec * 1000000 + ms;
+			trx->lock_que_wait_nstarted = my_interval_timer();
 		}
 
 		ut_a(que_thr_stop(thr));
@@ -2678,7 +2691,8 @@ lock_rec_add_to_queue(
 						"BF skipping wait: "
 						TRX_ID_FMT "\n",
 						trx->id);
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, lock,
+						       time(NULL));
 				}
 		  } else
 #endif
@@ -2997,13 +3011,14 @@ lock_rec_has_to_wait_in_queue(
 			if (wsrep_thd_is_BF(wait_lock->trx->mysql_thd, FALSE) &&
 			    wsrep_thd_is_BF(lock->trx->mysql_thd, TRUE)) {
 				if (wsrep_debug) {
+					time_t now = time(NULL);
 					fprintf(stderr,
 						"BF-BF lock conflict " TRX_ID_FMT
 						" : " TRX_ID_FMT "\n",
 						wait_lock->trx->id,
 						lock->trx->id);
-					lock_rec_print(stderr, wait_lock);
-					lock_rec_print(stderr, lock);
+					lock_rec_print(stderr, wait_lock, now);
+					lock_rec_print(stderr, lock, now);
 				}
 				/* don't wait for another BF lock */
 				continue;
@@ -3070,16 +3085,18 @@ lock_grant(
 		}
 	}
 
+	const time_t now = time(NULL);
+
 	/* Cumulate total lock wait time for statistics */
 	if (lock_get_type_low(lock) & LOCK_TABLE) {
 		lock->trx->total_table_lock_wait_time +=
-			(ulint)difftime(ut_time(), lock->trx->lock.wait_started);
+			(ulint)difftime(now, lock->trx->lock.wait_started);
 	} else {
 		lock->trx->total_rec_lock_wait_time +=
-			(ulint)difftime(ut_time(), lock->trx->lock.wait_started);
+			(ulint)difftime(now, lock->trx->lock.wait_started);
 	}
 
-	lock->wait_time = (ulint)difftime(ut_time(), lock->requested_time);
+	lock->wait_time = (ulint)difftime(now, lock->requested_time);
 
 	if (!owns_trx_mutex) {
 		trx_mutex_exit(lock->trx);
@@ -4334,28 +4351,26 @@ lock_deadlock_trx_print(
 	mutex_exit(&trx_sys->mutex);
 }
 
-/*********************************************************************//**
-Print lock data to the deadlock file and possibly to stderr. */
-UNIV_INLINE
-void
-lock_deadlock_lock_print(
-/*=====================*/
-	const lock_t*	lock)	/*!< in: record or table type lock */
+/** Print lock data to the deadlock file and possibly to stderr.
+@param[in]	lock	record or table lock
+@param[in]	now	current time */
+static void lock_deadlock_lock_print(const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
 
 	if (lock_get_type_low(lock) == LOCK_REC) {
-		lock_rec_print(lock_latest_err_file, lock);
+		mtr_t mtr;
+		lock_rec_print(lock_latest_err_file, lock, now, &mtr);
 
 		if (srv_print_all_deadlocks) {
-			lock_rec_print(stderr, lock);
+			lock_rec_print(stderr, lock, now, &mtr);
 		}
 	} else {
-		lock_table_print(lock_latest_err_file, lock);
+		lock_table_print(lock_latest_err_file, lock, now);
 
 		if (srv_print_all_deadlocks) {
-			lock_table_print(stderr, lock);
+			lock_table_print(stderr, lock, now);
 		}
 	}
 }
@@ -4468,6 +4483,8 @@ lock_deadlock_notify(
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
 
+	const time_t now = time(NULL);
+
 	lock_deadlock_start_print();
 
 	lock_deadlock_fputs("\n*** (1) TRANSACTION:\n");
@@ -4476,7 +4493,7 @@ lock_deadlock_notify(
 
 	lock_deadlock_fputs("*** (1) WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-	lock_deadlock_lock_print(ctx->wait_lock);
+	lock_deadlock_lock_print(ctx->wait_lock, now);
 
 	lock_deadlock_fputs("*** (2) TRANSACTION:\n");
 
@@ -4484,7 +4501,7 @@ lock_deadlock_notify(
 
 	lock_deadlock_fputs("*** (2) HOLDS THE LOCK(S):\n");
 
-	lock_deadlock_lock_print(lock);
+	lock_deadlock_lock_print(lock, now);
 
 	/* It is possible that the joining transaction was granted its
 	lock when we rolled back some other waiting transaction. */
@@ -4493,7 +4510,7 @@ lock_deadlock_notify(
 		lock_deadlock_fputs(
 			"*** (2) WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-		lock_deadlock_lock_print(ctx->start->lock.wait_lock);
+		lock_deadlock_lock_print(ctx->start->lock.wait_lock, now);
 	}
 
 #ifdef UNIV_DEBUG
@@ -4742,14 +4759,12 @@ lock_deadlock_search(
 	return(0);
 }
 
-/********************************************************************//**
-Print info about transaction that was rolled back. */
-static
-void
-lock_deadlock_joining_trx_print(
-/*============================*/
-	const trx_t*	trx,		/*!< in: transaction rolled back */
-	const lock_t*	lock)		/*!< in: lock trx wants */
+/** Print info about transaction that was rolled back.
+@param[in]	trx	victim transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time */
+static void lock_deadlock_joining_trx_print(const trx_t* trx,
+					    const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
@@ -4769,7 +4784,7 @@ lock_deadlock_joining_trx_print(
 
 	lock_deadlock_fputs("*** WAITING FOR THIS LOCK TO BE GRANTED:\n");
 
-	lock_deadlock_lock_print(lock);
+	lock_deadlock_lock_print(lock, now);
 }
 
 /********************************************************************//**
@@ -4839,20 +4854,17 @@ lock_report_waiters_to_mysql(
 }
 
 
-/********************************************************************//**
-Checks if a joining lock request results in a deadlock. If a deadlock is
+/** Check if a joining lock request results in a deadlock. If a deadlock is
 found this function will resolve the dadlock by choosing a victim transaction
-and rolling it back. It will attempt to resolve all deadlocks. The returned
-transaction id will be the joining transaction id or 0 if some other
-transaction was chosen as a victim and rolled back or no deadlock found.
-
-@return id of transaction chosen as victim or 0 */
-static
-trx_id_t
-lock_deadlock_check_and_resolve(
-/*============================*/
-	const lock_t*	lock,	/*!< in: lock the transaction is requesting */
-	const trx_t*	trx)	/*!< in: transaction */
+and rolling it back. It will attempt to resolve all deadlocks.
+@param[in]	trx	joining transaction
+@param[in]	lock	the requested lock
+@param[in]	now	current time
+@return trx->id of the victim transaction
+@retval 0	if some other transaction was chosen as a victim and
+rolled back, or no deadlock was found. */
+static trx_id_t lock_deadlock_check_and_resolve(const trx_t* trx,
+						const lock_t* lock, time_t now)
 {
 	trx_id_t		victim_trx_id;
 	struct thd_wait_reports	waitee_buf;
@@ -4904,18 +4916,12 @@ lock_deadlock_check_and_resolve(
 			ut_a(victim_trx_id == trx->id);
 
 #ifdef WITH_WSREP
-			if (!wsrep_thd_is_BF(ctx.start->mysql_thd, TRUE))
-			{
+			if (wsrep_thd_is_BF(ctx.start->mysql_thd, TRUE)); else
 #endif /* WITH_WSREP */
-				if (!srv_read_only_mode) {
-					lock_deadlock_joining_trx_print(trx, lock);
-				}
-#ifdef WITH_WSREP
-			} else {
-			  /* BF processor */;
+			if (!srv_read_only_mode) {
+				lock_deadlock_joining_trx_print(trx, lock,
+								now);
 			}
-#endif /* WITH_WSREP */
-
 		} else if (victim_trx_id != 0 && victim_trx_id != trx->id) {
 
 			ut_ad(victim_trx_id == ctx.wait_lock->trx->id);
@@ -4993,7 +4999,7 @@ lock_table_create(
 
 	lock->type_mode = type_mode | LOCK_TABLE;
 	lock->trx = trx;
-	lock->requested_time = ut_time();
+	lock->requested_time = time(NULL);
 	lock->wait_time = 0;
 
 	lock->un_member.tab_lock.table = table;
@@ -5205,8 +5211,6 @@ lock_table_enqueue_waiting(
 	trx_t*		trx;
 	lock_t*		lock;
 	trx_id_t	victim_trx_id;
-	ulint		sec;
-	ulint		ms;
 
 	ut_ad(lock_mutex_own());
 	ut_ad(!srv_read_only_mode);
@@ -5263,7 +5267,9 @@ lock_table_enqueue_waiting(
 
 	trx_mutex_exit(trx);
 
-	victim_trx_id = lock_deadlock_check_and_resolve(lock, trx);
+	const time_t now = time(NULL);
+
+	victim_trx_id = lock_deadlock_check_and_resolve(trx, lock, now);
 
 	trx_mutex_enter(trx);
 
@@ -5285,13 +5291,12 @@ lock_table_enqueue_waiting(
 
 	trx->lock.que_state = TRX_QUE_LOCK_WAIT;
 
-	trx->lock.wait_started = ut_time();
+	trx->lock.wait_started = now;
 	trx->lock.was_chosen_as_deadlock_victim = FALSE;
 	trx->n_table_lock_waits++;
 
 	if (UNIV_UNLIKELY(trx->take_stats)) {
-		ut_usectime(&sec, &ms);
-		trx->lock_que_wait_ustarted = (ib_uint64_t)sec * 1000000 + ms;
+		trx->lock_que_wait_nstarted = my_interval_timer();
 	}
 
 	ut_a(que_thr_stop(thr));
@@ -6038,14 +6043,11 @@ lock_remove_all_on_table(
 
 /*===================== VALIDATION AND DEBUGGING  ====================*/
 
-/*********************************************************************//**
-Prints info of a table lock. */
-UNIV_INTERN
-void
-lock_table_print(
-/*=============*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock)	/*!< in: table type lock */
+/** Pretty-print a table lock.
+@param[in,out]	file	output stream
+@param[in]	lock	table lock
+@param[in]	now	current time */
+static void lock_table_print(FILE* file, const lock_t* lock, time_t now)
 {
 	ut_ad(lock_mutex_own());
 	ut_a(lock_get_type_low(lock) == LOCK_TABLE);
@@ -6075,30 +6077,22 @@ lock_table_print(
 	}
 
 	fprintf(file, " lock hold time %lu wait time before grant %lu ",
-		(ulint)difftime(ut_time(), lock->requested_time),
+		(ulint)difftime(now, lock->requested_time),
 		lock->wait_time);
 
 	putc('\n', file);
 }
 
-/*********************************************************************//**
-Prints info of a record lock. */
-UNIV_INTERN
-void
-lock_rec_print(
-/*===========*/
-	FILE*		file,	/*!< in: file where to print */
-	const lock_t*	lock)	/*!< in: record type lock */
+/** Pretty-print a record lock.
+@param[in,out]	file	output stream
+@param[in]	lock	record lock
+@param[in]	now	current time
+@param[in,out]	mtr	mini-transaction */
+static void lock_rec_print(FILE* file, const lock_t* lock, time_t now,
+			   mtr_t* mtr)
 {
-	const buf_block_t*	block;
 	ulint			space;
 	ulint			page_no;
-	ulint			i;
-	mtr_t			mtr;
-	mem_heap_t*		heap		= NULL;
-	ulint			offsets_[REC_OFFS_NORMAL_SIZE];
-	ulint*			offsets		= offsets_;
-	rec_offs_init(offsets_);
 
 	ut_ad(lock_mutex_own());
 	ut_a(lock_get_type_low(lock) == LOCK_REC);
@@ -6143,18 +6137,25 @@ lock_rec_print(
 		fputs(" waiting", file);
 	}
 
-	mtr_start(&mtr);
-
 	fprintf(file, " lock hold time %lu wait time before grant %lu ",
-		(ulint)difftime(ut_time(), lock->requested_time),
+		(ulint)difftime(now, lock->requested_time),
 		lock->wait_time);
 
 	putc('\n', file);
 
-	if ( srv_show_verbose_locks ) {
-	block = buf_page_try_get(space, page_no, &mtr);
+	if (!srv_show_verbose_locks || !mtr) {
+		return;
+	}
+
+	mem_heap_t*		heap		= NULL;
+	ulint			offsets_[REC_OFFS_NORMAL_SIZE];
+	ulint*			offsets		= offsets_;
+	rec_offs_init(offsets_);
 
-	for (i = 0; i < lock_rec_get_n_bits(lock); ++i) {
+	mtr_start(mtr);
+	const buf_block_t* block = buf_page_try_get(space, page_no, mtr);
+
+	for (ulint i = 0; i < lock_rec_get_n_bits(lock); ++i) {
 
 		if (!lock_rec_get_nth_bit(lock, i)) {
 			continue;
@@ -6178,9 +6179,8 @@ lock_rec_print(
 
 		putc('\n', file);
 	}
-	}
 
-	mtr_commit(&mtr);
+	mtr_commit(mtr);
 	if (UNIV_LIKELY_NULL(heap)) {
 		mem_heap_free(heap);
 	}
@@ -6336,6 +6336,8 @@ lock_print_info_all_transactions(
 
 	ut_ad(lock_mutex_own());
 
+	const time_t now = time(NULL);
+
 	mutex_enter(&trx_sys->mutex);
 
 	/* First print info on non-active transactions */
@@ -6422,13 +6424,14 @@ lock_print_info_all_transactions(
 			fprintf(file,
 				"------- TRX HAS BEEN WAITING %lu SEC"
 				" FOR THIS LOCK TO BE GRANTED:\n",
-				(ulong) difftime(ut_time(),
-						 trx->lock.wait_started));
+				(ulong) difftime(now, trx->lock.wait_started));
 
 			if (lock_get_type_low(trx->lock.wait_lock) == LOCK_REC) {
-				lock_rec_print(file, trx->lock.wait_lock);
+				lock_rec_print(file, trx->lock.wait_lock, now,
+					       &mtr);
 			} else {
-				lock_table_print(file, trx->lock.wait_lock);
+				lock_table_print(file, trx->lock.wait_lock,
+						 now);
 			}
 
 			fputs("------------------\n", file);
@@ -6517,11 +6520,11 @@ lock_print_info_all_transactions(
 		}
 
 print_rec:
-		lock_rec_print(file, lock);
+		lock_rec_print(file, lock, now, &mtr);
 	} else {
 		ut_ad(lock_get_type_low(lock) & LOCK_TABLE);
 
-		lock_table_print(file, lock);
+		lock_table_print(file, lock, now);
 	}
 
 	load_page_first = TRUE;
diff --git a/storage/xtradb/lock/lock0wait.cc b/storage/xtradb/lock/lock0wait.cc
index da4b0301df866fe4f56ec81822154bd45cc6c096..3efc28967dbc69cd4aa0cb0c5f395d388c29c528 100644
--- a/storage/xtradb/lock/lock0wait.cc
+++ b/storage/xtradb/lock/lock0wait.cc
@@ -1,7 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1996, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2014, 2017, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -74,7 +74,7 @@ lock_wait_table_print(void)
 			(ulong) slot->in_use,
 			(ulong) slot->suspended,
 			slot->wait_timeout,
-			(ulong) difftime(ut_time(), slot->suspend_time));
+			(ulong) difftime(time(NULL), slot->suspend_time));
 	}
 }
 
@@ -171,7 +171,7 @@ lock_wait_table_reserve_slot(
 
 			os_event_reset(slot->event);
 			slot->suspended = TRUE;
-			slot->suspend_time = ut_time();
+			slot->suspend_time = time(NULL);
 			slot->wait_timeout = wait_timeout;
 
 			if (slot == lock_sys->last_slot) {
@@ -280,14 +280,9 @@ lock_wait_suspend_thread(
 				user OS thread */
 {
 	srv_slot_t*	slot;
-	double		wait_time;
 	trx_t*		trx;
 	ulint		had_dict_lock;
 	ibool		was_declared_inside_innodb;
-	ib_int64_t	start_time			= 0;
-	ib_int64_t	finish_time;
-	ulint		sec;
-	ulint		ms;
 	ulong		lock_wait_timeout;
 	blocking_trx_info blocking[MAX_BLOCKING_TRX_IN_REPORT];
 	size_t blocking_count = 0;
@@ -335,15 +330,12 @@ lock_wait_suspend_thread(
 	lock_wait_mutex_exit();
 	trx_mutex_exit(trx);
 
+	ulonglong start_time = 0;
+
 	if (thr->lock_state == QUE_THR_LOCK_ROW) {
 		srv_stats.n_lock_wait_count.inc();
 		srv_stats.n_lock_wait_current_count.inc();
-
-		if (ut_usectime(&sec, &ms) == -1) {
-			start_time = -1;
-		} else {
-			start_time = (ib_int64_t) sec * 1000000 + ms;
-		}
+		start_time = my_interval_timer();
 	}
 
 	ulint	lock_type = ULINT_UNDEFINED;
@@ -423,39 +415,32 @@ lock_wait_suspend_thread(
 		row_mysql_freeze_data_dictionary(trx);
 	}
 
-	wait_time = ut_difftime(ut_time(), slot->suspend_time);
+	double wait_time = difftime(time(NULL), slot->suspend_time);
 
 	/* Release the slot for others to use */
 
 	lock_wait_table_release_slot(slot);
 
 	if (thr->lock_state == QUE_THR_LOCK_ROW) {
-		ulint	diff_time;
-
-		if (ut_usectime(&sec, &ms) == -1) {
-			finish_time = -1;
-		} else {
-			finish_time = (ib_int64_t) sec * 1000000 + ms;
-		}
-
-		diff_time = (finish_time > start_time) ?
-			    (ulint) (finish_time - start_time) : 0;
-
 		srv_stats.n_lock_wait_current_count.dec();
-		srv_stats.n_lock_wait_time.add(diff_time);
 
-		/* Only update the variable if we successfully
-		retrieved the start and finish times. See Bug#36819. */
-		if (diff_time > lock_sys->n_lock_max_wait_time
-		    && start_time != -1
-		    && finish_time != -1) {
+		const ulonglong finish_time = my_interval_timer();
+		ulint diff_time;
 
-			lock_sys->n_lock_max_wait_time = diff_time;
+		if (finish_time < start_time) {
+			diff_time = 0;
+		} else {
+			diff_time = ulint((finish_time - start_time) / 1000);
+			srv_stats.n_lock_wait_time.add(diff_time);
+			/* Only update the variable if we successfully
+			retrieved the start and finish times. See Bug#36819. */
+			if (diff_time > lock_sys->n_lock_max_wait_time) {
+				lock_sys->n_lock_max_wait_time = diff_time;
+			}
 		}
 
 		/* Record the lock wait time for this thread */
 		thd_set_lock_wait_time(trx->mysql_thd, diff_time);
-
 	}
 
 	if (lock_wait_timeout < 100000000
@@ -523,19 +508,12 @@ lock_wait_check_and_cancel(
 	const srv_slot_t*	slot)	/*!< in: slot reserved by a user
 					thread when the wait started */
 {
-	trx_t*		trx;
-	double		wait_time;
-	ib_time_t	suspend_time = slot->suspend_time;
-
 	ut_ad(lock_wait_mutex_own());
-
 	ut_ad(slot->in_use);
-
 	ut_ad(slot->suspended);
 
-	wait_time = ut_difftime(ut_time(), suspend_time);
-
-	trx = thr_get_trx(slot->thr);
+	double wait_time = difftime(time(NULL), slot->suspend_time);
+	trx_t* trx = thr_get_trx(slot->thr);
 
 	if (trx_is_interrupted(trx)
 	    || (slot->wait_timeout < 100000000
@@ -569,7 +547,6 @@ lock_wait_check_and_cancel(
 
 		trx_mutex_exit(trx);
 	}
-
 }
 
 /*********************************************************************//**
diff --git a/storage/xtradb/log/log0crypt.cc b/storage/xtradb/log/log0crypt.cc
index 2a0a7abb6869ef260b61c2ebdb337429ff6ef14a..4cf1bfc59e1b6da9bd5c303a2b781f57c2517084 100644
--- a/storage/xtradb/log/log0crypt.cc
+++ b/storage/xtradb/log/log0crypt.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /**************************************************//**
diff --git a/storage/xtradb/log/log0log.cc b/storage/xtradb/log/log0log.cc
index 19b4ac3732a56bbb9f3465f7ffc05eb8fdd2d321..3e0c6ced14aa9b267246d24113cc7a525016403a 100644
--- a/storage/xtradb/log/log0log.cc
+++ b/storage/xtradb/log/log0log.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2009, Google Inc.
-Copyright (c) 2014, 2018, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted by
 Google, Inc. Those modifications are gratefully acknowledged and are described
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1305,7 +1305,6 @@ log_io_complete(
 
 	group->n_pending_writes--;
 	log_sys->n_pending_writes--;
-	MONITOR_DEC(MONITOR_PENDING_LOG_WRITE);
 
 	unlock = log_group_check_flush_completion(group);
 	unlock = unlock | log_sys_check_flush_completion();
@@ -1357,8 +1356,6 @@ log_group_file_header_flush(
 	if (log_do_write) {
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		srv_stats.os_log_pending_writes.inc();
 
 		fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->space_id, 0,
@@ -1483,8 +1480,6 @@ log_group_write_buf(
 	if (log_do_write) {
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		srv_stats.os_log_pending_writes.inc();
 
 		ut_a(next_offset / UNIV_PAGE_SIZE <= ULINT_MAX);
@@ -1632,7 +1627,6 @@ log_write_up_to(
 	}
 #endif /* UNIV_DEBUG */
 	log_sys->n_pending_writes++;
-	MONITOR_INC(MONITOR_PENDING_LOG_WRITE);
 
 	group = UT_LIST_GET_FIRST(log_sys->log_groups);
 	group->n_pending_writes++;	/*!< We assume here that we have only
@@ -1724,7 +1718,6 @@ log_write_up_to(
 
 	group->n_pending_writes--;
 	log_sys->n_pending_writes--;
-	MONITOR_DEC(MONITOR_PENDING_LOG_WRITE);
 
 	unlock = log_group_check_flush_completion(group);
 	unlock = unlock | log_sys_check_flush_completion();
@@ -1939,7 +1932,6 @@ log_io_complete_checkpoint(void)
 	ut_ad(log_sys->n_pending_checkpoint_writes > 0);
 
 	log_sys->n_pending_checkpoint_writes--;
-	MONITOR_DEC(MONITOR_PENDING_CHECKPOINT_WRITE);
 
 	if (log_sys->n_pending_checkpoint_writes == 0) {
 		log_complete_checkpoint();
@@ -2086,12 +2078,9 @@ log_group_checkpoint(
 		}
 
 		log_sys->n_pending_checkpoint_writes++;
-		MONITOR_INC(MONITOR_PENDING_CHECKPOINT_WRITE);
 
 		log_sys->n_log_ios++;
 
-		MONITOR_INC(MONITOR_LOG_IO);
-
 		/* We send as the last parameter the group machine address
 		added with 1, as we want to distinguish between a normal log
 		file write and a checkpoint field write */
@@ -2178,8 +2167,6 @@ log_group_read_checkpoint_info(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_READ | OS_FILE_LOG, true, group->space_id, 0,
 	       field / UNIV_PAGE_SIZE, field % UNIV_PAGE_SIZE,
 	       OS_FILE_LOG_BLOCK_SIZE, log_sys->checkpoint_buf, NULL, 0);
@@ -2564,8 +2551,6 @@ log_group_read_log_seg(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	ut_a(source_offset / UNIV_PAGE_SIZE <= ULINT_MAX);
 
 	if (release_mutex) {
@@ -2606,7 +2591,8 @@ log_group_read_log_seg(
 	start_lsn += len;
 	buf += len;
 
-	if (recv_recovery_is_on() && recv_sys && recv_sys->report(ut_time())) {
+	if (recv_recovery_is_on() && recv_sys
+	    && recv_sys->report(time(NULL))) {
 		ib_logf(IB_LOG_LEVEL_INFO, "Read redo log up to LSN=" LSN_PF,
 			start_lsn);
 		service_manager_extend_timeout(INNODB_EXTEND_TIMEOUT_INTERVAL,
@@ -2727,8 +2713,6 @@ log_group_archive_file_header_write(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->archive_space_id,
 	       0,
 	       dest_offset / UNIV_PAGE_SIZE,
@@ -2763,8 +2747,6 @@ log_group_archive_completed_header_write(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	fil_io(OS_FILE_WRITE | OS_FILE_LOG, true, group->archive_space_id,
 	       0,
 	       dest_offset / UNIV_PAGE_SIZE,
@@ -2895,8 +2877,6 @@ log_group_archive(
 
 	log_sys->n_log_ios++;
 
-	MONITOR_INC(MONITOR_LOG_IO);
-
 	//TODO (jonaso): This must be dead code??
 	log_encrypt_before_write(log_sys->next_checkpoint_no,
 				 buf, start_lsn, len);
diff --git a/storage/xtradb/log/log0online.cc b/storage/xtradb/log/log0online.cc
index b25e2bca71107b1ce0862605afc148a7a9049445..460fb19cf8ae0a9a5a5948ac4c4fe52adf7e2d42 100644
--- a/storage/xtradb/log/log0online.cc
+++ b/storage/xtradb/log/log0online.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
-Street, Fifth Floor, Boston, MA 02110-1301, USA
+Street, Fifth Floor, Boston, MA 02110-1335  USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/log/log0recv.cc b/storage/xtradb/log/log0recv.cc
index d8e90de45e9f9180ad0264b51db47593fdbe3d61..dd55d31218a323811fd29fb25623f32561bad29a 100644
--- a/storage/xtradb/log/log0recv.cc
+++ b/storage/xtradb/log/log0recv.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1997, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2013, 2017, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -419,7 +419,7 @@ recv_sys_init(
 		recv_sys->last_block_buf_start, OS_FILE_LOG_BLOCK_SIZE));
 
 	recv_sys->found_corrupt_log = FALSE;
-	recv_sys->progress_time = ut_time();
+	recv_sys->progress_time = time(NULL);
 
 	recv_max_page_lsn = 0;
 
@@ -1789,7 +1789,7 @@ recv_recover_page_func(
 
 	mtr_commit(&mtr);
 
-	ib_time_t time = ut_time();
+	time_t now = time(NULL);
 
 	mutex_enter(&(recv_sys->mutex));
 
@@ -1801,7 +1801,7 @@ recv_recover_page_func(
 
 	ut_a(recv_sys->n_addrs > 0);
 	if (ulint n = --recv_sys->n_addrs) {
-		if (recv_sys->report(time)) {
+		if (recv_sys->report(now)) {
 			ib_logf(IB_LOG_LEVEL_INFO,
 				"To recover: " ULINTPF " pages from log", n);
 			service_manager_extend_timeout(
@@ -2720,30 +2720,30 @@ recv_scan_log_recs(
 		log_block_convert_lsn_to_no(scanned_lsn));
 		*/
 
-		if (no != log_block_convert_lsn_to_no(scanned_lsn)
-		    || !log_block_checksum_is_ok_or_old_format(log_block, true)) {
+		if (no != log_block_convert_lsn_to_no(scanned_lsn)) {
+			/* Garbage or an incompletely written log block.
+			We will not report any error; because this can happen
+			when InnoDB was killed while it was writing
+			redo log. We simply treat this as an abrupt end of the
+			redo log. */
+			finished = true;
+			break;
+		} else if (!log_block_checksum_is_ok_or_old_format(
+					log_block, true)) {
 
-			if (no == log_block_convert_lsn_to_no(scanned_lsn)
-			    && !log_block_checksum_is_ok_or_old_format(
-				    log_block, true)) {
-				fprintf(stderr,
-					"InnoDB: Log block no %lu at"
-					" lsn " LSN_PF " has\n"
-					"InnoDB: ok header, but checksum field"
-					" contains %lu, should be %lu\n",
-					(ulong) no,
-					scanned_lsn,
-					(ulong) log_block_get_checksum(
-						log_block),
-					(ulong) log_block_calc_checksum(
-						log_block));
-			}
+			fprintf(stderr,
+				"InnoDB: Log block no %lu at"
+				" lsn " LSN_PF " has\n"
+				"InnoDB: ok header, but checksum field"
+				" contains %lu, should be %lu\n",
+				(ulong) no,
+				scanned_lsn,
+				(ulong) log_block_get_checksum(log_block),
+				(ulong) log_block_calc_checksum(log_block));
 
 			maybe_encrypted = log_crypt_block_maybe_encrypted(log_block,
 					&log_crypt_err);
 
-			/* Garbage or an incompletely written log block */
-
 			/* Print checkpoint encryption keys if present */
 			log_crypt_print_checkpoint_keys(log_block);
 			finished = TRUE;
@@ -2764,7 +2764,6 @@ recv_scan_log_recs(
 			}
 
 			break;
-
 		}
 
 		if (log_block_get_flush_bit(log_block)) {
diff --git a/storage/xtradb/mach/mach0data.cc b/storage/xtradb/mach/mach0data.cc
index feeedb01609480df367944474cc503565c09b811..064d997cd7c8675be7da94d55bdf683599385659 100644
--- a/storage/xtradb/mach/mach0data.cc
+++ b/storage/xtradb/mach/mach0data.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/mem/mem0dbg.cc b/storage/xtradb/mem/mem0dbg.cc
index a77785a369ade125c0e3742f67719cf65dec810e..2d8db48db2e050b37cfa0ef215d644dee9437877 100644
--- a/storage/xtradb/mem/mem0dbg.cc
+++ b/storage/xtradb/mem/mem0dbg.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/mem/mem0mem.cc b/storage/xtradb/mem/mem0mem.cc
index f91126697fc71683a12a1b7145a577355037aab7..82c1292b4bebc55ce2f36ea6da78bad37233cc9f 100644
--- a/storage/xtradb/mem/mem0mem.cc
+++ b/storage/xtradb/mem/mem0mem.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/mem/mem0pool.cc b/storage/xtradb/mem/mem0pool.cc
index 42d0417c7688234782b02bd1d2f77cc0953fb754..b2c46aefb8b1616d84979b21f76ee38bdbb9272b 100644
--- a/storage/xtradb/mem/mem0pool.cc
+++ b/storage/xtradb/mem/mem0pool.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/mtr/mtr0log.cc b/storage/xtradb/mtr/mtr0log.cc
index 82df1df63d4d4f672b0bda7cae3cfb4512fd16f2..189d52d68b08fa3d9a4fc680f26501c2351b7734 100644
--- a/storage/xtradb/mtr/mtr0log.cc
+++ b/storage/xtradb/mtr/mtr0log.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/mtr/mtr0mtr.cc b/storage/xtradb/mtr/mtr0mtr.cc
index e564b270d00dae1e7431c1e7610b64ff9a22383f..77af6e9eb6064b5deadcb1318315158084551a44 100644
--- a/storage/xtradb/mtr/mtr0mtr.cc
+++ b/storage/xtradb/mtr/mtr0mtr.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/os/os0file.cc b/storage/xtradb/os/os0file.cc
index 468a54768be3494042f4c9baaca912b1cdc5c21d..1e0f28d393fddfcf0ea344ec1ae5b7063181e387 100644
--- a/storage/xtradb/os/os0file.cc
+++ b/storage/xtradb/os/os0file.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2009, Percona Inc.
-Copyright (c) 2013, 2018, MariaDB Corporation.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted
 by Percona Inc.. Those modifications are
@@ -22,7 +22,7 @@ Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 ***********************************************************************/
 
@@ -214,7 +214,10 @@ struct os_aio_slot_t{
 	ulint		pos;		/*!< index of the slot in the aio
 					array */
 	ibool		reserved;	/*!< TRUE if this slot is reserved */
-	time_t		reservation_time;/*!< time when reserved */
+	/** time(NULL) when reserved.
+	FIXME: os_aio_simulated_handle() may malfunction if
+	the system time is adjusted! */
+	time_t		reservation_time;
 	ulint		len;		/*!< length of the block to read or
 					write */
 	byte*		buf;		/*!< buffer used in i/o */
@@ -2968,10 +2971,6 @@ os_file_pread(
 	trx_t*		trx)
 {
 	off_t	offs;
-	ulint		sec;
-	ulint		ms;
-	ib_uint64_t	start_time;
-	ib_uint64_t	finish_time;
 
 	ut_ad(n);
 
@@ -2988,15 +2987,9 @@ os_file_pread(
 
 	os_n_file_reads++;
 
-	if (UNIV_UNLIKELY(trx && trx->take_stats))
-	{
-	        trx->io_reads++;
-		trx->io_read += n;
-		ut_usectime(&sec, &ms);
-		start_time = (ib_uint64_t)sec * 1000000 + ms;
-	} else {
-		start_time = 0;
-	}
+	const ulonglong start_time = UNIV_UNLIKELY(trx && trx->take_stats)
+		? my_interval_timer()
+		: 0;
 
 	const bool monitor = MONITOR_IS_ON(MONITOR_OS_PENDING_READS);
 #ifdef HAVE_PREAD
@@ -3022,9 +3015,8 @@ os_file_pread(
 
 	if (UNIV_UNLIKELY(start_time != 0))
 	{
-		ut_usectime(&sec, &ms);
-		finish_time = (ib_uint64_t)sec * 1000000 + ms;
-		trx->io_reads_wait_timer += (ulint)(finish_time - start_time);
+		trx->io_reads_wait_timer += ulint((my_interval_timer()
+						   - start_time) / 1000);
 	}
 
 	return(n_bytes);
@@ -3071,9 +3063,8 @@ os_file_pread(
 
 		if (UNIV_UNLIKELY(start_time != 0)
 		{
-			ut_usectime(&sec, &ms);
-			finish_time = (ib_uint64_t)sec * 1000000 + ms;
-			trx->io_reads_wait_timer += (ulint)(finish_time - start_time);
+			trx->io_reads_wait_timer += ulint(
+				(my_interval_timer() - start_time) / 1000);
 		}
 
 		return(ret);
@@ -4518,7 +4509,7 @@ os_aio_init(
 
 	os_aio_validate();
 
-	os_last_printout = ut_time();
+	os_last_printout = time(NULL);
 
 #ifdef _WIN32
 	ut_a(completion_port == 0 && read_completion_port == 0);
@@ -4846,7 +4837,7 @@ os_aio_array_reserve_slot(
 	}
 
 	slot->reserved = TRUE;
-	slot->reservation_time = ut_time();
+	slot->reservation_time = time(NULL);
 	slot->message1 = message1;
 	slot->message2 = message2;
 	slot->file     = file;
@@ -5988,7 +5979,7 @@ os_aio_simulated_handle(
 		if (slot->reserved) {
 
 			age = (ulint) difftime(
-				ut_time(), slot->reservation_time);
+				time(NULL), slot->reservation_time);
 
 			if ((age >= 2 && age > biggest_age)
 			    || (age >= 2 && age == biggest_age
@@ -6401,7 +6392,7 @@ os_aio_print(
 	}
 
 	putc('\n', file);
-	current_time = ut_time();
+	current_time = time(NULL);
 	time_elapsed = 0.001 + difftime(current_time, os_last_printout);
 
 	fprintf(file,
diff --git a/storage/xtradb/os/os0proc.cc b/storage/xtradb/os/os0proc.cc
index c64c37705b56e309d4ba6ce03f941a330cdfd640..2a63fd3806daaf3bb451b6dbeb02e69773a82b6b 100644
--- a/storage/xtradb/os/os0proc.cc
+++ b/storage/xtradb/os/os0proc.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/os/os0stacktrace.cc b/storage/xtradb/os/os0stacktrace.cc
index c4c428e0db3796fa96aea8de3994e1532c29ab75..960324ff09d1c899a91471b3b6bacf675b9b51ab 100644
--- a/storage/xtradb/os/os0stacktrace.cc
+++ b/storage/xtradb/os/os0stacktrace.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/os/os0sync.cc b/storage/xtradb/os/os0sync.cc
index a494be537d97684ff70bfb34af37aaa6ce1772a8..e409529f132991b46001f0d3b3255e1e2c42dbf8 100644
--- a/storage/xtradb/os/os0sync.cc
+++ b/storage/xtradb/os/os0sync.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -59,9 +59,6 @@ UNIV_INTERN ulint	os_event_count		= 0;
 UNIV_INTERN ulint	os_mutex_count		= 0;
 UNIV_INTERN ulint	os_fast_mutex_count	= 0;
 
-/* The number of microsecnds in a second. */
-static const ulint MICROSECS_IN_A_SECOND = 1000000;
-
 #ifdef UNIV_PFS_MUTEX
 UNIV_INTERN mysql_pfs_key_t	event_os_mutex_key;
 UNIV_INTERN mysql_pfs_key_t	os_mutex_key;
@@ -539,26 +536,9 @@ os_event_wait_time_low(
 	struct timespec	abstime;
 
 	if (time_in_usec != OS_SYNC_INFINITE_TIME) {
-		struct timeval	tv;
-		int		ret;
-		ulint		sec;
-		ulint		usec;
-
-		ret = ut_usectime(&sec, &usec);
-		ut_a(ret == 0);
-
-		tv.tv_sec = sec;
-		tv.tv_usec = usec;
-
-		tv.tv_usec += time_in_usec;
-
-		if ((ulint) tv.tv_usec >= MICROSECS_IN_A_SECOND) {
-			tv.tv_sec += tv.tv_usec / MICROSECS_IN_A_SECOND;
-			tv.tv_usec %= MICROSECS_IN_A_SECOND;
-		}
-
-		abstime.tv_sec  = tv.tv_sec;
-		abstime.tv_nsec = tv.tv_usec * 1000;
+		ulonglong usec = ulonglong(time_in_usec) + my_hrtime().val;
+		abstime.tv_sec = usec / 1000000;
+		abstime.tv_nsec = (usec % 1000000) * 1000;
 	} else {
 		abstime.tv_nsec = 999999999;
 		abstime.tv_sec = (time_t) ULINT_MAX;
diff --git a/storage/xtradb/os/os0thread.cc b/storage/xtradb/os/os0thread.cc
index 8baf06b9bb7cda90bf11c8ea4efdf7b052bed628..195e24cd11ad257faad76a1c861a00bea71f85ec 100644
--- a/storage/xtradb/os/os0thread.cc
+++ b/storage/xtradb/os/os0thread.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/page/page0cur.cc b/storage/xtradb/page/page0cur.cc
index 692cb393afd334ce0f7d45c40f41b8b73e6b550d..e9ac4b4bb04c9fb96d06664b69a8af27ec83aee7 100644
--- a/storage/xtradb/page/page0cur.cc
+++ b/storage/xtradb/page/page0cur.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -48,7 +48,7 @@ number between 0 and 2^64-1 inclusive. The formula and the constants
 being used are:
 X[n+1] = (a * X[n] + c) mod m
 where:
-X[0] = ut_time_us(NULL)
+X[0] = my_interval_timer()
 a = 1103515245 (3^5 * 5 * 7 * 129749)
 c = 12345 (3 * 5 * 823)
 m = 18446744073709551616 (2^64)
@@ -61,12 +61,10 @@ page_cur_lcg_prng(void)
 {
 #define LCG_a	1103515245
 #define LCG_c	12345
-	static ib_uint64_t	lcg_current = 0;
-	static ibool		initialized = FALSE;
+	static uint64_t	lcg_current;
 
-	if (!initialized) {
-		lcg_current = (ib_uint64_t) ut_time_us(NULL);
-		initialized = TRUE;
+	if (!lcg_current) {
+		lcg_current = my_interval_timer();
 	}
 
 	/* no need to "% 2^64" explicitly because lcg_current is
diff --git a/storage/xtradb/page/page0page.cc b/storage/xtradb/page/page0page.cc
index 7b62fe756af1156a75e2824ed87553c30c499ec6..16587f872efc0bc16386ca8165cdf41d3d746c12 100644
--- a/storage/xtradb/page/page0page.cc
+++ b/storage/xtradb/page/page0page.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/page/page0zip.cc b/storage/xtradb/page/page0zip.cc
index 90a1d0794a31fd1cb5cf6d40ab8d603f90af2321..0c7f9b6feffe28718b7eca25dd4e03cef76cc22d 100644
--- a/storage/xtradb/page/page0zip.cc
+++ b/storage/xtradb/page/page0zip.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 2005, 2016, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2012, Facebook Inc.
-Copyright (c) 2014, 2018, MariaDB Corporation.
+Copyright (c) 2014, 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1240,7 +1240,7 @@ page_zip_compress(
 	ulint		n_blobs	= 0;
 	byte*		storage;/* storage of uncompressed columns */
 #ifndef UNIV_HOTBACKUP
-	ullint		usec = ut_time_us(NULL);
+	const ulonglong	ns = my_interval_timer();
 #endif /* !UNIV_HOTBACKUP */
 #ifdef PAGE_ZIP_COMPRESS_DBG
 	FILE*		logfile = NULL;
@@ -1489,7 +1489,7 @@ page_zip_compress(
 			dict_index_zip_failure(index);
 		}
 
-		ullint	time_diff = ut_time_us(NULL) - usec;
+		const ullint time_diff = (my_interval_timer() - ns) / 1000;
 		page_zip_stat[page_zip->ssize - 1].compressed_usec
 			+= time_diff;
 		if (cmp_per_index_enabled) {
@@ -1557,7 +1557,7 @@ page_zip_compress(
 	}
 #endif /* PAGE_ZIP_COMPRESS_DBG */
 #ifndef UNIV_HOTBACKUP
-	ullint	time_diff = ut_time_us(NULL) - usec;
+	const ullint time_diff = (my_interval_timer() - ns) / 1000;
 	page_zip_stat[page_zip->ssize - 1].compressed_ok++;
 	page_zip_stat[page_zip->ssize - 1].compressed_usec += time_diff;
 	if (cmp_per_index_enabled) {
@@ -3006,7 +3006,7 @@ page_zip_decompress(
 	mem_heap_t*	heap;
 	ulint*		offsets;
 #ifndef UNIV_HOTBACKUP
-	ullint		usec = ut_time_us(NULL);
+	const ulonglong	ns = my_interval_timer();
 #endif /* !UNIV_HOTBACKUP */
 
 	ut_ad(page_zip_simple_validate(page_zip));
@@ -3192,7 +3192,7 @@ page_zip_decompress(
 	page_zip_fields_free(index);
 	mem_heap_free(heap);
 #ifndef UNIV_HOTBACKUP
-	ullint	time_diff = ut_time_us(NULL) - usec;
+	const uint64_t time_diff = (my_interval_timer() - ns) / 1000;
 	page_zip_stat[page_zip->ssize - 1].decompressed++;
 	page_zip_stat[page_zip->ssize - 1].decompressed_usec += time_diff;
 
diff --git a/storage/xtradb/pars/lexyy.cc b/storage/xtradb/pars/lexyy.cc
index 33de48e7b2f0f81f3dacdb04570cb67320fade4a..ed6e2b53c2f18d488ae8570988734a1d9c138201 100644
--- a/storage/xtradb/pars/lexyy.cc
+++ b/storage/xtradb/pars/lexyy.cc
@@ -912,7 +912,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /******************************************************
diff --git a/storage/xtradb/pars/make_bison.sh b/storage/xtradb/pars/make_bison.sh
index 2618be102bc093f7bc94c50d55c93e66ff541479..a1722f5f6b7394253cb74559f7579a75090a2b64 100755
--- a/storage/xtradb/pars/make_bison.sh
+++ b/storage/xtradb/pars/make_bison.sh
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # generate parser files from bison input files.
 
diff --git a/storage/xtradb/pars/make_flex.sh b/storage/xtradb/pars/make_flex.sh
index 54aebb259d991e2152d487fa31c42ee6c43fc4ed..b976a56a9dd603d16d0d8e97cd1af2e5b6195c9e 100755
--- a/storage/xtradb/pars/make_flex.sh
+++ b/storage/xtradb/pars/make_flex.sh
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU General Public License along with
 # this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # generate lexer files from flex input files.
 
diff --git a/storage/xtradb/pars/pars0grm.cc b/storage/xtradb/pars/pars0grm.cc
index b360f36e597c9d3e643f3fb9ab918cbe5cfdf1d6..c3649d9255565a71ee8e55b391e53f70533b8977 100644
--- a/storage/xtradb/pars/pars0grm.cc
+++ b/storage/xtradb/pars/pars0grm.cc
@@ -18,7 +18,7 @@
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Boston, MA 02110-1335  USA.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
diff --git a/storage/xtradb/pars/pars0grm.y b/storage/xtradb/pars/pars0grm.y
index 60913287cc48556a001c6b37fd212651f32cbe33..2e4776caaf47e100f7ef28754e43f7b47afc7c14 100644
--- a/storage/xtradb/pars/pars0grm.y
+++ b/storage/xtradb/pars/pars0grm.y
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/pars/pars0lex.l b/storage/xtradb/pars/pars0lex.l
index 60756413c0a48315f007687c971958fc3e6d2a51..71699d2f099805f3414cc85b2a9ce25aca7f950a 100644
--- a/storage/xtradb/pars/pars0lex.l
+++ b/storage/xtradb/pars/pars0lex.l
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/pars/pars0opt.cc b/storage/xtradb/pars/pars0opt.cc
index 5a7e1861d74ba638ee5d1c77166d77a34b29d4ef..135402f8144830f1a9e21420d2b30bc2528853dc 100644
--- a/storage/xtradb/pars/pars0opt.cc
+++ b/storage/xtradb/pars/pars0opt.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/pars/pars0pars.cc b/storage/xtradb/pars/pars0pars.cc
index 24bbeb1d36dd0d0bbf5a007e7605fdb88aa85039..3c7f5a812463ebaddbd737decc1c829772068398 100644
--- a/storage/xtradb/pars/pars0pars.cc
+++ b/storage/xtradb/pars/pars0pars.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St,
-Fifth Floor, Boston, MA 02110-1301 USA
+Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/pars/pars0sym.cc b/storage/xtradb/pars/pars0sym.cc
index b01a69cb33a04021df4ddb57ca72d57e3cb63d07..4ce1946d7be6dcaa083b6d643427c46448a840de 100644
--- a/storage/xtradb/pars/pars0sym.cc
+++ b/storage/xtradb/pars/pars0sym.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/que/que0que.cc b/storage/xtradb/que/que0que.cc
index e2dc0239e134098e6e60b49cf4db6e1bea2fbcce..090c5091a8d6cd55d553dc9a5f10a67725ec9e4a 100644
--- a/storage/xtradb/que/que0que.cc
+++ b/storage/xtradb/que/que0que.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -204,9 +204,6 @@ que_thr_end_lock_wait(
 {
 	que_thr_t*	thr;
 	ibool		was_active;
-	ulint		sec;
-	ulint		ms;
-	ib_uint64_t	now;
 
 	ut_ad(lock_mutex_own());
 	ut_ad(trx_mutex_own(trx));
@@ -224,10 +221,9 @@ que_thr_end_lock_wait(
 	que_thr_move_to_run_state(thr);
 
 	if (UNIV_UNLIKELY(trx->take_stats)) {
-		ut_usectime(&sec, &ms);
-		now = (ib_uint64_t)sec * 1000000 + ms;
-		trx->lock_que_wait_timer
-			+= (ulint)(now - trx->lock_que_wait_ustarted);
+		trx->lock_que_wait_timer += static_cast(
+			(my_interval_timer() - trx->lock_que_wait_nstarted)
+			/ 1000);
 	}
 
 	trx->lock.que_state = TRX_QUE_RUNNING;
diff --git a/storage/xtradb/read/read0read.cc b/storage/xtradb/read/read0read.cc
index c350e24dbb0085d2e6a26dabebf5ec6c81ab9c28..f4737ba176ec151a43fd60157a737ea47424ad92 100644
--- a/storage/xtradb/read/read0read.cc
+++ b/storage/xtradb/read/read0read.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/rem/rem0cmp.cc b/storage/xtradb/rem/rem0cmp.cc
index 616ef322fb52bb4b11b761a4a90eff25bb90526b..5f9c497cb29a03545ff7cf5ff5528d571822bcff 100644
--- a/storage/xtradb/rem/rem0cmp.cc
+++ b/storage/xtradb/rem/rem0cmp.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/rem/rem0rec.cc b/storage/xtradb/rem/rem0rec.cc
index ff680b3cfb61264271908fe1492fc79bac064f2a..955652d31b690ae15b88a38315279768d6fc0c80 100644
--- a/storage/xtradb/rem/rem0rec.cc
+++ b/storage/xtradb/rem/rem0rec.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/row/row0ext.cc b/storage/xtradb/row/row0ext.cc
index 32b78391d6a66297aa80d7efbcfb9ffa10677476..bfc8165c9c5034996487570f77c79d42c63f3624 100644
--- a/storage/xtradb/row/row0ext.cc
+++ b/storage/xtradb/row/row0ext.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/row/row0ftsort.cc b/storage/xtradb/row/row0ftsort.cc
index d3c8b9a80bd4e598381dab03cc6743f5f5e80565..48c61bdb748a230fb6c1f2e97bd9b52384653c0f 100644
--- a/storage/xtradb/row/row0ftsort.cc
+++ b/storage/xtradb/row/row0ftsort.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1503,7 +1503,6 @@ row_fts_merge_insert(
 	ins_ctx.fts_table.type = FTS_INDEX_TABLE;
 	ins_ctx.fts_table.index_id = index->id;
 	ins_ctx.fts_table.table_id = table->id;
-	ins_ctx.fts_table.parent = index->table->name;
 	ins_ctx.fts_table.table = index->table;
 	space = table->space;
 
diff --git a/storage/xtradb/row/row0import.cc b/storage/xtradb/row/row0import.cc
index a1b584141cfaf69c0a85dac44c0912213072d289..5b371cfbf7488649d725963f94f7f1e45112a464 100644
--- a/storage/xtradb/row/row0import.cc
+++ b/storage/xtradb/row/row0import.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/row/row0ins.cc b/storage/xtradb/row/row0ins.cc
index cb22f5030d57d0feff137ad58434678558598c21..50da7fb40adc9d4c7d94b641fcf68482eb74ccd4 100644
--- a/storage/xtradb/row/row0ins.cc
+++ b/storage/xtradb/row/row0ins.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1299,7 +1299,7 @@ row_ins_foreign_check_on_constraint(
 	err = wsrep_append_foreign_key(
 				       thr_get_trx(thr),
 				       foreign,
-				       clust_rec,
+				       cascade->pcur->old_rec,
 				       clust_index,
 				       FALSE, WSREP_KEY_EXCLUSIVE);
 	if (err != DB_SUCCESS) {
@@ -1676,6 +1676,11 @@ row_ins_check_foreign_constraint(
 						check_index,
 						check_ref,
 						key_type);
+
+					if (err != DB_SUCCESS) {
+						fprintf(stderr,
+							"WSREP: foreign key append failed: %d\n", err);
+					}
 #endif /* WITH_WSREP */
 					goto end_scan;
 				} else if (foreign->type != 0) {
diff --git a/storage/xtradb/row/row0log.cc b/storage/xtradb/row/row0log.cc
index 0fc1af64b74b3748d9e331e75b75c59fa04d2fe2..8582c0a40b2346011bbc015c74c7df259c3ec04d 100644
--- a/storage/xtradb/row/row0log.cc
+++ b/storage/xtradb/row/row0log.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/row/row0merge.cc b/storage/xtradb/row/row0merge.cc
index 75d7397e7ee45a4ee1163a33ea3d2692215a5c4a..a79a766bcaf655aefbbf67e146e04ae2cf068cd1 100644
--- a/storage/xtradb/row/row0merge.cc
+++ b/storage/xtradb/row/row0merge.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -27,6 +27,7 @@ Completed by Sunny Bains and Marko Makela
 #include 
 #include 
 #include 
+#include 
 
 #include "row0merge.h"
 #include "row0ext.h"
@@ -42,15 +43,8 @@ Completed by Sunny Bains and Marko Makela
 #include "row0import.h"
 #include "handler0alter.h"
 #include "ha_prototypes.h"
-#include "math.h" /* log2() */
 #include "fil0crypt.h"
 
-float my_log2f(float n)
-{
-	/* log(n) / log(2) is log2. */
-	return (float)(log((double)n) / log((double)2));
-}
-
 /* Ignore posix_fadvise() on those platforms where it does not exist */
 #if defined __WIN__
 # define posix_fadvise(fd, offset, len, advice) /* nothing */
@@ -1935,6 +1929,7 @@ row_merge_read_clustered_index(
 			UNIV_MEM_INVALID(&block[0], srv_sort_buf_size);
 
 			merge_buf[i] = row_merge_buf_empty(buf);
+			buf = merge_buf[i];
 
 			if (UNIV_LIKELY(row != NULL)) {
 				/* Try writing the record again, now
@@ -2083,8 +2078,7 @@ row_merge_read_clustered_index(
 				     false, true, false);
 
 		if (err == DB_SUCCESS) {
-			fts_update_next_doc_id(
-				0, new_table, old_table->name, max_doc_id);
+			fts_update_next_doc_id(NULL, new_table, max_doc_id);
 		}
 	}
 
@@ -2517,18 +2511,13 @@ row_merge_sort(
 	/* Record the number of merge runs we need to perform */
 	num_runs = file->offset;
 
-	/* Find the number N which 2^N is greater or equal than num_runs */
-	/* N is merge sort running count */
-	total_merge_sort_count = ceil(my_log2f(num_runs));
-	if(total_merge_sort_count <= 0) {
-		total_merge_sort_count=1;
-	}
-
 	/* If num_runs are less than 1, nothing to merge */
 	if (num_runs <= 1) {
 		DBUG_RETURN(error);
 	}
 
+	total_merge_sort_count = ceil(log2f(num_runs));
+
 	/* "run_offset" records each run's first offset number */
 	run_offset = (ulint*) mem_alloc(file->offset * sizeof(ulint));
 
diff --git a/storage/xtradb/row/row0mysql.cc b/storage/xtradb/row/row0mysql.cc
index a21e32cb91ed63c88456873e601590aa609f729c..34a91b9e5fd5d47bfacfd57fce3898c6d0fff3d8 100644
--- a/storage/xtradb/row/row0mysql.cc
+++ b/storage/xtradb/row/row0mysql.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -1476,8 +1476,9 @@ row_insert_for_mysql(
 		doc_id = fts_get_doc_id_from_row(table, node->row);
 
 		if (doc_id <= 0) {
-			fprintf(stderr,
-				"InnoDB: FTS Doc ID must be large than 0 \n");
+			ib_logf(IB_LOG_LEVEL_ERROR,
+				"FTS_DOC_ID must be larger than 0"
+				" for table %s", table->name);
 			err = DB_FTS_INVALID_DOCID;
 			trx->error_state = DB_FTS_INVALID_DOCID;
 			goto error_exit;
@@ -1488,12 +1489,10 @@ row_insert_for_mysql(
 				= table->fts->cache->next_doc_id;
 
 			if (doc_id < next_doc_id) {
-				fprintf(stderr,
-					"InnoDB: FTS Doc ID must be large than"
-					" " UINT64PF " for table",
-					next_doc_id - 1);
-				ut_print_name(stderr, trx, TRUE, table->name);
-				putc('\n', stderr);
+				ib_logf(IB_LOG_LEVEL_ERROR,
+					"FTS_DOC_ID must be larger than "
+					UINT64PF " for table %s",
+					next_doc_id - 1, table->name);
 
 				err = DB_FTS_INVALID_DOCID;
 				trx->error_state = DB_FTS_INVALID_DOCID;
@@ -3841,7 +3840,7 @@ row_truncate_table_for_mysql(
 					os_thread_sleep(10000000););
 
 			table->fts->fts_status |= TABLE_DICT_LOCKED;
-			fts_update_next_doc_id(trx, table, NULL, 0);
+			fts_update_next_doc_id(trx, table, 0);
 			fts_cache_clear(table->fts->cache);
 			fts_cache_init(table->fts->cache);
 			table->fts->fts_status &= ~TABLE_DICT_LOCKED;
@@ -3894,7 +3893,7 @@ row_drop_table_for_mysql(
 	const char*	name,	/*!< in: table name */
 	trx_t*		trx,	/*!< in: transaction handle */
 	bool		drop_db,/*!< in: true=dropping whole database */
-	ibool		create_failed,/*!has_search_latch));
 #endif /* UNIV_SYNC_DEBUG */
 
-	if (UNIV_UNLIKELY(trx->take_stats)) {
-		ut_usectime(&sec, &ms);
-		start_time = (ib_uint64_t)sec * 1000000 + ms;
-	} else {
-		start_time = 0;
-	}
+	const ulonglong start_time = UNIV_UNLIKELY(trx->take_stats)
+		? my_interval_timer()
+		: 0;
 
 	trx->op_info = "waiting in InnoDB queue";
 
@@ -557,9 +552,8 @@ srv_conc_enter_innodb_without_atomics(
 	trx->op_info = "";
 
 	if (UNIV_UNLIKELY(start_time != 0)) {
-		ut_usectime(&sec, &ms);
-		finish_time = (ib_uint64_t)sec * 1000000 + ms;
-		trx->innodb_que_wait_timer += (ulint)(finish_time - start_time);
+		trx->innodb_que_wait_timer += ulint((my_interval_timer()
+						     - start_time) / 1000);
 	}
 
 	os_fast_mutex_lock(&srv_conc_mutex);
diff --git a/storage/xtradb/srv/srv0mon.cc b/storage/xtradb/srv/srv0mon.cc
index 47abae66192be22db21679287c60edbb5e69744b..d7e7e4a79119d3e37488e28c1ede4706ffed7dfc 100644
--- a/storage/xtradb/srv/srv0mon.cc
+++ b/storage/xtradb/srv/srv0mon.cc
@@ -14,7 +14,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -873,15 +873,18 @@ static monitor_info_t	innodb_counter_info[] =
 	 MONITOR_DEFAULT_START, MONITOR_OVLD_MAX_AGE_SYNC},
 
 	{"log_pending_log_writes", "recovery", "Pending log writes",
-	 MONITOR_NONE,
+	 static_cast(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_PENDING_LOG_WRITE},
 
 	{"log_pending_checkpoint_writes", "recovery", "Pending checkpoints",
-	 MONITOR_NONE,
+	 static_cast(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_PENDING_CHECKPOINT_WRITE},
 
 	{"log_num_log_io", "recovery", "Number of log I/Os",
-	 MONITOR_NONE,
+	 static_cast(
+	 MONITOR_EXISTING | MONITOR_DISPLAY_CURRENT),
 	 MONITOR_DEFAULT_START, MONITOR_LOG_IO},
 
 	{"log_waits", "recovery",
@@ -1970,6 +1973,25 @@ srv_mon_process_existing_counter(
 		value = (mon_type_t) log_sys->lsn;
 		break;
 
+	case MONITOR_PENDING_LOG_WRITE:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(log_sys->n_pending_writes);
+		mutex_exit(&log_sys->mutex);
+		break;
+
+	case MONITOR_PENDING_CHECKPOINT_WRITE:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(
+		    log_sys->n_pending_checkpoint_writes);
+		mutex_exit(&log_sys->mutex);
+		break;
+
+	case MONITOR_LOG_IO:
+		mutex_enter(&log_sys->mutex);
+		value = static_cast(log_sys->n_log_ios);
+		mutex_exit(&log_sys->mutex);
+		break;
+
 	case MONITOR_OVLD_BUF_OLDEST_LSN:
 		value = (mon_type_t) buf_pool_get_oldest_modification();
 		break;
diff --git a/storage/xtradb/srv/srv0srv.cc b/storage/xtradb/srv/srv0srv.cc
index c05b667dcf4f0d75998d7ead698962a33b77b163..bc7f6c948de02cf351e2453297a11bc40e86f836 100644
--- a/storage/xtradb/srv/srv0srv.cc
+++ b/storage/xtradb/srv/srv0srv.cc
@@ -28,7 +28,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -2168,10 +2168,11 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 	pfs_register_thread(srv_monitor_thread_key);
 #endif /* UNIV_PFS_THREAD */
 
-	srv_last_monitor_time = ut_time();
-	last_table_monitor_time = ut_time();
-	last_tablespace_monitor_time = ut_time();
-	last_monitor_time = ut_time();
+	current_time = time(NULL);
+	srv_last_monitor_time = current_time;
+	last_table_monitor_time = current_time;
+	last_tablespace_monitor_time = current_time;
+	last_monitor_time = current_time;
 	mutex_skipped = 0;
 	last_srv_print_monitor = srv_print_innodb_monitor;
 loop:
@@ -2182,12 +2183,12 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 
 	os_event_wait_time_low(srv_monitor_event, 5000000, sig_count);
 
-	current_time = ut_time();
+	current_time = time(NULL);
 
 	time_elapsed = difftime(current_time, last_monitor_time);
 
 	if (time_elapsed > 15) {
-		last_monitor_time = ut_time();
+		last_monitor_time = current_time;
 
 		if (srv_print_innodb_monitor) {
 			/* Reset mutex_skipped counter everytime
@@ -2234,7 +2235,7 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 		if (srv_print_innodb_tablespace_monitor
 		    && difftime(current_time,
 				last_tablespace_monitor_time) > 60) {
-			last_tablespace_monitor_time = ut_time();
+			last_tablespace_monitor_time = current_time;
 
 			fputs("========================"
 			      "========================\n",
@@ -2260,7 +2261,7 @@ DECLARE_THREAD(srv_monitor_thread)(void*)
 		if (srv_print_innodb_table_monitor
 		    && difftime(current_time, last_table_monitor_time) > 60) {
 
-			last_table_monitor_time = ut_time();
+			last_table_monitor_time = current_time;
 
 			fprintf(stderr, "Warning: %s\n",
 				DEPRECATED_MSG_INNODB_TABLE_MONITOR);
@@ -2854,20 +2855,16 @@ static
 void
 srv_shutdown_print_master_pending(
 /*==============================*/
-	ib_time_t*	last_print_time,	/*!< last time the function
+	time_t*		last_print_time,	/*!< last time the function
 						print the message */
 	ulint		n_tables_to_drop,	/*!< number of tables to
 						be dropped */
 	ulint		n_bytes_merged)		/*!< number of change buffer
 						just merged */
 {
-	ib_time_t	current_time;
-	double		time_elapsed;
+	time_t current_time = time(NULL);
 
-	current_time = ut_time();
-	time_elapsed = ut_difftime(current_time, *last_print_time);
-
-	if (time_elapsed > 60) {
+	if (difftime(current_time, *last_print_time) > 60) {
 		*last_print_time = current_time;
 
 		if (n_tables_to_drop) {
@@ -2902,8 +2899,8 @@ void
 srv_master_do_active_tasks(void)
 /*============================*/
 {
-	ib_time_t	cur_time = ut_time();
-	ullint		counter_time = ut_time_us(NULL);
+	time_t		cur_time = time(NULL);
+	ulonglong	counter_time = microsecond_interval_timer();
 	ulint		n_evicted = 0;
 
 	/* First do the tasks that we are suppose to do at each
@@ -2932,7 +2929,7 @@ srv_master_do_active_tasks(void)
 
 	/* Do an ibuf merge */
 	srv_main_thread_op_info = "doing insert buffer merge";
-	counter_time = ut_time_us(NULL);
+	counter_time = microsecond_interval_timer();
 	ibuf_merge_in_background(false);
 	MONITOR_INC_TIME_IN_MICRO_SECS(
 		MONITOR_SRV_IBUF_MERGE_MICROSECOND, counter_time);
@@ -2994,9 +2991,7 @@ void
 srv_master_do_idle_tasks(void)
 /*==========================*/
 {
-	ullint	counter_time;
 	ulint	n_evicted = 0;
-
 	++srv_main_idle_loops;
 
 	MONITOR_INC(MONITOR_MASTER_IDLE_LOOPS);
@@ -3005,7 +3000,7 @@ srv_master_do_idle_tasks(void)
 	/* ALTER TABLE in MySQL requires on Unix that the table handler
 	can drop tables lazily after there no longer are SELECT
 	queries to them. */
-	counter_time = ut_time_us(NULL);
+	ulonglong counter_time = microsecond_interval_timer();
 	srv_main_thread_op_info = "doing background drop tables";
 	row_drop_tables_for_mysql_in_background();
 	MONITOR_INC_TIME_IN_MICRO_SECS(
@@ -3022,7 +3017,7 @@ srv_master_do_idle_tasks(void)
 	log_free_check();
 
 	/* Do an ibuf merge */
-	counter_time = ut_time_us(NULL);
+	counter_time = microsecond_interval_timer();
 	srv_main_thread_op_info = "doing insert buffer merge";
 	ibuf_merge_in_background(true);
 	MONITOR_INC_TIME_IN_MICRO_SECS(
@@ -3060,7 +3055,7 @@ srv_master_do_idle_tasks(void)
 
 	if (srv_log_arch_expire_sec) {
 		srv_main_thread_op_info = "purging archived logs";
-		purge_archived_logs(ut_time() - srv_log_arch_expire_sec,
+		purge_archived_logs(time(NULL) - srv_log_arch_expire_sec,
 				0);
 	}
 }
@@ -3073,7 +3068,7 @@ srv_shutdown(bool ibuf_merge)
 {
 	ulint		n_bytes_merged	= 0;
 	ulint		n_tables_to_drop;
-	ib_time_t	now = ut_time();
+	time_t		now = time(NULL);
 
 	do {
 		ut_ad(!srv_read_only_mode);
@@ -3234,10 +3229,10 @@ srv_purge_should_exit(ulint n_purged)
 	/* Slow shutdown was requested. */
 	if (n_purged) {
 #if defined HAVE_SYSTEMD && !defined EMBEDDED_LIBRARY
-		static ib_time_t progress_time;
-		ib_time_t time = ut_time();
-		if (time - progress_time >= 15) {
-			progress_time = time;
+		static time_t progress_time;
+		time_t now = time(NULL);
+		if (now - progress_time >= 15) {
+			progress_time = now;
 			service_manager_extend_timeout(
 				INNODB_EXTEND_TIMEOUT_INTERVAL,
 				"InnoDB: to purge " ULINTPF " transactions",
diff --git a/storage/xtradb/srv/srv0start.cc b/storage/xtradb/srv/srv0start.cc
index 941feeb70c7bba4107ac9058dc32a407df0eb951..153599391dc6b1fd226a709a706eec9d0150f442 100644
--- a/storage/xtradb/srv/srv0start.cc
+++ b/storage/xtradb/srv/srv0start.cc
@@ -28,7 +28,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -71,7 +71,6 @@ Created 2/16/1996 Heikki Tuuri
 #include "srv0srv.h"
 #include "buf0flu.h"
 #include "btr0defragment.h"
-#include "ut0timer.h"
 #include "btr0scrub.h"
 #include "mysql/service_wsrep.h" /* wsrep_recovery */
 
@@ -1743,9 +1742,6 @@ innobase_start_or_create_for_mysql()
 
 	os_fast_mutex_free(&srv_os_test_mutex);
 
-	/* This should be initialized early */
-	ut_init_timer();
-
 	if (srv_force_recovery == SRV_FORCE_NO_LOG_REDO) {
 		srv_read_only_mode = 1;
 	}
diff --git a/storage/xtradb/sync/sync0arr.cc b/storage/xtradb/sync/sync0arr.cc
index 134d16ae58e2c8f755ce895528189e9cf397ab56..c085e8ebcf56015ace1411dd1de3f4d94cb618fa 100644
--- a/storage/xtradb/sync/sync0arr.cc
+++ b/storage/xtradb/sync/sync0arr.cc
@@ -2,7 +2,7 @@
 
 Copyright (c) 1995, 2015, Oracle and/or its affiliates. All Rights Reserved.
 Copyright (c) 2008, Google Inc.
-Copyright (c) 2013, 2015, MariaDB Corporation. All Rights Reserved.
+Copyright (c) 2013, 2019, MariaDB Corporation.
 
 Portions of this file contain modifications contributed and copyrighted by
 Google, Inc. Those modifications are gratefully acknowledged and are described
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -123,8 +123,10 @@ struct sync_cell_t {
 					has not been signalled in the
 					period between the reset and
 					wait call. */
-	time_t		reservation_time;/*!< time when the thread reserved
-					the wait cell */
+	/** time(NULL) when the wait cell was reserved.
+	FIXME: sync_array_print_long_waits_low() may display bogus
+	warnings when the system time is adjusted to the past! */
+	time_t		reservation_time;
 };
 
 /* NOTE: It is allowed for a thread to wait
@@ -412,7 +414,7 @@ sync_array_reserve_cell(
                         event = sync_cell_get_event(cell);
 			cell->signal_count = os_event_reset(event);
 
-			cell->reservation_time = ut_time();
+			cell->reservation_time = time(NULL);
 
 			cell->thread = os_thread_get_curr_id();
 
diff --git a/storage/xtradb/sync/sync0rw.cc b/storage/xtradb/sync/sync0rw.cc
index 729f510013d64a90cf1933150e7fd7c1dde5ac8c..69a5300dfb18da22476c815624eb7205b5784d32 100644
--- a/storage/xtradb/sync/sync0rw.cc
+++ b/storage/xtradb/sync/sync0rw.cc
@@ -19,7 +19,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/sync/sync0sync.cc b/storage/xtradb/sync/sync0sync.cc
index 37ac3c56ffffa6a5cd9cc0da99c1a3b13942a11d..b29800ae6eac95b26e1a883c3b32d28ca99899e5 100644
--- a/storage/xtradb/sync/sync0sync.cc
+++ b/storage/xtradb/sync/sync0sync.cc
@@ -20,7 +20,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/trx/trx0i_s.cc b/storage/xtradb/trx/trx0i_s.cc
index 0c9618d98eb1eb59b5dc022c07ca387f4c1aea38..16b91a6b2a8cb1b8c507345ce374032f8349dd0a 100644
--- a/storage/xtradb/trx/trx0i_s.cc
+++ b/storage/xtradb/trx/trx0i_s.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 2007, 2012, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -152,9 +153,8 @@ struct i_s_table_cache_t {
 struct trx_i_s_cache_t {
 	rw_lock_t	rw_lock;	/*!< read-write lock protecting
 					the rest of this structure */
-	ullint		last_read;	/*!< last time the cache was read;
-					measured in microseconds since
-					epoch */
+	ulonglong	last_read;	/*!< last time the cache was read;
+					measured in nanoseconds */
 	ib_mutex_t		last_read_mutex;/*!< mutex protecting the
 					last_read member - it is updated
 					inside a shared lock of the
@@ -479,7 +479,7 @@ fill_trx_row(
 	ut_ad(lock_mutex_own());
 
 	row->trx_id = trx->id;
-	row->trx_started = (ib_time_t) trx->start_time;
+	row->trx_started = trx->start_time;
 	row->trx_state = trx_get_que_state_str(trx);
 	row->requested_lock_row = requested_lock_row;
 	ut_ad(requested_lock_row == NULL
@@ -488,7 +488,7 @@ fill_trx_row(
 	if (trx->lock.wait_lock != NULL) {
 
 		ut_a(requested_lock_row != NULL);
-		row->trx_wait_started = (ib_time_t) trx->lock.wait_started;
+		row->trx_wait_started = trx->lock.wait_started;
 	} else {
 		ut_a(requested_lock_row == NULL);
 		row->trx_wait_started = 0;
@@ -1221,22 +1221,16 @@ add_trx_relevant_locks_to_cache(
 }
 
 /** The minimum time that a cache must not be updated after it has been
-read for the last time; measured in microseconds. We use this technique
+read for the last time; measured in nanoseconds. We use this technique
 to ensure that SELECTs which join several INFORMATION SCHEMA tables read
 the same version of the cache. */
-#define CACHE_MIN_IDLE_TIME_US	100000 /* 0.1 sec */
+#define CACHE_MIN_IDLE_TIME_NS	100000000 /* 0.1 sec */
 
 /*******************************************************************//**
 Checks if the cache can safely be updated.
-@return	TRUE if can be updated */
-static
-ibool
-can_cache_be_updated(
-/*=================*/
-	trx_i_s_cache_t*	cache)	/*!< in: cache */
+@return whether the cache can be updated */
+static bool can_cache_be_updated(trx_i_s_cache_t* cache)
 {
-	ullint	now;
-
 	/* Here we read cache->last_read without acquiring its mutex
 	because last_read is only updated when a shared rw lock on the
 	whole cache is being held (see trx_i_s_cache_end_read()) and
@@ -1247,14 +1241,7 @@ can_cache_be_updated(
 #ifdef UNIV_SYNC_DEBUG
 	ut_a(rw_lock_own(&cache->rw_lock, RW_LOCK_EX));
 #endif
-
-	now = ut_time_us(NULL);
-	if (now - cache->last_read > CACHE_MIN_IDLE_TIME_US) {
-
-		return(TRUE);
-	}
-
-	return(FALSE);
+	return my_interval_timer() - cache->last_read > CACHE_MIN_IDLE_TIME_NS;
 }
 
 /*******************************************************************//**
@@ -1497,14 +1484,12 @@ trx_i_s_cache_end_read(
 /*===================*/
 	trx_i_s_cache_t*	cache)	/*!< in: cache */
 {
-	ullint	now;
-
 #ifdef UNIV_SYNC_DEBUG
 	ut_a(rw_lock_own(&cache->rw_lock, RW_LOCK_SHARED));
 #endif
 
 	/* update cache last read time */
-	now = ut_time_us(NULL);
+	const ulonglong now = my_interval_timer();
 	mutex_enter(&cache->last_read_mutex);
 	cache->last_read = now;
 	mutex_exit(&cache->last_read_mutex);
diff --git a/storage/xtradb/trx/trx0purge.cc b/storage/xtradb/trx/trx0purge.cc
index a9736e36075d0233322b9b00ba31c6274bf5a14a..f4e4d2f42eaa667a00cdb4efec8f718e23d487d4 100644
--- a/storage/xtradb/trx/trx0purge.cc
+++ b/storage/xtradb/trx/trx0purge.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -146,7 +146,8 @@ trx_purge_sys_create(
 	here only because the query threads code requires it. It is otherwise
 	quite unnecessary. We should get rid of it eventually. */
 	purge_sys->trx->id = 0;
-	purge_sys->trx->start_time = ut_time();
+	purge_sys->trx->start_time = time(NULL);
+	purge_sys->trx->start_time_micro = microsecond_interval_timer();
 	purge_sys->trx->state = TRX_STATE_ACTIVE;
 	purge_sys->trx->op_info = "purge trx";
 
diff --git a/storage/xtradb/trx/trx0rec.cc b/storage/xtradb/trx/trx0rec.cc
index 351f65bb9434e8e06eafcc014430122446ff2a0d..5548dec022df6d16a5849253b94c0fe352eee155 100644
--- a/storage/xtradb/trx/trx0rec.cc
+++ b/storage/xtradb/trx/trx0rec.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/trx/trx0roll.cc b/storage/xtradb/trx/trx0roll.cc
index 6f393511611b3ea3d73df2a96036fe42f4ab8b67..97f08d1fa0cd01cf6c8338a96e4aade4ce27ec62 100644
--- a/storage/xtradb/trx/trx0roll.cc
+++ b/storage/xtradb/trx/trx0roll.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -750,11 +750,11 @@ trx_roll_must_shutdown()
 		return true;
 	}
 
-	ib_time_t time = ut_time();
+	time_t now = time(NULL);
 	mutex_enter(&trx_sys->mutex);
 	mutex_enter(&recv_sys->mutex);
 
-	if (recv_sys->report(time)) {
+	if (recv_sys->report(now)) {
 		ulint n_trx = 0;
 		ulonglong n_rows = 0;
 		for (const trx_t* t = UT_LIST_GET_FIRST(trx_sys->rw_trx_list);
diff --git a/storage/xtradb/trx/trx0rseg.cc b/storage/xtradb/trx/trx0rseg.cc
index 38719a1c771287a3abe0f20d52f2390aaaa4192e..1d0eb6d29fde94079ce054601e0cb6b5372a5862 100644
--- a/storage/xtradb/trx/trx0rseg.cc
+++ b/storage/xtradb/trx/trx0rseg.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/trx/trx0sys.cc b/storage/xtradb/trx/trx0sys.cc
index 30660df01f6537b945f08d9dc250094ab132321b..fcdce291cf0e05cf081a701d99a4f5de0b6bd529 100644
--- a/storage/xtradb/trx/trx0sys.cc
+++ b/storage/xtradb/trx/trx0sys.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/trx/trx0trx.cc b/storage/xtradb/trx/trx0trx.cc
index 1044a9321a07a03e1e96096f8d67bec03378ca11..e072976d6cd35757db30fd8d98ce7a3130e24fda 100644
--- a/storage/xtradb/trx/trx0trx.cc
+++ b/storage/xtradb/trx/trx0trx.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -749,7 +749,8 @@ trx_resurrect_insert(
 	/* trx_start_low() is not called with resurrect, so need to initialize
 	start time here.*/
 	if (trx->state != TRX_STATE_COMMITTED_IN_MEMORY) {
-		trx->start_time = ut_time();
+		trx->start_time = time(NULL);
+		trx->start_time_micro = microsecond_interval_timer();
 	}
 
 	if (undo->dict_operation) {
@@ -835,7 +836,8 @@ trx_resurrect_update(
 	start time here.*/
 	if (trx->state == TRX_STATE_ACTIVE
 	    || trx->state == TRX_STATE_PREPARED) {
-		trx->start_time = ut_time();
+		trx->start_time = time(NULL);
+		trx->start_time_micro = microsecond_interval_timer();
 	}
 
 	if (undo->dict_operation) {
@@ -1104,10 +1106,11 @@ trx_start_low(
 
 	mutex_exit(&trx_sys->mutex);
 
-	trx->start_time = ut_time();
+	trx->start_time = time(NULL);
 
-	trx->start_time_micro =
-		trx->mysql_thd ? thd_query_start_micro(trx->mysql_thd) : 0;
+	trx->start_time_micro = trx->mysql_thd
+		? thd_query_start_micro(trx->mysql_thd)
+		: microsecond_interval_timer();
 
 	MONITOR_INC(MONITOR_TRX_ACTIVE);
 }
@@ -1795,21 +1798,15 @@ trx_commit_or_rollback_prepare(
 		query thread to the suspended state */
 
 		if (trx->lock.que_state == TRX_QUE_LOCK_WAIT) {
-
-			ulint		sec;
-			ulint		ms;
-			ib_uint64_t	now;
-
 			ut_a(trx->lock.wait_thr != NULL);
 			trx->lock.wait_thr->state = QUE_THR_SUSPENDED;
 			trx->lock.wait_thr = NULL;
 
 			if (UNIV_UNLIKELY(trx->take_stats)) {
-				ut_usectime(&sec, &ms);
-				now = (ib_uint64_t)sec * 1000000 + ms;
-				trx->lock_que_wait_timer
-					+= (ulint)
-					(now - trx->lock_que_wait_ustarted);
+				trx->lock_que_wait_timer += static_cast(
+					(my_interval_timer()
+					 - trx->lock_que_wait_nstarted)
+					/ 1000);
 			}
 
 			trx->lock.que_state = TRX_QUE_RUNNING;
diff --git a/storage/xtradb/trx/trx0undo.cc b/storage/xtradb/trx/trx0undo.cc
index e55361ed827661a3adabfa691fbf1ebd3ffdcc54..d70eb5d832cbc4b87dc59ff6e16828af6e106408 100644
--- a/storage/xtradb/trx/trx0undo.cc
+++ b/storage/xtradb/trx/trx0undo.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/usr/usr0sess.cc b/storage/xtradb/usr/usr0sess.cc
index e1bd71ff1a0025aa9ff207c634426a0ec75af1f3..911a3c91ca2bd534da975f8057bf4f18ff185440 100644
--- a/storage/xtradb/usr/usr0sess.cc
+++ b/storage/xtradb/usr/usr0sess.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0bh.cc b/storage/xtradb/ut/ut0bh.cc
index 1a3038a0d71146510369662b4fcd0673f9173adb..a74d56f5094c03fb80d2dfa2e4173c76e2331d7d 100644
--- a/storage/xtradb/ut/ut0bh.cc
+++ b/storage/xtradb/ut/ut0bh.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0byte.cc b/storage/xtradb/ut/ut0byte.cc
index bc592edc6bfab05d7b09c48d01914e783680268c..2a56bcc0bb46a0a4b668e482959800ccab3ccda1 100644
--- a/storage/xtradb/ut/ut0byte.cc
+++ b/storage/xtradb/ut/ut0byte.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0crc32.cc b/storage/xtradb/ut/ut0crc32.cc
index 2e3924a997e45d77e2719f9c59597ea7a8228eba..4ace913726da3fbb730e048b0fc642c5ef94fc2f 100644
--- a/storage/xtradb/ut/ut0crc32.cc
+++ b/storage/xtradb/ut/ut0crc32.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -59,7 +59,7 @@ mysys/my_perf.c, contributed by Facebook under the following license.
 
    You should have received a copy of the GNU General Public License along with
    this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* The below CRC32 implementation is based on the implementation included with
  * zlib with modifications to process 8 bytes at a time and using SSE 4.2
@@ -316,26 +316,7 @@ ut_crc32_init()
 	ut_cpuid(vend, &model, &family, &stepping,
 		 &features_ecx, &features_edx);
 
-	/* Valgrind does not understand the CRC32 instructions:
-
-	vex amd64->IR: unhandled instruction bytes: 0xF2 0x48 0xF 0x38 0xF0 0xA
-	valgrind: Unrecognised instruction at address 0xad3db5.
-	Your program just tried to execute an instruction that Valgrind
-	did not recognise.  There are two possible reasons for this.
-	1. Your program has a bug and erroneously jumped to a non-code
-	   location.  If you are running Memcheck and you just saw a
-	   warning about a bad jump, it's probably your program's fault.
-	2. The instruction is legitimate but Valgrind doesn't handle it,
-	   i.e. it's Valgrind's fault.  If you think this is the case or
-	   you are not sure, please let us know and we'll try to fix it.
-	Either way, Valgrind will now raise a SIGILL signal which will
-	probably kill your program.
-
-	*/
-#ifndef UNIV_DEBUG_VALGRIND
 	ut_crc32_sse2_enabled = (features_ecx >> 20) & 1;
-#endif /* UNIV_DEBUG_VALGRIND */
-
 #endif /* defined(__GNUC__) && defined(__x86_64__) */
 
 #if defined(__linux__) && defined(__powerpc__) && defined(AT_HWCAP2) \
diff --git a/storage/xtradb/ut/ut0dbg.cc b/storage/xtradb/ut/ut0dbg.cc
index a0bd82b385ab4b64d4a2033ae00c0f2bac18232f..fa766de28c03baa2ecbe24d38feaacea8a5b57d2 100644
--- a/storage/xtradb/ut/ut0dbg.cc
+++ b/storage/xtradb/ut/ut0dbg.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0list.cc b/storage/xtradb/ut/ut0list.cc
index f906061d18571cea6a120849ac247acc8ffae4f5..f33b6ed31c26d4bdd1ff94ce91e32711403f8230 100644
--- a/storage/xtradb/ut/ut0list.cc
+++ b/storage/xtradb/ut/ut0list.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0mem.cc b/storage/xtradb/ut/ut0mem.cc
index 2bb5d9ce332b97845d5f4d02b65eb7084c38e221..e75418fe71a79dfea998243544afd1615da7975b 100644
--- a/storage/xtradb/ut/ut0mem.cc
+++ b/storage/xtradb/ut/ut0mem.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0rbt.cc b/storage/xtradb/ut/ut0rbt.cc
index a6c02a8514aebfb810f11bf4bc779ba2f91e9d73..da8a767c217e2c61d7ed8344e59a9474b1b3fee0 100644
--- a/storage/xtradb/ut/ut0rbt.cc
+++ b/storage/xtradb/ut/ut0rbt.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 /********************************************************************//**
diff --git a/storage/xtradb/ut/ut0rnd.cc b/storage/xtradb/ut/ut0rnd.cc
index 3b4d7381181c20507e5339bd01eb5f6a50d1a6cd..f881636e21218a1b0f309f860f1a16f6dc4a0079 100644
--- a/storage/xtradb/ut/ut0rnd.cc
+++ b/storage/xtradb/ut/ut0rnd.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0timer.cc b/storage/xtradb/ut/ut0timer.cc
deleted file mode 100644
index 85292cce28cd01121b50a204041309f24ae56e18..0000000000000000000000000000000000000000
--- a/storage/xtradb/ut/ut0timer.cc
+++ /dev/null
@@ -1,92 +0,0 @@
-/*****************************************************************************
-
-Copyright (c) 2013, 2014, Facebook, Inc. All Rights Reserved.
-Copyright (c) 2014, SkySQL Ab. All Rights Reserved.
-
-This program is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation; version 2 of the License.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
-
-*****************************************************************************/
-
-/********************************************************************//**
-@file ut/ut0timer.cc
-Timer rountines
-
-Created 30/07/2014 Jan Lindström jan.lindstrom@skysql.com
-modified from https://github.com/facebook/mysql-5.6/commit/c75a413edeb96eb99bf11d7269bdfea06f96d6b6
-*************************************************************************/
-
-#include "data0type.h"
-#include 
-#include 
-
-/**************************************************************//**
-Initial timer definition
-@return	0 */
-static
-ulonglong
-ut_timer_none(void)
-/*===============*/
-{
-	return 0;
-}
-
-/**************************************************************//**
-Function pointer to point selected timer function.
-@return	timer current value */
-ulonglong (*ut_timer_now)(void) = &ut_timer_none;
-
-struct my_timer_unit_info ut_timer;
-
-/**************************************************************//**
-Sets up the data required for use of my_timer_* functions.
-Selects the best timer by high frequency, and tight resolution.
-Points my_timer_now() to the selected timer function.
-Initializes my_timer struct to contain the info for selected timer.*/
-UNIV_INTERN
-void
-ut_init_timer(void)
-/*===============*/
-{
-	MY_TIMER_INFO all_timer_info;
-	my_timer_init(&all_timer_info);
-
-	if (all_timer_info.cycles.frequency > 1000000 &&
-	    all_timer_info.cycles.resolution == 1) {
-		ut_timer = all_timer_info.cycles;
-		ut_timer_now = &my_timer_cycles;
-	} else if (all_timer_info.nanoseconds.frequency > 1000000 &&
-		 all_timer_info.nanoseconds.resolution == 1) {
-		ut_timer = all_timer_info.nanoseconds;
-		ut_timer_now = &my_timer_nanoseconds;
-	} else if (all_timer_info.microseconds.frequency >= 1000000 &&
-		all_timer_info.microseconds.resolution == 1) {
-		ut_timer = all_timer_info.microseconds;
-		ut_timer_now = &my_timer_microseconds;
-
-	} else if (all_timer_info.milliseconds.frequency >= 1000 &&
-		all_timer_info.milliseconds.resolution == 1) {
-		ut_timer = all_timer_info.milliseconds;
-		ut_timer_now = &my_timer_milliseconds;
-	} else if (all_timer_info.ticks.frequency >= 1000 &&
-		 /* Will probably be false */
-		all_timer_info.ticks.resolution == 1) {
-		ut_timer = all_timer_info.ticks;
-		ut_timer_now = &my_timer_ticks;
-	} else {
-		/* None are acceptable, so leave it as "None", and fill in struct */
-		ut_timer.frequency = 1; /* Avoid div-by-zero */
-		ut_timer.overhead = 0; /* Since it doesn't do anything */
-		ut_timer.resolution = 10; /* Another sign it's bad */
-		ut_timer.routine = 0; /* None */
-	}
-}
diff --git a/storage/xtradb/ut/ut0ut.cc b/storage/xtradb/ut/ut0ut.cc
index 695be4907e01ba0b28571fc5788a699c6ba00d20..a9f24fcf18ad66bf263be577f035d01e896c4e83 100644
--- a/storage/xtradb/ut/ut0ut.cc
+++ b/storage/xtradb/ut/ut0ut.cc
@@ -1,6 +1,7 @@
 /*****************************************************************************
 
 Copyright (c) 1994, 2017, Oracle and/or its affiliates. All Rights Reserved.
+Copyright (c) 2019, MariaDB Corporation.
 
 This program is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free Software
@@ -12,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -44,165 +45,6 @@ Created 5/11/1994 Heikki Tuuri
 # include "ha_prototypes.h"
 # include "mysql_com.h" /* NAME_LEN */
 # include 
-#endif /* UNIV_HOTBACKUP */
-
-#ifdef __WIN__
-#include  /* For sql_print_error */
-typedef VOID(WINAPI *time_fn)(LPFILETIME);
-static time_fn ut_get_system_time_as_file_time = GetSystemTimeAsFileTime;
-
-/*****************************************************************//**
-NOTE: The Windows epoch starts from 1601/01/01 whereas the Unix
-epoch starts from 1970/1/1. For selection of constant see:
-http://support.microsoft.com/kb/167296/ */
-#define WIN_TO_UNIX_DELTA_USEC  ((ib_int64_t) 11644473600000000ULL)
-
-
-/**
-Initialise highest available time resolution API on Windows
-@return 0 if all OK else -1 */
-int
-ut_win_init_time()
-{
-	HMODULE h = LoadLibrary("kernel32.dll");
-	if (h != NULL)
-	{
-		time_fn pfn = (time_fn)GetProcAddress(h, "GetSystemTimePreciseAsFileTime");
-		if (pfn != NULL)
-		{
-			ut_get_system_time_as_file_time = pfn;
-		}
-		return false;
-	}
-	DWORD error = GetLastError();
-  sql_print_error(
-		"LoadLibrary(\"kernel32.dll\") failed: GetLastError returns %lu", error);
-	return(-1);
-}
-
-/*****************************************************************//**
-This is the Windows version of gettimeofday(2).
-@return	0 if all OK else -1 */
-static
-int
-ut_gettimeofday(
-/*============*/
-	struct timeval*	tv,	/*!< out: Values are relative to Unix epoch */
-	void*		tz)	/*!< in: not used */
-{
-	FILETIME	ft;
-	ib_int64_t	tm;
-
-	if (!tv) {
-		errno = EINVAL;
-		return(-1);
-	}
-
-	ut_get_system_time_as_file_time(&ft);
-
-	tm = (ib_int64_t) ft.dwHighDateTime << 32;
-	tm |= ft.dwLowDateTime;
-
-	ut_a(tm >= 0);	/* If tm wraps over to negative, the quotient / 10
-			does not work */
-
-	tm /= 10;	/* Convert from 100 nsec periods to usec */
-
-	/* If we don't convert to the Unix epoch the value for
-	struct timeval::tv_sec will overflow.*/
-	tm -= WIN_TO_UNIX_DELTA_USEC;
-
-	tv->tv_sec  = (long) (tm / 1000000L);
-	tv->tv_usec = (long) (tm % 1000000L);
-
-	return(0);
-}
-#else
-/** An alias for gettimeofday(2).  On Microsoft Windows, we have to
-reimplement this function. */
-#define	ut_gettimeofday		gettimeofday
-#endif
-
-/**********************************************************//**
-Returns system time. We do not specify the format of the time returned:
-the only way to manipulate it is to use the function ut_difftime.
-@return	system time */
-UNIV_INTERN
-ib_time_t
-ut_time(void)
-/*=========*/
-{
-	return(time(NULL));
-}
-
-#ifndef UNIV_HOTBACKUP
-/**********************************************************//**
-Returns system time.
-Upon successful completion, the value 0 is returned; otherwise the
-value -1 is returned and the global variable errno is set to indicate the
-error.
-@return	0 on success, -1 otherwise */
-UNIV_INTERN
-int
-ut_usectime(
-/*========*/
-	ulint*	sec,	/*!< out: seconds since the Epoch */
-	ulint*	ms)	/*!< out: microseconds since the Epoch+*sec */
-{
-	struct timeval	tv;
-	int		ret;
-	int		errno_gettimeofday;
-	int		i;
-
-	for (i = 0; i < 10; i++) {
-
-		ret = ut_gettimeofday(&tv, NULL);
-
-		if (ret == -1) {
-			errno_gettimeofday = errno;
-			ut_print_timestamp(stderr);
-			fprintf(stderr, "  InnoDB: gettimeofday(): %s\n",
-				strerror(errno_gettimeofday));
-			os_thread_sleep(100000);  /* 0.1 sec */
-			errno = errno_gettimeofday;
-		} else {
-			break;
-		}
-	}
-
-	if (ret != -1) {
-		*sec = (ulint) tv.tv_sec;
-		*ms  = (ulint) tv.tv_usec;
-	}
-
-	return(ret);
-}
-
-/**********************************************************//**
-Returns the number of microseconds since epoch. Similar to
-time(3), the return value is also stored in *tloc, provided
-that tloc is non-NULL.
-@return	us since epoch */
-UNIV_INTERN
-ullint
-ut_time_us(
-/*=======*/
-	ullint*	tloc)	/*!< out: us since epoch, if non-NULL */
-{
-	struct timeval	tv;
-	ullint		us;
-
-	ut_gettimeofday(&tv, NULL);
-
-	us = (ullint) tv.tv_sec * 1000000 + tv.tv_usec;
-
-	if (tloc != NULL) {
-		*tloc = us;
-	}
-
-	return(us);
-}
-
 /**********************************************************//**
 Returns the number of milliseconds since some epoch.  The
 value may wrap around.  It should only be used for heuristic
@@ -213,27 +55,9 @@ ulint
 ut_time_ms(void)
 /*============*/
 {
-	struct timeval	tv;
-
-	ut_gettimeofday(&tv, NULL);
-
-	return((ulint) tv.tv_sec * 1000 + tv.tv_usec / 1000);
+	return static_cast(my_interval_timer() / 1000000);
 }
 #endif /* !UNIV_HOTBACKUP */
-
-/**********************************************************//**
-Returns the difference of two times in seconds.
-@return	time2 - time1 expressed in seconds */
-UNIV_INTERN
-double
-ut_difftime(
-/*========*/
-	ib_time_t	time2,	/*!< in: time */
-	ib_time_t	time1)	/*!< in: time */
-{
-	return(difftime(time2, time1));
-}
-
 #endif /* !UNIV_INNOCHECKSUM */
 
 /**********************************************************//**
@@ -376,43 +200,6 @@ ut_sprintf_timestamp_without_extra_chars(
 		cal_tm_ptr->tm_sec);
 #endif
 }
-
-/**********************************************************//**
-Returns current year, month, day. */
-UNIV_INTERN
-void
-ut_get_year_month_day(
-/*==================*/
-	ulint*	year,	/*!< out: current year */
-	ulint*	month,	/*!< out: month */
-	ulint*	day)	/*!< out: day */
-{
-#ifdef __WIN__
-	SYSTEMTIME cal_tm;
-
-	GetLocalTime(&cal_tm);
-
-	*year = (ulint) cal_tm.wYear;
-	*month = (ulint) cal_tm.wMonth;
-	*day = (ulint) cal_tm.wDay;
-#else
-	struct tm* cal_tm_ptr;
-	time_t	   tm;
-
-#ifdef HAVE_LOCALTIME_R
-	struct tm  cal_tm;
-	time(&tm);
-	localtime_r(&tm, &cal_tm);
-	cal_tm_ptr = &cal_tm;
-#else
-	time(&tm);
-	cal_tm_ptr = localtime(&tm);
-#endif
-	*year = (ulint) cal_tm_ptr->tm_year + 1900;
-	*month = (ulint) cal_tm_ptr->tm_mon + 1;
-	*day = (ulint) cal_tm_ptr->tm_mday;
-#endif
-}
 #endif /* UNIV_HOTBACKUP */
 
 #ifndef UNIV_HOTBACKUP
diff --git a/storage/xtradb/ut/ut0vec.cc b/storage/xtradb/ut/ut0vec.cc
index 5842d9f1c0e17999c42769bddcc18bcb5516d0f8..591895049de4ae79d770c095a8153bd1ed9e4725 100644
--- a/storage/xtradb/ut/ut0vec.cc
+++ b/storage/xtradb/ut/ut0vec.cc
@@ -12,7 +12,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
diff --git a/storage/xtradb/ut/ut0wqueue.cc b/storage/xtradb/ut/ut0wqueue.cc
index fce39bd817ef4798ace8003cee7f2800182404be..f8ba9fd30358068a0a77f66ea163eb543883a595 100644
--- a/storage/xtradb/ut/ut0wqueue.cc
+++ b/storage/xtradb/ut/ut0wqueue.cc
@@ -13,7 +13,7 @@ FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License along with
 this program; if not, write to the Free Software Foundation, Inc.,
-51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
 
 *****************************************************************************/
 
@@ -127,7 +127,7 @@ ib_wqueue_timedwait(
 /*================*/
 					/* out: work item or NULL on timeout*/
 	ib_wqueue_t*	wq,		/* in: work queue */
-	ib_time_t	wait_in_usecs)	/* in: wait time in micro seconds */
+	ulint		wait_in_usecs)	/* in: wait time in micro seconds */
 {
 	ib_list_node_t*	node = NULL;
 
diff --git a/strings/CMakeLists.txt b/strings/CMakeLists.txt
index 2a7f0b71cc8d3541236237a68386a00d98c67605..ea6eaa8c25e214ce84b73a784bfbef7d288c4a66 100644
--- a/strings/CMakeLists.txt
+++ b/strings/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
diff --git a/strings/conf_to_src.c b/strings/conf_to_src.c
index 28d2fd1515ed41ef3496c6eb5668411ce50554e0..6c352db7437236e4bd808d4f7954898b15d59c15 100644
--- a/strings/conf_to_src.c
+++ b/strings/conf_to_src.c
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
@@ -285,7 +285,7 @@ fprint_copyright(FILE *file)
 "\n"
 "   You should have received a copy of the GNU General Public License\n"
 "   along with this program; if not, write to the Free Software\n"
-"   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */\n"
+"   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */\n"
 "\n");
 }
 
diff --git a/strings/ctype-big5.c b/strings/ctype-big5.c
index d6a9695afbf6a74cecba7df7d5ec49f57a82a1cb..792c5521cd4696737e1db340ded320dcf5a8f3a4 100644
--- a/strings/ctype-big5.c
+++ b/strings/ctype-big5.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
  * This file is basicly usa7 character sets with some extra functions
diff --git a/strings/ctype-bin.c b/strings/ctype-bin.c
index dfeb77d8d6b50b5040712e037891203815f1ff4d..114472b3f10c6300c81c5799b0279109281afbdf 100644
--- a/strings/ctype-bin.c
+++ b/strings/ctype-bin.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* This file is for binary pseudo charset, created by bar@mysql.com */
 
diff --git a/strings/ctype-cp932.c b/strings/ctype-cp932.c
index 9bf206f1de73fda67f54672d282f65b2908a48c1..2acd4cfebcd0989a260d6f2ba9ad5f85da84c8a5 100644
--- a/strings/ctype-cp932.c
+++ b/strings/ctype-cp932.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is for cp932 charaset (Windows Japanese),
    and created based on ctype-sjis.c file  */
diff --git a/strings/ctype-czech.c b/strings/ctype-czech.c
index e3abebad91d88514adfe461883efa1e7a7533e72..99673100c1282734fbc378aee5f1d18edea0817b 100644
--- a/strings/ctype-czech.c
+++ b/strings/ctype-czech.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* File strings/ctype-czech.c for MySQL.
 
diff --git a/strings/ctype-euc_kr.c b/strings/ctype-euc_kr.c
index 38cfa429d883a3bbd7e46e5422ebdae8ff313aca..4c549a6686a322d2f587d4d480a3180587e6f38c 100644
--- a/strings/ctype-euc_kr.c
+++ b/strings/ctype-euc_kr.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* 
  * This file is for Korean EUC charset, and created by powerm90@tinc.co.kr.
diff --git a/strings/ctype-eucjpms.c b/strings/ctype-eucjpms.c
index 82c4bb5a4e8850b255721b4c9371481af2a610bd..fe699f8a33425b98222e1cf48bb64efa5bde06d6 100644
--- a/strings/ctype-eucjpms.c
+++ b/strings/ctype-eucjpms.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* This file is for Japanese EUC charset, and created based on
 ctype-ujis.c file.
diff --git a/strings/ctype-extra.c b/strings/ctype-extra.c
index c690b6d0c1854ed7375aaf793339d3d2a1ea7edb..90c7ea15eba0b1f9708b2745ed6404c10fbd5b77 100644
--- a/strings/ctype-extra.c
+++ b/strings/ctype-extra.c
@@ -20,7 +20,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/ctype-gb2312.c b/strings/ctype-gb2312.c
index b0e275fe93d46a608f814d02b141c225246df109..5030360bc74f8918795b3b9ece6619ff5f94143a 100644
--- a/strings/ctype-gb2312.c
+++ b/strings/ctype-gb2312.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is for Chinese EUC character sets (GB2312), and created by Miles Tsai (net-bull@126.com).
  */
diff --git a/strings/ctype-gbk.c b/strings/ctype-gbk.c
index 37b003f189911b6786226137f916d93d67804f57..602255e9aee096daa1d4268ee3c36b88086dbd3c 100644
--- a/strings/ctype-gbk.c
+++ b/strings/ctype-gbk.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is for Chinese character sets GBK, created by Wei He 
    (hewei@mail.ied.ac.cn)
diff --git a/strings/ctype-latin1.c b/strings/ctype-latin1.c
index 26c66d60071fba8d4444fe928be0a982be2507d8..37f43c6bce5aca32c27da12c5bb069be08601983 100644
--- a/strings/ctype-latin1.c
+++ b/strings/ctype-latin1.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/ctype-mb.c b/strings/ctype-mb.c
index ad83cab332520a8aba8f52cc2a5cc5184b6b8caa..3f8556fb872724eaf1a3943b5e90f196ba492692 100644
--- a/strings/ctype-mb.c
+++ b/strings/ctype-mb.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/ctype-mb.ic b/strings/ctype-mb.ic
index 6fc4d6e3db4a3dbb1b8744c22cf66fc666d3cfe5..7e278ea386d4230fc557577280c6f891fdbad999 100644
--- a/strings/ctype-mb.ic
+++ b/strings/ctype-mb.ic
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 
diff --git a/strings/ctype-simple.c b/strings/ctype-simple.c
index 825a653d02ffa7676531ed3d16c3cead318bc21b..20c7f81dbf478aad80556571ce7dce2fb21cca74 100644
--- a/strings/ctype-simple.c
+++ b/strings/ctype-simple.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/ctype-sjis.c b/strings/ctype-sjis.c
index 629e1cd8309892270174e870018de0d7725cede0..f0f005685fe740b08b1c7409348bef029530c28f 100644
--- a/strings/ctype-sjis.c
+++ b/strings/ctype-sjis.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* This file is for Shift JIS charset, and created by tommy@valley.ne.jp.
  */
diff --git a/strings/ctype-uca.c b/strings/ctype-uca.c
index 11cb184813b50092c1b7fc8772da6a1c1a6dec9d..84a44b28b45a6543edb332dfd94e55a9cd6e181d 100644
--- a/strings/ctype-uca.c
+++ b/strings/ctype-uca.c
@@ -14,7 +14,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* 
    UCA (Unicode Collation Algorithm) support. 
diff --git a/strings/ctype-ucs2.c b/strings/ctype-ucs2.c
index 0791b0b742ceaa639d225e4b6cb167a1570e075a..754ec69ee9da520470fd632defbe138fd4e314c4 100644
--- a/strings/ctype-ucs2.c
+++ b/strings/ctype-ucs2.c
@@ -14,7 +14,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* UCS2 support. Written by Alexander Barkov  */
 
diff --git a/strings/ctype-ujis.c b/strings/ctype-ujis.c
index 5f8088847b685a268b90b823dfcda5093c183e49..22fbf425602ae10904b20d57bab253fd803ac93c 100644
--- a/strings/ctype-ujis.c
+++ b/strings/ctype-ujis.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* This file is for Japanese EUC charset, and created by tommy@valley.ne.jp.
  */
diff --git a/strings/ctype-utf8.c b/strings/ctype-utf8.c
index e2e3d96386eaaba8d8718bf39baba03c2ff7f927..25fb081bbb261d223fa44dd3078ef91047811f0e 100644
--- a/strings/ctype-utf8.c
+++ b/strings/ctype-utf8.c
@@ -14,7 +14,7 @@
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
-   MA 02110-1301, USA */
+   MA 02110-1335  USA */
 
 /* UTF8 according RFC 2279 */
 /* Written by Alexander Barkov  */
diff --git a/strings/ctype-win1250ch.c b/strings/ctype-win1250ch.c
index 8e3527f9ff16d1d4b51c0174091eb106a6fbc3e9..0a6352b19afa722eb8135e44fba9aee480c72fed 100644
--- a/strings/ctype-win1250ch.c
+++ b/strings/ctype-win1250ch.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
    Shared, independent copyright: (C) 2001 Jan Pazdziora.
diff --git a/strings/ctype.c b/strings/ctype.c
index 4af60d16d29a133580b1e8d0b6ef272ddf393d6b..d68010e0015314701d1cb38718354fec70fc122d 100644
--- a/strings/ctype.c
+++ b/strings/ctype.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/decimal.c b/strings/decimal.c
index bbfb4e9dc8b628b699e799175a4cc21bd657d4ce..56d09e8f3034199c755e501da7f5496794d6e1a0 100644
--- a/strings/decimal.c
+++ b/strings/decimal.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /*
 =======================================================================
diff --git a/strings/do_ctype.c b/strings/do_ctype.c
index 55e319a22950fc5d8d5ce3c3528c606428bd12b4..e9430deee425ccbe6a4faecb70623ddff22a9eb4 100644
--- a/strings/do_ctype.c
+++ b/strings/do_ctype.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* Prints case-convert and sort-convert tabell on stdout. This is used to
    make _ctype.c easyer */
diff --git a/strings/dtoa.c b/strings/dtoa.c
index 3dba0da74855581ed067f7369192cdeb1ec57522..d11c5e346c569fb77a73c2fd74a8ae54a44697d7 100644
--- a/strings/dtoa.c
+++ b/strings/dtoa.c
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /****************************************************************
 
diff --git a/strings/dump_map.c b/strings/dump_map.c
index debc44d6f5f252bea3f825ead10d4da1fe599b83..fa713920e7ba69576e8c07db8fad4db183d8f8a1 100644
--- a/strings/dump_map.c
+++ b/strings/dump_map.c
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/strings/my_strchr.c b/strings/my_strchr.c
index 0305ef89542cc5ee00e294f28b112cc147e422f6..3ff7c32f482764dd40c52b3c7185357e26e32727 100644
--- a/strings/my_strchr.c
+++ b/strings/my_strchr.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/my_vsnprintf.c b/strings/my_vsnprintf.c
index 134fdfc57b856725801cb634ded284a91e720ced..c31ae91921dea511ef8247bcb0b23ae60850d1fe 100644
--- a/strings/my_vsnprintf.c
+++ b/strings/my_vsnprintf.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/strcoll.ic b/strings/strcoll.ic
index 4bced593a23045c5c3697581ffbc571e2a47560a..b0556cfac43de3f285741668e6f317f73651d2e4 100644
--- a/strings/strcoll.ic
+++ b/strings/strcoll.ic
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 */
 
 
diff --git a/strings/strings_def.h b/strings/strings_def.h
index 80397d510d244d140a1026ce44d81ab6e6a27982..e137c7960452c55da4f3e687ea14c65dfb33a891 100644
--- a/strings/strings_def.h
+++ b/strings/strings_def.h
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /* This file is to be include first in all files in the string directory */
 
diff --git a/strings/strmake.c b/strings/strmake.c
index 951a589e360b9065578808c42ed7c4460e3fd79d..a5e1dafb185a882805dea160c938e573d4ef9d10 100644
--- a/strings/strmake.c
+++ b/strings/strmake.c
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*  File   : strmake.c
     Author : Michael Widenius
diff --git a/strings/strmov_overlapp.c b/strings/strmov_overlapp.c
index 2a162c39903382d6755580091cf5696c4d370ec8..fd1c5360871c457161f7635ba2e46e475f845284 100644
--- a/strings/strmov_overlapp.c
+++ b/strings/strmov_overlapp.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "strings_def.h"
 
diff --git a/strings/t_ctype.h b/strings/t_ctype.h
index a4fdd267c3f5defb334bf45d59c05c7caf4257ca..a6d2783fe9343893be97d94c648ec789e9a2c265 100644
--- a/strings/t_ctype.h
+++ b/strings/t_ctype.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /*
   Copyright (C) 1998, 1999 by Pruet Boonma, all rights reserved.
diff --git a/strings/uca-dump.c b/strings/uca-dump.c
index 5d1836088266e96d7fec6293b52087312963c9c2..837dd7f3c30685b2fe66d00c6d5ee5116abd4fd8 100644
--- a/strings/uca-dump.c
+++ b/strings/uca-dump.c
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/strings/uctypedump.c b/strings/uctypedump.c
index ed3c64969d578dd8f3a03882733b8d03db32a47f..30ae33afee15bcbea1f2ec756dcec263f023f234 100644
--- a/strings/uctypedump.c
+++ b/strings/uctypedump.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "strings_def.h"
 #include 
diff --git a/strings/utr11-dump.c b/strings/utr11-dump.c
index 0806b3ba0cd2a0c6e1203b332dcfa5161790c57e..695f6b2004796e1a668a6f4ca8891b37c95192f9 100644
--- a/strings/utr11-dump.c
+++ b/strings/utr11-dump.c
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/strings/xml.c b/strings/xml.c
index b5fed6a6760f80178b90699d4d8df883a260b312..0178ea2574e8f94f444e33d1c48ff9198d4fc3ac 100644
--- a/strings/xml.c
+++ b/strings/xml.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "strings_def.h"
 #include "m_string.h"
diff --git a/support-files/CMakeLists.txt b/support-files/CMakeLists.txt
index 4ad3810e082bf222ce0e87727a12d2759f26759f..36d4c0949edce58621cd4eac3936388c9f09e739 100644
--- a/support-files/CMakeLists.txt
+++ b/support-files/CMakeLists.txt
@@ -12,7 +12,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 IF(WIN32)
   SET(localstatedir "C:\\\\mysql\\\\data\\\\")
diff --git a/support-files/MacOSX/Description.plist.sh b/support-files/MacOSX/Description.plist.sh
index 1acae093db2f61bd9f76d416174426922f0fe68e..9af3eddf47a51f43361807376966cb27ece1d065 100644
--- a/support-files/MacOSX/Description.plist.sh
+++ b/support-files/MacOSX/Description.plist.sh
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 -->
 
 
diff --git a/support-files/MacOSX/Info.plist.sh b/support-files/MacOSX/Info.plist.sh
index 4cc1957a3ea719db4079b1cafe1e4e24b4e4ab0c..c2033e420705c84e298f75c53fe7c17bc83df695 100644
--- a/support-files/MacOSX/Info.plist.sh
+++ b/support-files/MacOSX/Info.plist.sh
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 -->
 
 
diff --git a/support-files/MacOSX/MySQLCOM b/support-files/MacOSX/MySQLCOM
index 4de6485ae7c4d3845401653985d5783c5ceb1022..ca5e444fddc07ca7c095e68abd5b20f84a446f7a 100755
--- a/support-files/MacOSX/MySQLCOM
+++ b/support-files/MacOSX/MySQLCOM
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # /Library/StartupItems/MySQLCOM/MySQLCOM
diff --git a/support-files/MacOSX/StartupItem.Description.plist b/support-files/MacOSX/StartupItem.Description.plist
index e8d720ae5f118c9f788f28032de5759a04b003c7..1374ca94142a0a35ae30d76cca2fd983927e4977 100644
--- a/support-files/MacOSX/StartupItem.Description.plist
+++ b/support-files/MacOSX/StartupItem.Description.plist
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 -->
 
 
diff --git a/support-files/MacOSX/StartupItem.Info.plist b/support-files/MacOSX/StartupItem.Info.plist
index 9891668e28312bd16131f6d0ca33024aca4321d9..947c81c732ae23d10218a38b203f132034e521d6 100644
--- a/support-files/MacOSX/StartupItem.Info.plist
+++ b/support-files/MacOSX/StartupItem.Info.plist
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 -->
 
 
diff --git a/support-files/MacOSX/StartupItem.postinstall b/support-files/MacOSX/StartupItem.postinstall
index b3814db5ddf59f521ebbcc7c2ad8a2560cff0a69..d67abc9d944ee49ec59f4322dfc0aae400563423 100755
--- a/support-files/MacOSX/StartupItem.postinstall
+++ b/support-files/MacOSX/StartupItem.postinstall
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # postinstall script for the MySQL Startup Item Installation package
diff --git a/support-files/MacOSX/StartupParameters.plist.sh b/support-files/MacOSX/StartupParameters.plist.sh
index 66cc93fd8426d81bbc2d610b7d56afaa9086642a..f92385a8d3387386f174b9f2e22cef38e81688dc 100644
--- a/support-files/MacOSX/StartupParameters.plist.sh
+++ b/support-files/MacOSX/StartupParameters.plist.sh
@@ -15,7 +15,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 -->
 
 
diff --git a/support-files/MacOSX/mwar-wrapper b/support-files/MacOSX/mwar-wrapper
index 8d424df11b7ab15e79f526b14805475b1f1fd9c5..79ec570bfad4ce6293e9cb96bbe0c24fd956177a 100755
--- a/support-files/MacOSX/mwar-wrapper
+++ b/support-files/MacOSX/mwar-wrapper
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This script can only create a library, not take it apart
 # again to AR files
diff --git a/support-files/MacOSX/mwcc-wrapper b/support-files/MacOSX/mwcc-wrapper
index 6de7a32183302b64b38da2cb490ce96155df3eff..6a3e5394c849d3ea2b9aa53eb362d14839a11824 100755
--- a/support-files/MacOSX/mwcc-wrapper
+++ b/support-files/MacOSX/mwcc-wrapper
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 if [ -z "$CWINSTALL" ] ; then
     echo "ERROR: You need to source 'mwvars' to set CWINSTALL and other variables"
diff --git a/support-files/MacOSX/postflight.sh b/support-files/MacOSX/postflight.sh
index 00ba30dffc495aa9601d6f79d39e813f3b4dcf4c..752eddc4241ee32a13e548b2713f809905756e1c 100644
--- a/support-files/MacOSX/postflight.sh
+++ b/support-files/MacOSX/postflight.sh
@@ -16,7 +16,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 #
 # postflight - this script will be executed after the MySQL PKG
diff --git a/support-files/MacOSX/preflight.sh b/support-files/MacOSX/preflight.sh
index 52f18a549674bb1e63ab91f7d99738858aed4b8b..ce466d5b481a4ddd1b90b62684680578e6f93f96 100644
--- a/support-files/MacOSX/preflight.sh
+++ b/support-files/MacOSX/preflight.sh
@@ -16,7 +16,7 @@
 # You should have received a copy of the GNU Library General Public
 # License along with this library; if not, write to the Free
 # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-# MA 02110-1301, USA
+# MA 02110-1335  USA
 
 #
 # preflight - this script will be executed before the MySQL PKG
diff --git a/support-files/dtrace/locktime.d b/support-files/dtrace/locktime.d
index 610da8fbffb3a2bacf0cc8a3efaf34a04d35e0c7..398a7262b89b25807bb1676a2d2e674aef8f769e 100644
--- a/support-files/dtrace/locktime.d
+++ b/support-files/dtrace/locktime.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Shows the time that an individual lock is applied to a database and table
 # Shows the time to achieve the lock, and the time the table was locked
diff --git a/support-files/dtrace/query-execandqc.d b/support-files/dtrace/query-execandqc.d
index 27dd5983fb0ce3d8c4bc9778530f8aeca9a55b89..feb93785133f11a54724fd4b6766928384534be8 100644
--- a/support-files/dtrace/query-execandqc.d
+++ b/support-files/dtrace/query-execandqc.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Show query execution times, indicating whether the query-cache was used
 
diff --git a/support-files/dtrace/query-filesort-time.d b/support-files/dtrace/query-filesort-time.d
index 0705f6ec556387e6d7ac47d8be9f0ce078b736f0..3bffd078d2428992143f2797c22665b245abcf45 100644
--- a/support-files/dtrace/query-filesort-time.d
+++ b/support-files/dtrace/query-filesort-time.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Show the time taken for a query, including the time taken to 
 # sort the results using filesort 
diff --git a/support-files/dtrace/query-network-time.d b/support-files/dtrace/query-network-time.d
index 1b42528487306666fa75805f20fd2680c581b5cb..bf3c05e564d83b9992a8ec3960f64ba76314c9d3 100644
--- a/support-files/dtrace/query-network-time.d
+++ b/support-files/dtrace/query-network-time.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Show the time taken to execute a query, include the bytes and time taken
 # to transfer the information over the network to/from the client
diff --git a/support-files/dtrace/query-parse-time.d b/support-files/dtrace/query-parse-time.d
index 211152afdd21549e95e9ed6adaed5cbde1913a16..7564068a4ff6e10455c83d26b14bbebecb654f64 100644
--- a/support-files/dtrace/query-parse-time.d
+++ b/support-files/dtrace/query-parse-time.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Shows time take to actually parse the query statement
 
diff --git a/support-files/dtrace/query-rowops.d b/support-files/dtrace/query-rowops.d
index 04748955f6c94f0e822ffcbffa4101cfc45beb10..2c93f21b9189085bef86a821846aab7693d69bc9 100644
--- a/support-files/dtrace/query-rowops.d
+++ b/support-files/dtrace/query-rowops.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Calculates the time (and operations) for accessing data from individual
 # rows for each query
diff --git a/support-files/dtrace/query-time.d b/support-files/dtrace/query-time.d
index 98e4b1298382965f477556defa3da547c353fac9..553a12b2169c40a7b1d86e0d6db0aa20ab4c321a 100644
--- a/support-files/dtrace/query-time.d
+++ b/support-files/dtrace/query-time.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Shows basic query execution time, who execute the query, and on what database
 
diff --git a/support-files/dtrace/statement-time.d b/support-files/dtrace/statement-time.d
index 10ef57039ad556ee6adddf0ee0f5f0bca353e90f..9776e827eb151fa8af0f54c78f52cede78a56d02 100644
--- a/support-files/dtrace/statement-time.d
+++ b/support-files/dtrace/statement-time.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Creates a report on each query executed at the individual statement
 # level, showing rows matched, updated, and total query time
diff --git a/support-files/dtrace/statement-type-aggregate.d b/support-files/dtrace/statement-type-aggregate.d
index 784ee4aee9b282e60cd151bbad5cd1607f614349..9d34c76627964f98267922503bd23efc767f0b85 100644
--- a/support-files/dtrace/statement-type-aggregate.d
+++ b/support-files/dtrace/statement-type-aggregate.d
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
 #
 # Creates an aggregate report of the time spent perform queries of the four main
 # types (select, insert, update, delete)
diff --git a/support-files/mysql.m4 b/support-files/mysql.m4
index 371700a9c084343ad9ca058ef2bc21ed72b935e5..0a7034f61e8cce692a5d3a69642cb6fbda0bdd6e 100644
--- a/support-files/mysql.m4
+++ b/support-files/mysql.m4
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License along
 # with this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+# Franklin Street, Fifth Floor, Boston, MA 02110-1335  USA
 
 AC_DEFUN([_MYSQL_CONFIG],[
   AC_ARG_WITH([mysql-config],
diff --git a/support-files/mysql.server.sh b/support-files/mysql.server.sh
index ed3240f124cd340d5317eaa9c0ad9418f8a235ed..f3620d388c4fa61299e74483141d7947747579e2 100644
--- a/support-files/mysql.server.sh
+++ b/support-files/mysql.server.sh
@@ -388,7 +388,7 @@ case "$mode" in
       fi
     else
       # Try to find appropriate mysqld process
-      mysqld_pid=`pgrep $libexecdir/mysqld`
+      mysqld_pid=`pgrep -f $libexecdir/mysqld`
 
       # test if multiple pids exist
       pid_count=`echo $mysqld_pid | wc -w`
diff --git a/support-files/rpm/server-postin.sh b/support-files/rpm/server-postin.sh
index 0a5bac73f0b177deb6ad37497278dcd51477f484..deb27c98ac19948f6e1d329be16d490995f15527 100644
--- a/support-files/rpm/server-postin.sh
+++ b/support-files/rpm/server-postin.sh
@@ -50,7 +50,7 @@ if [ $1 = 1 ] ; then
 
   # Change permissions so that the user that will run the MySQL daemon
   # owns all database files.
-  chown -R %{mysqld_user}:%{mysqld_group} $datadir
+  chown -R -f %{mysqld_user}:%{mysqld_group} $datadir
 
   if [ ! -e $datadir/mysql ]; then
     # Create data directory
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index f32e0270ce4bb6e6c1d1caa8b790e945d4b340c3..5134a90e589c8bb79b4793f10e8ac40780e9836e 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 ADD_DEFINITIONS("-DMYSQL_CLIENT")
 
diff --git a/tests/big_record.pl b/tests/big_record.pl
index 0d5766e5f5d372a65ffb81ce36f86e85d0d960fd..cb1f89984682ee0ce87a517b9e38f3a7108be02c 100755
--- a/tests/big_record.pl
+++ b/tests/big_record.pl
@@ -13,7 +13,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 
 # This is a test with stores big records in a blob.
 # Note that for the default test the mysql server should have been
diff --git a/tests/bug25714.c b/tests/bug25714.c
index b657630f30ecc6f5ec29cef0b9723f6cd19abbce..35a13518a030fae5545983540e1e4cfb4d1d1842 100644
--- a/tests/bug25714.c
+++ b/tests/bug25714.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/tests/connect_test.c b/tests/connect_test.c
index f30d0f2edbaae7768120689b68e8b089a67f3169..121ff2aa1a8723b34d8e57ed1169b2c62ff70e9b 100644
--- a/tests/connect_test.c
+++ b/tests/connect_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/tests/deadlock_test.c b/tests/deadlock_test.c
index 811aa9b58c63349c017bd6260463cb28c5b9c632..b4deef845933cf33d7208ef4e2e80ff10e5809a8 100644
--- a/tests/deadlock_test.c
+++ b/tests/deadlock_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/tests/drop_test.pl b/tests/drop_test.pl
index 362b6d7b8b5723fab8057bd7b6acbda6ae423958..329f65eb65da61ded0057f4c7bc8b8484e83213e 100755
--- a/tests/drop_test.pl
+++ b/tests/drop_test.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test with uses processes to insert, select and drop tables.
diff --git a/tests/export.pl b/tests/export.pl
index d7825574c8ca8c843ff94336dab38bd82ac9e550..f99798ecac80fe53427f0b03f17fe975b5905877 100755
--- a/tests/export.pl
+++ b/tests/export.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This is a test with uses two processes to a database.
 # The other inserts records in two tables, the other does a lot of joins
diff --git a/tests/fork2_test.pl b/tests/fork2_test.pl
index f8e15403da1d05dcac7042f833c72e5dc5c6c9dd..356055733fa164acb4e55ba4bc2390225dccb143 100755
--- a/tests/fork2_test.pl
+++ b/tests/fork2_test.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This is a test with uses 5 processes to insert, update and select from
 # two tables.
diff --git a/tests/fork_big.pl b/tests/fork_big.pl
index ec1f131d45399e94629eb05300a9312dcab05944..623377ab5cdd28860a5c43f09b04f367e863d92d 100755
--- a/tests/fork_big.pl
+++ b/tests/fork_big.pl
@@ -15,7 +15,7 @@ use strict;
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test with uses many processes to test a MySQL server.
diff --git a/tests/fork_big2.pl b/tests/fork_big2.pl
index 0f1d65be8f9366dc5830b6e0f6fe30604bf70ba6..c844d290834587d82d5bf2fc855c1e478908b0d3 100644
--- a/tests/fork_big2.pl
+++ b/tests/fork_big2.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test with uses many processes to test a MySQL server.
diff --git a/tests/grant.pl b/tests/grant.pl
index 23a7d2110fb459713e35e1a136b2d5ea5fb2278d..cd6516433166ed5b15a75ae7555968016e49f15c 100755
--- a/tests/grant.pl
+++ b/tests/grant.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 
 #
 # Testing of grants.
diff --git a/tests/index_corrupt.pl b/tests/index_corrupt.pl
index 3623315c968998e8605cf40549f0624dd726b29f..6b04ce8a59c5949ce5a9cc156a7b66d9614103e9 100755
--- a/tests/index_corrupt.pl
+++ b/tests/index_corrupt.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test for a key cache bug (bug #10167)
diff --git a/tests/insert_and_repair.pl b/tests/insert_and_repair.pl
index d8799321af1cfac44522eb06674277a14accf3b0..18091c92718db4a7d6b7393f8dc6b0d499b7509d 100755
--- a/tests/insert_and_repair.pl
+++ b/tests/insert_and_repair.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test of insert and repair/check.
diff --git a/tests/insert_test.c b/tests/insert_test.c
index f09766088aa82e0373ab9f47ba65496683897737..f2e6b61f11d0a23532b3c00a1f22e462a15f5adb 100644
--- a/tests/insert_test.c
+++ b/tests/insert_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/tests/list_test.c b/tests/list_test.c
index 2e8cd3654a35479aae258c9cd2c1c844a6a61a49..42d4f962b19b9cc5fdae4b06e79fb7ceba0c8788 100644
--- a/tests/list_test.c
+++ b/tests/list_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #ifdef __WIN__
 #include 
diff --git a/tests/lock_test.pl b/tests/lock_test.pl
index 97531df99ca93b17558585dfc2c76395cb51df8a..98c4ad6377d5b206721ecc80fc2a794d129f0ef2 100755
--- a/tests/lock_test.pl
+++ b/tests/lock_test.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This is a test with uses two processes to a database.
 # The other inserts records in two tables, the other does a lot of joins
diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c
index 71fb3894b3c202ea05dc84ef3b6a977b28f8a686..9687e3794b50b227e0dc6972ae5211630d2f22fe 100644
--- a/tests/mysql_client_fw.c
+++ b/tests/mysql_client_fw.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/tests/mysql_client_test.c b/tests/mysql_client_test.c
index 63d40c5db64b90cc553d70da363a5df44c61a983..c7d79b692e163372d092fb9c560ee2fdd43f4096 100644
--- a/tests/mysql_client_test.c
+++ b/tests/mysql_client_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 /***************************************************************************
  This is a test sample to test the new features in MySQL client-server
diff --git a/tests/pmail.pl b/tests/pmail.pl
index 39f51a4e40173edf84b7f50afef701172eedefa0..359256c25b344ed01ad5e1a9a44b4927c53ecba7 100755
--- a/tests/pmail.pl
+++ b/tests/pmail.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #                                  
 # Prints mails to standard output  
diff --git a/tests/rename_test.pl b/tests/rename_test.pl
index 24d4f9e1a2e353455bd4811c728f76aaf9345783..d7097df1e4e3b97fc6b9570a813bad9a4a7ad898 100755
--- a/tests/rename_test.pl
+++ b/tests/rename_test.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test with uses processes to insert, select and drop tables.
diff --git a/tests/select_test.c b/tests/select_test.c
index 9a144c59292fc736ecff117acc319d0262927ac3..648a86135a8a0af8a5965e66e0e0411d8e7c8219 100644
--- a/tests/select_test.c
+++ b/tests/select_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #if defined(_WIN32) || defined(_WIN64)
 #include 
diff --git a/tests/showdb_test.c b/tests/showdb_test.c
index 555a8511e61367b7631714bcfe01c030ea7076aa..267e32d51d795e434aad58a226f812f3df0f0867 100644
--- a/tests/showdb_test.c
+++ b/tests/showdb_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 #ifdef __WIN__
diff --git a/tests/ssl_test.c b/tests/ssl_test.c
index 2cd4b4b868b1891fcfbae0cb8ef02a7a9c1de2d1..6102fc7fd4e6b4a77b440fdbdcdf624f3b2ee3a2 100644
--- a/tests/ssl_test.c
+++ b/tests/ssl_test.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA */
 
 
 #ifdef __WIN__
diff --git a/tests/table_types.pl b/tests/table_types.pl
index 53f59a4429dd9b773754621c4aa3df5492ac7065..c633a1530989f59bede46aa71cf885b5fa33cc52 100755
--- a/tests/table_types.pl
+++ b/tests/table_types.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 use DBI;
 use Benchmark;
diff --git a/tests/test_delayed_insert.pl b/tests/test_delayed_insert.pl
index 6d535374991f0ba106fd85fa65a67a4aa2b54c23..cb5b86a228d1318cc19b5d426b6ce295c0ede9cc 100755
--- a/tests/test_delayed_insert.pl
+++ b/tests/test_delayed_insert.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 # This is a test for INSERT DELAYED
 #
diff --git a/tests/thread_test.c b/tests/thread_test.c
index 38e453e9cb8434eba093c6797fd2d481f355a504..0fa92d505a3ec71749fa78f5062199b8c4af93be 100644
--- a/tests/thread_test.c
+++ b/tests/thread_test.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 
diff --git a/tests/truncate.pl b/tests/truncate.pl
index 41bb79b82378ecae9117f3badb20b6155ce972fb..98791a15b2c673f289f171d82b4e7b96f3c61caa 100755
--- a/tests/truncate.pl
+++ b/tests/truncate.pl
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
 #
 # This is a test with uses many processes to test a MySQL server.
diff --git a/unittest/examples/CMakeLists.txt b/unittest/examples/CMakeLists.txt
index 86c4a5bea9e4ea9c63d899c7dfe7ab7c5fe5b018..cba7db5bd69ca4fefb8f9b412b0b9f6203b97cf8 100644
--- a/unittest/examples/CMakeLists.txt
+++ b/unittest/examples/CMakeLists.txt
@@ -11,6 +11,6 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 MY_ADD_TESTS(simple skip todo skip_all no_plan)
diff --git a/unittest/examples/core-t.c b/unittest/examples/core-t.c
index 5f49e1cb1d93f86a72b8ed09e9197049cd8b2e71..12d9fe5c418cd98c48ebd31129bc86f63df526c9 100644
--- a/unittest/examples/core-t.c
+++ b/unittest/examples/core-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 
diff --git a/unittest/examples/no_plan-t.c b/unittest/examples/no_plan-t.c
index b795b2ca6550e794bf203f4fa18d8ed6c75cf259..80a56970cf596ca3c128674d37fa53b23f5e1f45 100644
--- a/unittest/examples/no_plan-t.c
+++ b/unittest/examples/no_plan-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 
diff --git a/unittest/examples/simple-t.c b/unittest/examples/simple-t.c
index b3ead293289e51f405b9f5f194767af95ff8c940..ea64696c30c1b360d880acceb3f01250fd3cf449 100644
--- a/unittest/examples/simple-t.c
+++ b/unittest/examples/simple-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 
diff --git a/unittest/examples/skip-t.c b/unittest/examples/skip-t.c
index 4b1115e50f3ed2469dbcb03946a397daa218f709..a8ca43f6e2c84e4397d6bb619c5a7d4bf286aaa0 100644
--- a/unittest/examples/skip-t.c
+++ b/unittest/examples/skip-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/examples/skip_all-t.c b/unittest/examples/skip_all-t.c
index 9d31e0c3af88017913fe66910f278466a5ab18ba..cfe6432b267d932273c859d3373bcf5260d2b5da 100644
--- a/unittest/examples/skip_all-t.c
+++ b/unittest/examples/skip_all-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 
diff --git a/unittest/examples/todo-t.c b/unittest/examples/todo-t.c
index e1be2e8eacd29e649516d0433d21524276983f0d..91720b30f025519ca200cd2f606b4509ab4ed353 100644
--- a/unittest/examples/todo-t.c
+++ b/unittest/examples/todo-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 
diff --git a/unittest/my_decimal/CMakeLists.txt b/unittest/my_decimal/CMakeLists.txt
index 85d203e8f4715eba48da8a1955f7ad5f47be2f51..d8f74b87494176db46ac5f499041bc1ab68ad642 100644
--- a/unittest/my_decimal/CMakeLists.txt
+++ b/unittest/my_decimal/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
                     ${CMAKE_SOURCE_DIR}/sql
diff --git a/unittest/my_decimal/my_decimal-t.cc b/unittest/my_decimal/my_decimal-t.cc
index 92c4bdee8e497f0bb1528feb3266bf552601887f..b14c679432ea8642646dbdd0c10272e7a898c0ac 100644
--- a/unittest/my_decimal/my_decimal-t.cc
+++ b/unittest/my_decimal/my_decimal-t.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "my_config.h"
 #include "config.h"
diff --git a/unittest/mysys/CMakeLists.txt b/unittest/mysys/CMakeLists.txt
index ad5195a843e7e6a505c5ccf9b4740cd71c7ebecd..dd0db94a77c11f77163026cb2debb0a5414bd9d8 100644
--- a/unittest/mysys/CMakeLists.txt
+++ b/unittest/mysys/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 MY_ADD_TESTS(bitmap base64 my_atomic my_rdtsc lf my_malloc my_getopt dynstring
              aes
diff --git a/unittest/mysys/aes-t.c b/unittest/mysys/aes-t.c
index 2d65b434cc361ffe5dc988b40670a8600b9551c2..34704e067496e992144fdd949f83af92016d3fd4 100644
--- a/unittest/mysys/aes-t.c
+++ b/unittest/mysys/aes-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/base64-t.c b/unittest/mysys/base64-t.c
index a3a37976da6ba3be6f501006009dde694ee24052..cc841eda37c4ad7293e91490c1fe69ce92d401ab 100644
--- a/unittest/mysys/base64-t.c
+++ b/unittest/mysys/base64-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/bitmap-t.c b/unittest/mysys/bitmap-t.c
index c4588779c9b4ed13c0f704b7506f3230f96ac5d0..e8f41b32d2cc0d04a4d24293be4445b13b25a74c 100644
--- a/unittest/mysys/bitmap-t.c
+++ b/unittest/mysys/bitmap-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 
    This test was copied from the unit test inside the
    mysys/my_bitmap.c file and adapted by Mats Kindahl to use the mytap
diff --git a/unittest/mysys/dynstring-t.c b/unittest/mysys/dynstring-t.c
index fed8488da2cb1b038bba16c3a55b7fedf8173c85..774811f0182cce3b644382a5a9b5089039278b69 100644
--- a/unittest/mysys/dynstring-t.c
+++ b/unittest/mysys/dynstring-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 //#include 
 #include 
diff --git a/unittest/mysys/lf-t.c b/unittest/mysys/lf-t.c
index 80f5885694002168579610597f3e956ac3a38f31..0092cedba8bca59f6880a193b49b0db17d546d2f 100644
--- a/unittest/mysys/lf-t.c
+++ b/unittest/mysys/lf-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /**
   @file
diff --git a/unittest/mysys/my_atomic-t.c b/unittest/mysys/my_atomic-t.c
index 3198da6836dbe87961b58335b1864cb454f4f690..83c46c24d3fad2790f89149cd4f6b28fe0ca5fb4 100644
--- a/unittest/mysys/my_atomic-t.c
+++ b/unittest/mysys/my_atomic-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "thr_template.c"
 
diff --git a/unittest/mysys/my_delete-t.c b/unittest/mysys/my_delete-t.c
index 7d15f09c787663b520db994b5658beabebe8ac31..7bc6cf89de58bf1d4763838f442076baf80ebd19 100644
--- a/unittest/mysys/my_delete-t.c
+++ b/unittest/mysys/my_delete-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/my_malloc-t.c b/unittest/mysys/my_malloc-t.c
index 52d73434150fd6d5008ea0cd6a91ca0ec90197d4..d20ef052380ed48bf5768408dfdd8f8bc2724c0c 100644
--- a/unittest/mysys/my_malloc-t.c
+++ b/unittest/mysys/my_malloc-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/my_rdtsc-t.c b/unittest/mysys/my_rdtsc-t.c
index 76a74a6fc09be22141facb66acf6ac3c7d48cabc..81005e9e30ca3b50186a3332517695d63b4724f3 100644
--- a/unittest/mysys/my_rdtsc-t.c
+++ b/unittest/mysys/my_rdtsc-t.c
@@ -12,7 +12,7 @@
 
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   rdtsc3 -- multi-platform timer code
diff --git a/unittest/mysys/my_vsnprintf-t.c b/unittest/mysys/my_vsnprintf-t.c
index 45df97fbecd7560ba655d3ef07b972c73a69ec2d..6ba0a42cf7e0bd701f5d0ecb0b995b6cb923843f 100644
--- a/unittest/mysys/my_vsnprintf-t.c
+++ b/unittest/mysys/my_vsnprintf-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/thr_template.c b/unittest/mysys/thr_template.c
index 38b8d2903a5dc24934e2afce2cc6de174a55266f..5f01dfbe055b4f8c30125303046d0405f8d80b04 100644
--- a/unittest/mysys/thr_template.c
+++ b/unittest/mysys/thr_template.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/mysys/waiting_threads-t.c b/unittest/mysys/waiting_threads-t.c
index ac481e0fe998cbc26a073279b1b0365e644d9ddc..3d2147db2dadf8e45465f68aab2cd6019434c0ce 100644
--- a/unittest/mysys/waiting_threads-t.c
+++ b/unittest/mysys/waiting_threads-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include "thr_template.c"
 #include 
diff --git a/unittest/mytap/CMakeLists.txt b/unittest/mytap/CMakeLists.txt
index 063c69eb925064308afe6ca7a0a10b4117d1ea35..189ea5a1c00ef7c00c0e8457080406dbab354ab2 100644
--- a/unittest/mytap/CMakeLists.txt
+++ b/unittest/mytap/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 ADD_LIBRARY(mytap tap.c)
diff --git a/unittest/mytap/t/basic-t.c b/unittest/mytap/t/basic-t.c
index 9a909baba9660e2a507c0a26723b7cc51ee85824..6878383888dea1622b9820afe995f3b9ae886701 100644
--- a/unittest/mytap/t/basic-t.c
+++ b/unittest/mytap/t/basic-t.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include "my_config.h"
 
diff --git a/unittest/mytap/tap.c b/unittest/mytap/tap.c
index 7bfc6dba8f5df00aead69693fd3fdc7de50d0a86..65608e0de05634c1dcbb51a270b83e65820ff6ad 100644
--- a/unittest/mytap/tap.c
+++ b/unittest/mytap/tap.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
    Library for providing TAP support for testing C and C++ was written
    by Mats Kindahl .
diff --git a/unittest/mytap/tap.h b/unittest/mytap/tap.h
index 834392c5faeec743652e57ec02e209344e53d351..9b79b7714e82039aa370eb55f9f726ae666ec2a0 100644
--- a/unittest/mytap/tap.h
+++ b/unittest/mytap/tap.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1335  USA
 
    Library for providing TAP support for testing C and C++ was written
    by Mats Kindahl .
diff --git a/unittest/sql/CMakeLists.txt b/unittest/sql/CMakeLists.txt
index cd2ba9b3d2fbf8972aaee85a45e577d8ddce1499..f63dc0b2a21e6d8fae5bcfc342335105012cdb6f 100644
--- a/unittest/sql/CMakeLists.txt
+++ b/unittest/sql/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 MY_ADD_TESTS(my_apc LINK_LIBRARIES mysys EXT cc)
 
diff --git a/unittest/sql/explain_filename-t.cc b/unittest/sql/explain_filename-t.cc
index 69ce51c04465ba0638c9e3eb7e9f40f72758f7f9..0df76ed70b1dca53843661b88c5ef7407b121f8a 100644
--- a/unittest/sql/explain_filename-t.cc
+++ b/unittest/sql/explain_filename-t.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 */
 
 /** Unit test case for the function explain_filename(). */
diff --git a/unittest/sql/mf_iocache-t.cc b/unittest/sql/mf_iocache-t.cc
index 51656c02e57f9d851809ce1d21a563bd572b1ffc..9ca01daae59ca07aec03df074f57a41241c0c7fe 100644
--- a/unittest/sql/mf_iocache-t.cc
+++ b/unittest/sql/mf_iocache-t.cc
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #include 
 #include 
diff --git a/unittest/sql/my_apc-t.cc b/unittest/sql/my_apc-t.cc
index 6d44859d164f57f76053be07b48ada27a4b51683..c08e7281c922ed81008bef8ab15e73fc63cda415 100644
--- a/unittest/sql/my_apc-t.cc
+++ b/unittest/sql/my_apc-t.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 /*
   This file does standalone APC system tests.
diff --git a/unittest/strings/strings-t.c b/unittest/strings/strings-t.c
index fe595a5c303a1a86b650808b24b36abbab4cb884..46cf7c36ebe49c2f383aa0592119565d0630c96e 100644
--- a/unittest/strings/strings-t.c
+++ b/unittest/strings/strings-t.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA */
 
 #include 
 #include 
diff --git a/unittest/unit.pl b/unittest/unit.pl
index fe45ece423356ed7fa4a90c70363a90071dd0762..fb9a16fbe496ef82db92fda2e51fc392a2c285cb 100644
--- a/unittest/unit.pl
+++ b/unittest/unit.pl
@@ -13,7 +13,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 use File::Find;
 use Getopt::Long;
diff --git a/vio/CMakeLists.txt b/vio/CMakeLists.txt
index cdb28799adaa918a70e9f7033820ded647cc4e69..6749d3c699b1517ef38110201aa17681a7fdb545 100644
--- a/vio/CMakeLists.txt
+++ b/vio/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include 
 ${SSL_INCLUDE_DIRS})
diff --git a/vio/test-ssl.c b/vio/test-ssl.c
index c99f5071055b1db07ea2fb62f4fe5f1d4dc51839..dc116e7e43cc10ccd797eba985f12e5ec6450e13 100644
--- a/vio/test-ssl.c
+++ b/vio/test-ssl.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #if defined(HAVE_OPENSSL)
diff --git a/vio/test-sslclient.c b/vio/test-sslclient.c
index 93fdb06375466906f6c2ef61e4e080688eab77ca..487c7b92bfbc03e33b616f82b6c479039a1e55e3 100644
--- a/vio/test-sslclient.c
+++ b/vio/test-sslclient.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #ifdef HAVE_OPENSSL
diff --git a/vio/test-sslserver.c b/vio/test-sslserver.c
index c81dc03dc58065fc4e2c5e484521628409970a49..8d63fd16f333523df7f5911f18622936eddc2f9d 100644
--- a/vio/test-sslserver.c
+++ b/vio/test-sslserver.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #ifdef HAVE_OPENSSL
diff --git a/vio/vio.c b/vio/vio.c
index e3bc8ca8ab83314325cb6bc48c4f934baab3a9f2..ee84d27a3d8e75bd246e737bcf651f9abab3ad7b 100644
--- a/vio/vio.c
+++ b/vio/vio.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Note that we can't have assertion on file descriptors;  The reason for
diff --git a/vio/vio_priv.h b/vio/vio_priv.h
index 248e1a59b2363d92a826459e8a531cc46f888636..71a0468e22678bdc0d44a51e0fa8eb76a8aecfc4 100644
--- a/vio/vio_priv.h
+++ b/vio/vio_priv.h
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #ifndef VIO_PRIV_INCLUDED
 #define VIO_PRIV_INCLUDED
diff --git a/vio/viopipe.c b/vio/viopipe.c
index f9af50bc3c9480b8bac98314637b9a6832ccfe02..2d784ecde61dcd257209767a4b6064afc08c7abd 100644
--- a/vio/viopipe.c
+++ b/vio/viopipe.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "vio_priv.h"
 
diff --git a/vio/vioshm.c b/vio/vioshm.c
index acc7d2402c58ba823ed2da46a336a89a0e943c55..7b491b8f9b4230065fbe34a3bebb459cbe7567cb 100644
--- a/vio/vioshm.c
+++ b/vio/vioshm.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "vio_priv.h"
 
diff --git a/vio/viosocket.c b/vio/viosocket.c
index e11460dd4b2ce9ca67916f749b394cb62326b9bb..e22e8e85ff6744674e18918dff4d21b21a539e52 100644
--- a/vio/viosocket.c
+++ b/vio/viosocket.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-   02110-1301  USA */
+   02110-1335  USA */
 
 /*
   Note that we can't have assertion on file descriptors;  The reason for
diff --git a/vio/viossl.c b/vio/viossl.c
index 0bc2c2633363c895789f3f7a80646a38153be0db..8a81c22c0356478ec7e27b7960d67057ae2abcf1 100644
--- a/vio/viossl.c
+++ b/vio/viossl.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /*
   Note that we can't have assertion on file descriptors;  The reason for
diff --git a/vio/viosslfactories.c b/vio/viosslfactories.c
index 52b624d33760b6510f912c84f2cea7c59548ab32..8895cce3d1822e70e8c37bc3d3ed09cd6a39873e 100644
--- a/vio/viosslfactories.c
+++ b/vio/viosslfactories.c
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include "vio_priv.h"
 
diff --git a/vio/viotest-ssl.c b/vio/viotest-ssl.c
index 51d171d6923af93319a6cb2aecad710eaffbcdfc..36d67b9f85f50b273745e30bab6253e05e48fe3e 100644
--- a/vio/viotest-ssl.c
+++ b/vio/viotest-ssl.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 #include 
 #ifdef HAVE_OPENSSL
diff --git a/vio/viotest-sslconnect.cc b/vio/viotest-sslconnect.cc
index 18e558159fad366776c52a1b51d135644bcd5d09..dee3e318aef6d7777135fcb046bdf1367bd0a146 100644
--- a/vio/viotest-sslconnect.cc
+++ b/vio/viotest-sslconnect.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* 
 **  Virtual I/O library
diff --git a/vio/viotest.cc b/vio/viotest.cc
index b1c11a85cf2a7e4e0ac58a23472d17bd239a9ea3..cfb74cf3a6127d3bb4fff77653c2cf31113f44e5 100644
--- a/vio/viotest.cc
+++ b/vio/viotest.cc
@@ -12,7 +12,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA */
 
 /* 
 **  Virtual I/O library
diff --git a/win/create_def_file.js b/win/create_def_file.js
index 25bbbb4eb3d50566501e67c928181c96c0cc48d4..1fb9f4ac5a81aac5a7d4dabed65e5607042a53a3 100644
--- a/win/create_def_file.js
+++ b/win/create_def_file.js
@@ -14,7 +14,7 @@
 // 
 // You should have received a copy of the GNU General Public License
 // along with this program; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 /*
   This script extracts names and types of globally defined symbols from
diff --git a/win/packaging/CMakeLists.txt b/win/packaging/CMakeLists.txt
index d33516044f61310f06ba3893d2a9f5396ebeb974..6a2900bfe7a30bcac100c67e8042453c5fd823c7 100644
--- a/win/packaging/CMakeLists.txt
+++ b/win/packaging/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 IF(NOT WIN32)
   RETURN()
diff --git a/win/packaging/COPYING.rtf b/win/packaging/COPYING.rtf
index ba5fa3f31f05621c54ab2d357ef9717880c163ab..c4dec49557f4a656961f67e12dbb6e1c3b2f354a 100644
--- a/win/packaging/COPYING.rtf
+++ b/win/packaging/COPYING.rtf
@@ -2,7 +2,7 @@
 {\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}}
 \viewkind4\uc1\pard\s2\sb100\sa100\b\f0\fs24 GNU GENERAL PUBLIC LICENSE\par
 \pard\sb100\sa100\b0\fs20 Version 2, June 1991 \par
-\pard Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.\fs24  \par
+\pard Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.\fs24  \par
 \pard\s2\sb100\sa100\b Preamble\par
 \pard\sb100\sa100\b0\fs20 The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. \par
 When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. \par
@@ -48,7 +48,7 @@ NO WARRANTY \par
 How to Apply These Terms to Your New Programs\fs20\par
 \pard\sb100\sa100\b0 If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. \par
 To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. \par
-\pard one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA. \par
+\pard one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA. \par
 \pard\sb100\sa100 Also add information on how to contact you by electronic and paper mail. \par
 If the program is interactive, make it output a short notice like this when it starts in an interactive mode: \par
 \pard Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. \par
diff --git a/win/packaging/ca/CMakeLists.txt b/win/packaging/ca/CMakeLists.txt
index 04d5408b9c9133838d59db024371b6d7101de9d9..1a24ee9a082cc84378dd59b004e0c122fc11ab1f 100644
--- a/win/packaging/ca/CMakeLists.txt
+++ b/win/packaging/ca/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335  USA
 
 INCLUDE_DIRECTORIES(${WIX_DIR}/../SDK/${WIX_MSVC_SUFFIX}/inc)
 SET(WIXCA_SOURCES CustomAction.cpp CustomAction.def)
diff --git a/win/packaging/ca/CustomAction.cpp b/win/packaging/ca/CustomAction.cpp
index c0062ddcdd1b7a02dd9c0a2a263b974fc06de547..4005bd6e73b31c86a45b8b98574a06a848e4baa6 100644
--- a/win/packaging/ca/CustomAction.cpp
+++ b/win/packaging/ca/CustomAction.cpp
@@ -11,7 +11,7 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
 
 #ifndef UNICODE
 #define UNICODE
diff --git a/win/packaging/heidisql.cmake b/win/packaging/heidisql.cmake
index 897678f2025229cee6b99db1742f2bfbb7c20bb3..a3d884adb56b0be0246712b012a2142b94abe063 100644
--- a/win/packaging/heidisql.cmake
+++ b/win/packaging/heidisql.cmake
@@ -1,4 +1,4 @@
-SET(HEIDISQL_BASE_NAME "HeidiSQL_9.5_Portable")
+SET(HEIDISQL_BASE_NAME "HeidiSQL_10.2_32_Portable")
 SET(HEIDISQL_ZIP "${HEIDISQL_BASE_NAME}.zip")
 SET(HEIDISQL_URL "http://www.heidisql.com/downloads/releases/${HEIDISQL_ZIP}")
 SET(HEIDISQL_DOWNLOAD_DIR ${THIRD_PARTY_DOWNLOAD_LOCATION}/${HEIDISQL_BASE_NAME})
@@ -12,12 +12,5 @@ IF(NOT EXISTS ${HEIDISQL_DOWNLOAD_DIR}/${HEIDISQL_ZIP})
   )
 ENDIF()
 
-SET(LIBMYSQLDLL_SOURCE ${HEIDISQL_DOWNLOAD_DIR}/libmysql.dll)
-IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
-  # Use our libmysql if it is 32 bit.
-  IF(LIBMYSQL_LOCATION)
-    SET(LIBMYSQLDLL_SOURCE "${LIBMYSQL_LOCATION}")
-  ENDIF()
-ENDIF()
 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/heidisql.wxi.in ${CMAKE_CURRENT_BINARY_DIR}/heidisql.wxi)
 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/heidisql_feature.wxi.in ${CMAKE_CURRENT_BINARY_DIR}/heidisql_feature.wxi)
diff --git a/win/packaging/heidisql.wxi.in b/win/packaging/heidisql.wxi.in
index 241d2c2750d5482cef525ef45f7f95167cb0d4e2..4244b47d0d8599a71fc8e3f1128d852d15fca8f9 100644
--- a/win/packaging/heidisql.wxi.in
+++ b/win/packaging/heidisql.wxi.in
@@ -8,6 +8,7 @@
           Win64="no"
 />
 
+
 
   
    
@@ -35,7 +36,9 @@
     
       
     
-
+    
+      
+    
     
       
     
@@ -53,12 +56,11 @@
     
 
     
-      
-        
-      
-      
-        
+      
+      
+        
       
+      
     
 
     
@@ -73,13 +75,15 @@
   
   
   
+  
   
   
   
   
   
-  
-  
+  
+    
+  
   
 
 
diff --git a/wsrep/CMakeLists.txt b/wsrep/CMakeLists.txt
index 53c8e853078af27ea464232202fbebd246044684..44078860f4211dd08e7cb627e442f4943b9cedd6 100644
--- a/wsrep/CMakeLists.txt
+++ b/wsrep/CMakeLists.txt
@@ -11,7 +11,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1335 USA
 
 SET(WSREP_SOURCES wsrep_gtid.c wsrep_uuid.c wsrep_loader.c wsrep_dummy.c)
 
diff --git a/wsrep/wsrep_api.h b/wsrep/wsrep_api.h
index e713be094df3ee39978c873a6045f0aa04acce40..60abd9a69d10be06a8d94cac1dfafaba85697837 100644
--- a/wsrep/wsrep_api.h
+++ b/wsrep/wsrep_api.h
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
-   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+   51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA.
  */
 
 /*!
diff --git a/wsrep/wsrep_dummy.c b/wsrep/wsrep_dummy.c
index e48dcff39a141d148588ecea1dbc8c2385f90732..bd9f654b86be8e9cab803a2d2279a265ab4ed38b 100644
--- a/wsrep/wsrep_dummy.c
+++ b/wsrep/wsrep_dummy.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 /*! @file Dummy wsrep API implementation. */
diff --git a/wsrep/wsrep_gtid.c b/wsrep/wsrep_gtid.c
index 45148785c25f3f4c45658b67d0fa3a0713e0a6c7..bf5cab06585eb56fabde54cee8b403273a5e5827 100644
--- a/wsrep/wsrep_gtid.c
+++ b/wsrep/wsrep_gtid.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 /*! @file Helper functions to deal with GTID string representations */
diff --git a/wsrep/wsrep_loader.c b/wsrep/wsrep_loader.c
index 1321538742f13a2415a901499fe09ba25414f497..d08632a94ced93336d823b59c4fc6b4e27df38d0 100644
--- a/wsrep/wsrep_loader.c
+++ b/wsrep/wsrep_loader.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 /*! @file wsrep implementation loader */
diff --git a/wsrep/wsrep_uuid.c b/wsrep/wsrep_uuid.c
index 54ae4ab5ed59f3f72454a29368256bf02e7429fb..d525808d0da06e43c7d1b4302db8d680bb3dbc74 100644
--- a/wsrep/wsrep_uuid.c
+++ b/wsrep/wsrep_uuid.c
@@ -11,7 +11,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  */
 
 /*! @file Helper functions to deal with history UUID string representations */
diff --git a/zlib/CMakeLists.txt b/zlib/CMakeLists.txt
index 0c224e7ce22603b41374e78030cc3cb99b3bd7c2..f654f98bfc42d266ef8f0da3c50f11d55ce78ada 100644
--- a/zlib/CMakeLists.txt
+++ b/zlib/CMakeLists.txt
@@ -12,7 +12,7 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 
 cmake_minimum_required(VERSION 2.4.4)
 set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
@@ -124,6 +124,8 @@ string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*"
 
 ADD_CONVENIENCE_LIBRARY(zlib STATIC
   ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
+RESTRICT_SYMBOL_EXPORTS(zlib)
+
 
 if(NOT CYGWIN)
     # This property causes shared libraries on Linux to have the full version
@@ -142,7 +144,4 @@ if(CMAKE_SYSTEM_NAME MATCHES "SunOS")
 elseif(UNIX)
     # On unix-like platforms the library is almost always called libz
    set_target_properties(zlib PROPERTIES OUTPUT_NAME z)
-   if(NOT APPLE)
-     set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"")
-   endif()
 endif()