You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ch...@apache.org on 2017/12/09 03:20:09 UTC

svn commit: r23484 - in /dev/commons/text: ./ binaries/ source/

Author: chtompki
Date: Sat Dec  9 03:20:09 2017
New Revision: 23484

Log:
Staging commons-text-1.2-RC1

Added:
    dev/commons/text/RELEASE-NOTES.txt
    dev/commons/text/binaries/commons-text-1.2-bin.tar.gz   (with props)
    dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.asc
    dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.md5
    dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.sha1
    dev/commons/text/binaries/commons-text-1.2-bin.zip   (with props)
    dev/commons/text/binaries/commons-text-1.2-bin.zip.asc
    dev/commons/text/binaries/commons-text-1.2-bin.zip.md5
    dev/commons/text/binaries/commons-text-1.2-bin.zip.sha1
    dev/commons/text/source/commons-text-1.2-src.tar.gz   (with props)
    dev/commons/text/source/commons-text-1.2-src.tar.gz.asc
    dev/commons/text/source/commons-text-1.2-src.tar.gz.md5
    dev/commons/text/source/commons-text-1.2-src.tar.gz.sha1
    dev/commons/text/source/commons-text-1.2-src.zip   (with props)
    dev/commons/text/source/commons-text-1.2-src.zip.asc
    dev/commons/text/source/commons-text-1.2-src.zip.md5
    dev/commons/text/source/commons-text-1.2-src.zip.sha1

Added: dev/commons/text/RELEASE-NOTES.txt
==============================================================================
--- dev/commons/text/RELEASE-NOTES.txt (added)
+++ dev/commons/text/RELEASE-NOTES.txt Sat Dec  9 03:20:09 2017
@@ -0,0 +1,222 @@
+                          Apache Commons Text
+                              Version 1.2
+                             Release Notes
+
+
+INTRODUCTION
+============
+
+This document contains the release notes for the 1.2 version of Apache Commons
+Text. Commons Text is a set of utility functions and reusable components for 
+the purpose of processing and manipulating text that should be of use in a Java
+environment.
+
+Apache Commons Text is a library focused on algorithms working on strings.
+
+
+JAVA 9 SUPPORT
+==============
+
+At our time of release of 1.1, our build succeeds with Java 9-ea build 159,
+and we believe all of our features to be Java 9 compatible. However, when we
+run "mvn clean site" we have failures.
+
+NEW FEATURES
+=============
+
+o TEXT-74:   StrSubstitutor: Ability to turn off substitution in values. Thanks to Ioannis Sermetziadis.
+o TEXT-97:   RandomStringGenerator able to pass multiple ranges to .withinRange(). Thanks to Amey Jadiye.
+o TEXT-89:   WordUtils.initials support for UTF-16 surrogate pairs. Thanks to Arun Vinud S S.
+o TEXT-90:   Add CharacterPredicates for ASCII letters (uppercase/lowercase) and arabic numerals.
+o TEXT-85:   Added CaseUtils class with camel case conversion support. Thanks to Arun Vinud S S.
+o TEXT-91:   RandomStringGenerator should be able to generate a String with a random length.
+o TEXT-102:  Add StrLookup.resourceBundleLookup(ResourceBundle).
+
+FIXED BUGS
+==========
+
+o TEXT-106:  Exception thrown in ExtendedMessageFormat using quotes with custom registry. Thanks to Benoit Moreau.
+o TEXT-100:  StringEscapeUtils#UnEscapeJson doesn't recognize escape signs correctly. Thanks to Don Jeba.
+o TEXT-105:  Typo in LongestCommonSubsequence#logestCommonSubsequence. Thanks to Abrasha.
+
+CHANGES
+=======
+
+o TEXT-107:  Upversion commons-lang to 3.7.
+o TEXT-98:   Deprecate isDelimiter and use HashSets for delimiter checks. Thanks to Arun Vinud S S.
+o TEXT-88:   WordUtils should treat an empty delimiter array as no delimiters. Thanks to Amey Jadiye.
+o TEXT-93:   Update RandomStringGenerator to accept a list of valid characters. Thanks to Amey Jadiye.
+o TEXT-92:   Update commons-lang dependency to version 3.6.
+o TEXT-83:   Document that commons-csv should be used in preference to CsvTranslators. Thanks to Amey Jadiye.
+o TEXT-67:   NumericEntityUnescaper.options - fix TODO.
+o TEXT-84:   RandomStringGenerator claims to be immutable, but isn't.
+
+
+                        Release Notes for version 1.1
+
+
+JAVA 9 SUPPORT
+==============
+
+At our time of release of 1.1, our build succeeds with Java 9-ea build 159,
+and we believe all of our features to be Java 9 compatible. However, when we 
+run "mvn clean site" we have failures.
+
+NEW FEATURES
+============
+
+o TEXT-41:   WordUtils.abbreviate support Thanks to Amey Jadiye.
+o TEXT-82:   Putting WordUtils back in to the codebase Thanks to Amey Jadiye.
+o TEXT-81:   Add RandomStringGenerator Thanks to djones.
+o TEXT-36:   RandomStringGenerator: allow users to provide source of randomness
+             Thanks to Raymond DeCampo.
+                
+FIXED BUGS
+==========
+
+o TEXT-76:   Correct round issue in Jaro Winkler implementation
+o TEXT-72:   Similar to LANG-1025, clirr fails site build.
+                
+CHANGES
+=======
+
+o TEXT-39:   WordUtils should use toXxxxCase(int) rather than toXxxxCase(char) 
+             Thanks to Amey Jadiye.
+
+
+                        Release Notes for version 1.0
+
+
+INCOMPATIBLE CHANGES
+====================
+
+All package names changed from org.apache.commons.text.beta in 1.0-beta-1 to
+org.apache.commons.text in 1.0.
+
+Methods StringEscapeUtils#escapeHtml3Once and StringEscapeUtils#escapeHtml4Once
+have been removed; see TEXT-40
+
+JAVA 9 SUPPORT
+==============
+
+At our time of release of 1.0, our build succeeds with Java 9-ea build 158,
+and we believe all of our features to be Java 9 compatible. However, when we run
+"mvn clean site" we have failures.
+
+FIXED BUGS
+==========
+
+o TEXT-64:   Investigate locale issue in ExtendedMessageFormatTest. Thanks to
+             chtompki.
+o TEXT-69:   Resolve PMD/CMD Violations
+o TEXT-65:   Fixing the 200 checkstyle errors present in 1.0-beta-1.
+o TEXT-63:   Mutable fields should be private.
+
+REMOVED
+=======
+
+o TEXT-40:   Escape HTML characters only once: revert.
+
+
+
+                        Release Notes for version 1.0-beta-1
+
+
+A NOTE ON THE HISTORY OF THE CODE
+=================================
+
+The codebase began in the fall of 2014 as a location for housing algorithms for
+operating on Strings that seemed to have a more complex nature than those which
+would be considered a needed extension to java.lang. Thus, a new component,
+different from Apache Commons Lang was warranted. As the project evolved, it was
+noticed that Commons Lang had considerable more text manipulation tools than
+the average Java application developer would need or even want. So, we have
+decided to move the more esoteric String processing algorithms out of Commons
+Lang into Commons Text.
+
+JAVA 9 SUPPORT
+==============
+
+At our time of release of 1.0-beta-1, our build succeeds with Java 9-ea build 153,
+and we believe all of our features to be Java 9 compatible.
+
+NEW FEATURES
+============
+
+o TEXT-56:   Move CvsTranslators out of StringEscapeUtils and make them DRY
+             Thanks to Jarek Strzeleck.
+o TEXT-40:   Escape HTML characters only once Thanks to Sampanna Kahu.
+o TEXT-32:   Add LCS similarity and distance
+o TEXT-34:   Add class to generate random strings
+o TEXT-29:   Add a builder to StringEscapeUtils
+o TEXT-28:   Add shell/XSI escape/unescape support
+o TEXT-2:    Add Jaccard Index and Jaccard Distance Thanks to Don Jeba.
+o TEXT-27:   Move org.apache.commons.lang3.StringEscapeUtils.java into text
+o TEXT-23:   Moving from commons-lang, the package org.apache.commons.lang3.text
+o TEXT-10:   A more complex Levenshtein distance Thanks to Don Jeba.
+o TEXT-24:   Add coveralls and Travis.ci integration
+o TEXT-19:   Add alphabet converter Thanks to Eyal Allweil.
+o TEXT-13:   Create Commons Text logo
+o TEXT-7:    Write user guide
+o TEXT-15:   Human name parser
+o TEXT-3:    Add Cosine Similarity and Cosine Distance
+o TEXT-4:    Port Myers algorithm from [collections]
+o TEXT-1:    Add Hamming distance
+o TEXT-9:    Incorporate String algorithms from Commons Lang Thanks to britter.
+
+FIXED BUGS
+==========
+
+Note. We recognize the curiosity of a new component having "fixed bugs," but a
+considerable number of files were migrated over from Commons Lang, some of which
+needed fixes.
+
+o TEXT-62:   Incorporate suggestions from RC2 into 1.0 release.
+o TEXT-60:   Upgrading Jacoco for Java 9-ea compatibility. Thanks to Lee Adcock.
+o TEXT-52:   Possible attacks through StringEscapeUtils.escapeEcmaScrip better
+             javadoc
+o TEXT-37:   Global vs local source of randomness
+o TEXT-38:   Fluent API in "RandomStringBuilder"
+o TEXT-26:   Fix JaroWinklerDistance in the manner of LUCENE-1297
+o TEXT-35:   Unfinished class Javadoc for CosineDistance
+o TEXT-22:   LevenshteinDistance reduce memory consumption
+o TEXT-5:    IP clearance for the names package
+o TEXT-11:   Work on the string metric, distance, and similarity definitions for
+             the project
+o TEXT-12:   Create StringDistanceFrom class that contains a StringMetric and
+             the "left" side string. This would have a method that accepts the
+             "right" side string to test. Thanks to Jonathan baker.
+o TEXT-8:    Change (R) StringMetric.compare(CS left, CS right) to "apply" so
+             that it is consistent with BiFunction. Thanks to Jonathan Baker.
+o TEXT-6:    Allow extra information (e.g. Levenshtein threshold) to be stored
+             as (final) fields in the StringMetric instance. Thanks to Jonathan
+             Baker.
+
+CHANGES
+=======
+
+o TEXT-61:   Naming packages org.apache.commons.text.beta Thanks to Lee Adcock.
+o TEXT-58:   Refactor EntityArrays to have unmodifiableMaps in leu of String[][]
+o TEXT-53:   Prepare site for 1.0 release
+o TEXT-50:   Upgrade from commons-parent version 41 to version 42
+o TEXT-33:   Consolidating since tags at 1.0, removing deprecated methods
+o TEXT-16:   Improve HumanNameParser
+
+REMOVED
+=======
+
+o TEXT-55:   Remove WordUtils to be added back in an upcoming 1.X release
+o TEXT-51:   Remove RandomStringGenerator to be added back in the 1.1 release
+o TEXT-31:   Remove org.apache.commons.text.names, for later release than 1.0
+
+
+Historical list of changes: http://commons.apache.org/text/changes-report.html
+
+For complete information on Apache Commons Text, including instructions on how
+to submit bug reports, patches, or suggestions for improvement, see the Apache
+Apache Commons Text website:
+
+http://commons.apache.org/text/
+
+Have fun!
+-Apache Commons Text team
\ No newline at end of file

Added: dev/commons/text/binaries/commons-text-1.2-bin.tar.gz
==============================================================================
Binary file - no diff available.

Propchange: dev/commons/text/binaries/commons-text-1.2-bin.tar.gz
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.asc
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.asc (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.asc Sat Dec  9 03:20:09 2017
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlorS90ACgkQP6rSzV7L
+sxRfFA//bGPIfgoI3Yp1DS57VTgBJHKpk7WEyMeuePtOqvXUZaaDa0FeICLTx9hk
+0SVn2hm2UUTu4F3IQGw3va34fxDbSX0rIV9PaUSXtX4evNFofDUlSREma+LV44xb
+DIaTygiyeFhp5SdOV9aYlemTyEykLJPWsbDvXIMQkmwQ0gBE/jkYphXu0GljXfby
+XWsUc1woz5b+LqDmbo0Dxn2GB9hNJ+7P923w1Rr7lDZiRbxKEehjzZKYyEk+VEua
+Tc1D8BzurB4o1G94syJ4nJDX17ZC2ICCgk2arB+wb7cm/1rEUU+FrkmMyX9trj/A
+A/IoJgHzSmkFrYn4/BReLPJewIe4wYO3fcvR11orODfJV4YwZE6drhQ7LM6gG7mh
+Pm+BB1KjsM6Mw5SfYrc/yAJSLxddmA8a4FKEFlcdbKJXJVeZ/MyZ3B+TpjVQFQA6
+UgFOYQIh2eu4qhX4OQsWjG3vZH6gucNiAvOkoXzGp0x9OnN321OajFZ1KdNxeXJU
+rj0vaMQi0zYlPQpXTS0aIISbs9fheYKmK9rXm6oHqJDwlJaq1bhy4CLvUfUC4iKP
+4n+TIABqyfl4wGsxbSUa76Pfhqi0X6Yk55iIN6upzuWIqhAOp5nokknJMtdCeDuL
+JOoBBX0J6Ll4D8ag0L7iUR0cCPh03cTOlYFJStlzQhP7RJm6rcs=
+=P+ys
+-----END PGP SIGNATURE-----

Added: dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.md5
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.md5 (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.md5 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+9becb247b0a39449affa04c98b055635

Added: dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.sha1
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.sha1 (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.tar.gz.sha1 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+180743785d360a22b56732869949b825e099791f

Added: dev/commons/text/binaries/commons-text-1.2-bin.zip
==============================================================================
Binary file - no diff available.

Propchange: dev/commons/text/binaries/commons-text-1.2-bin.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/commons/text/binaries/commons-text-1.2-bin.zip.asc
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.zip.asc (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.zip.asc Sat Dec  9 03:20:09 2017
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlorS90ACgkQP6rSzV7L
+sxSn4w//QZBIG9FgS9+IvjdF51DCNt1VUx/mkhKtblmO4i8SZ7mKKMlZ7PCVZbw4
+KchjNniJ2YfM3FwZVuLQPLCA/XI8W02UeH6u3y31eED3BBYkeiNfPKrUEfMV1+qD
+lt2hyd+y+CTk1RagPNpFUIx9nOWoYza/IrMT9LmdmurXH6vHk3U1LmjfdVgiyyDE
+g0kQWdXZLFveNI74KioZtBxq1gaEYius++N4qUf6hF2HcIBEHzI4InMJW1GwZaqK
+anuW4B0osW/vLO/fvaPsjlke0CjmDbpHGT0dUoSXR9lz5bFifq655LUxh1Hu8yP/
+QCCWDTQTUURVfDURjlLehgsogWst2prX4BJHfy8OomWhN/Uhtl6V0katCANHqI/+
+30VapDeoXCnC6yheB8C0wKznJ6DkDcXNVFO+C9FgXeD99o5tTFdyvfgKSB8pabeS
+dR3LT9sjmo4OInrKal+5wG0tH+NEnV90BBgGtGPWSQo7ryB/ca2vyM5hLcSPVu6j
+9oQ8w+JE/f7/1VuqZMhrfnWA3jq1n9bUOVM9/bdZs9ggpKrQW2LXUPs75x95Lyq6
+cobIsi+l0ATfmpnggRS/ZMoSGRMZ8BQymtjz0c69GqLcOCwdihn+BWy4Ga+aJ5Nj
+oaXSQI1Xm30KR7w5R3QY5d9zH9dNEycI6CFODyJQRaONU/Wq1nw=
+=WNvg
+-----END PGP SIGNATURE-----

Added: dev/commons/text/binaries/commons-text-1.2-bin.zip.md5
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.zip.md5 (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.zip.md5 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+4054043eab255b1faa976a52f4fd44d0

Added: dev/commons/text/binaries/commons-text-1.2-bin.zip.sha1
==============================================================================
--- dev/commons/text/binaries/commons-text-1.2-bin.zip.sha1 (added)
+++ dev/commons/text/binaries/commons-text-1.2-bin.zip.sha1 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+be2cd9803a5bc777c1b70c187321a579dc3d987d

Added: dev/commons/text/source/commons-text-1.2-src.tar.gz
==============================================================================
Binary file - no diff available.

Propchange: dev/commons/text/source/commons-text-1.2-src.tar.gz
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/commons/text/source/commons-text-1.2-src.tar.gz.asc
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.tar.gz.asc (added)
+++ dev/commons/text/source/commons-text-1.2-src.tar.gz.asc Sat Dec  9 03:20:09 2017
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlorS90ACgkQP6rSzV7L
+sxRlKA//fgyCorNqbBhEGFESSPpBjxCtK2j6XeRbIfxQZKBeao+kIo7H1BznN3/E
+g2ufb5/cW8pugJdcKRf/qaXOrTn5tBtp61aa7UWJRmHjQ72jP7oKTMGVPexljplx
+6h7aZdhO0hG8mfygfG22MOmmFxxR5CSlKl3rAfqlHtRRtuS1JYaknnQ3lxtNX7rw
+Ehi+8feOQ+TN3J+9CAzARiy1o0SYTBe0qh1JvpSmiZH3JjHiaUV6z0/7yQFZnH5v
+meLHFQoDbom5BH1bAT+q5Lc5TN5dCgG3LlgRCMaNSmc+oMmsG6ByGQHb0Iy16HX+
+SfiJ7RwihQ5tiFw7sfEZu4TZ7BTwtNt2zTROrXHGW/C1cp4YB5kVHOPayAqSJFZY
+fPSBBWEhq4SmM6yTHyGde3g6jYGPnHHNvYY3vtsB4Qr1vj/bWWsfhGsbyoLesCbc
+qP+J3d4gLlO11UU0K44BNhwLqzS399Ggazl///Is9t+47FKkFZBHt37ojGbEG30L
+XJ9L45PHuwkCNjcEa01NppMJoIV/iQ3XQxE2vTMOK5/TDqgorpXAhgIyPh+hs812
+XJ5X40tnBGJgA3Q1XBhHWHrW45yu5r9OcQ/SjnyzhgxTHtUFvZvrZg8i0Ys3LoEr
+KGabvftysN7zCjlkFiWvFMOUtLdCZjjrbwtY07aKgY4wNGToLAA=
+=5oN5
+-----END PGP SIGNATURE-----

Added: dev/commons/text/source/commons-text-1.2-src.tar.gz.md5
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.tar.gz.md5 (added)
+++ dev/commons/text/source/commons-text-1.2-src.tar.gz.md5 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+7eab89393b3a64935d5c5407eab163d7

Added: dev/commons/text/source/commons-text-1.2-src.tar.gz.sha1
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.tar.gz.sha1 (added)
+++ dev/commons/text/source/commons-text-1.2-src.tar.gz.sha1 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+53c1226c37d55947383b2e30916e4ddaabee9a43

Added: dev/commons/text/source/commons-text-1.2-src.zip
==============================================================================
Binary file - no diff available.

Propchange: dev/commons/text/source/commons-text-1.2-src.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/commons/text/source/commons-text-1.2-src.zip.asc
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.zip.asc (added)
+++ dev/commons/text/source/commons-text-1.2-src.zip.asc Sat Dec  9 03:20:09 2017
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlorS90ACgkQP6rSzV7L
+sxSFpg//V22rOhGBgtxoOo3V4Vqy25cpOLcNbkLB22ga91QTdMBVDRTU4fMM2Ndc
+rwbKRdyzr/xpIM21aQ2oFZQ9VhbRDHNS184jIevT0A+c2OnKBn+BCPIYqK39HAji
+yQg3YIB8zSLuswfJnV32mINBHiTkIltnIXSph5XmhtkfE6DCGVvI4GdEbQqr8ztG
+4U3G4+fuwzCkWLpQTh9WEj1wYFHLCDUWd3gqilEH3jg/dZUUA2W5xfohLUszOlhe
+R1xzDqluDG9dnJVJPo1Wm7GGuIskbDeU5PQ8Va6C3itGhRHNC74sbmnIhMeKfiqy
+9lXQLPSriSK9Aoki2Fv8BoruaqvlltoGERchGTWjhOvPizssOHG2kNfjyg5t0k28
+KcrcEJQcGrmmSbmGluuq/rDAPtQ9zgX3BYovWxaJYTyYq28EhBwTJDUOh4GhKCST
+4ejYzenWi4klLqhhMfq1k5abDG7THOKM0mvk497TP0+sJWqLHVpHiJPjU2qJsL36
+B2pJSopOS/xoMHDIplYiwnxeYHfpderdg3ph9kWxvTUs7XHc5m/FNE+nAFDNElwG
+5EU6DBcfKvdRuXusvyWB5ivoZJGNeIec6JJCXGSyVtawKrcTz5UO/272lGjyp/rJ
+tSUQKrw2Rc937AtSk/GulUgLbvlmC8gNV7eyXs5K/bt5GkC5TCU=
+=g8zY
+-----END PGP SIGNATURE-----

Added: dev/commons/text/source/commons-text-1.2-src.zip.md5
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.zip.md5 (added)
+++ dev/commons/text/source/commons-text-1.2-src.zip.md5 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+d4e4817a3571628992e19dae2fbcd453

Added: dev/commons/text/source/commons-text-1.2-src.zip.sha1
==============================================================================
--- dev/commons/text/source/commons-text-1.2-src.zip.sha1 (added)
+++ dev/commons/text/source/commons-text-1.2-src.zip.sha1 Sat Dec  9 03:20:09 2017
@@ -0,0 +1 @@
+73989414ca74b0a44c0ac972e88cc4f1e0249fc7