+ rewind() + +
+ + +Resets the read-counters
+ +
+ public
+ rewind() : self
+
+
+
+
+
+ diff --git a/classes/chillerlan-QRCode-Common-BitBuffer.html b/classes/chillerlan-QRCode-Common-BitBuffer.html index 815eab090..a8ee5d2a2 100644 --- a/classes/chillerlan-QRCode-Common-BitBuffer.html +++ b/classes/chillerlan-QRCode-Common-BitBuffer.html @@ -220,6 +220,13 @@
+Resets the read-counters
+ +
+ public
+ rewind() : self
+
+
+
+
+
+ ISO/IEC 18004:2000 - 8.4.1 Extended Channel Interpretation (ECI) Mode
+ diff --git a/classes/chillerlan-QRCode-Common-GF256.html b/classes/chillerlan-QRCode-Common-GF256.html index 8ea48c914..b47c7a83b 100644 --- a/classes/chillerlan-QRCode-Common-GF256.html +++ b/classes/chillerlan-QRCode-Common-GF256.html @@ -976,7 +976,7 @@ where the least-significant bit represents the constant coefficient2 to the power of a in GF(size)
+2 to the power of $a in GF(size)
base 2 log of a in GF(size)
+base 2 log of $a in GF(size)
array coefficients as ints representing elements of GF(size), arranged -from most significant (highest-power term) coefficient to least significant
+from most significant (highest-power term) coefficient to the least significant
public
- mixed
+ int
AUTO
= -1
-
-
-
-
+
+
+ Note that the diagram in section 6.8.1 is misleading since it indicates that i is column position -and j is row position. In fact, as the text says, i is row position and j is column position.
+Note that the diagram in section 6.8.1 is misleading since it indicates that $i is column position +and $j is row position. In fact, as the text says, $i is row position and $j is column position.
+ private
+ EccLevel
+ $eccLevel
+
+
+
+
+
+
+
+
+
+ private
+ Version
+ $version
+
+
+
+
+
+
+
+
+ReedSolomonDecoder constructor
+ +
+ public
+ __construct(Version $version, EccLevel $eccLevel) : mixed
+
+
+
public
- decode(array<string|int, mixed> $dataBlocks) : array<string|int, mixed>
+ decode(array<string|int, mixed> $rawCodewords) : BitBuffer
When QR Codes use multiple data blocks, they are actually interleaved.
+ +
+ private
+ deinterleaveRawBytes(array<string|int, mixed> $rawCodewords) : array<string|int, mixed>
+
+ That is, the first byte of data block 1 to n is written, then the second bytes, and so on. This +method will separate the data into original blocks.
+
+ private
+ EccLevel
+ $eccLevel
+
+
+
+
+
+
+
+
+
+ private
+ Version
+ $version
+
+
+
+
+
+
+
+
ECC interleaving
+ReedSolomonDecoder constructor
public
- interleaveEcBytes(BitBuffer $bitBuffer, Version $version, EccLevel $eccLevel) : array<string|int, mixed>
+ __construct(Version $version, EccLevel $eccLevel) : mixed
ECC interleaving
+ +
+ public
+ interleaveEcBytes(BitBuffer $bitBuffer) : array<string|int, mixed>
+
+
+
private
- generateEcBytes(array<string|int, mixed> $dataBytes, int $ecByteCount) : array<string|int, mixed>
+ encode(array<string|int, mixed> $dataBytes, int $ecByteCount) : array<string|int, mixed>
Version related tables and methods
+ @@ -140,7 +141,7 @@ = -1Enable version auto detection
+
public
- mixed
+ int
AUTO
= -1
-
-
-
-
+
+
+ ISO/IEC 18004:2000 Tables 13-22
+ISO/IEC 18004:2000 Tables 13-22 - Error correction characteristics
private
@@ -354,11 +368,12 @@
-
+ ISO/IEC 18004:2000 Table 1 - Data capacity of all versions of QR Code
+
private
mixed
@@ -367,8 +382,7 @@
-
-
+
@@ -383,7 +397,7 @@
@@ -428,7 +442,7 @@
@@ -466,7 +480,7 @@
@@ -524,7 +538,7 @@
@@ -557,7 +571,7 @@
@@ -590,7 +604,7 @@
@@ -623,7 +637,7 @@
@@ -667,7 +681,7 @@
@@ -700,7 +714,7 @@
@@ -733,7 +747,7 @@
diff --git a/classes/chillerlan-QRCode-Data-AlphaNum.html b/classes/chillerlan-QRCode-Data-AlphaNum.html
index 8cdb6f451..b3b8af1f3 100644
--- a/classes/chillerlan-QRCode-Data-AlphaNum.html
+++ b/classes/chillerlan-QRCode-Data-AlphaNum.html
@@ -161,7 +161,7 @@ ISO/IEC 18004:2000 Section 8.4.3
: int
-- the current data mode: Num, Alphanum, Kanji, Byte
+- the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
-
__construct()
@@ -288,7 +288,7 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -326,7 +326,7 @@ ISO/IEC 18004:2000 Section 8.4.3
-
the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -373,7 +373,7 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -431,7 +431,7 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -461,11 +461,10 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -561,7 +560,7 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -772,7 +771,7 @@ ISO/IEC 18004:2000 Section 8.4.3
@@ -805,7 +804,7 @@ ISO/IEC 18004:2000 Section 8.4.3
diff --git a/classes/chillerlan-QRCode-Data-Byte.html b/classes/chillerlan-QRCode-Data-Byte.html
index ca5c166d5..1439fd4d7 100644
--- a/classes/chillerlan-QRCode-Data-Byte.html
+++ b/classes/chillerlan-QRCode-Data-Byte.html
@@ -154,7 +154,7 @@ ISO/IEC 18004:2000 Section 8.4.4
: int
-- the current data mode: Num, Alphanum, Kanji, Byte
+- the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
-
__construct()
@@ -247,7 +247,7 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -285,7 +285,7 @@ ISO/IEC 18004:2000 Section 8.4.4
-
the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -332,7 +332,7 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -390,7 +390,7 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -420,11 +420,10 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -520,7 +519,7 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -731,7 +730,7 @@ ISO/IEC 18004:2000 Section 8.4.4
@@ -764,7 +763,7 @@ ISO/IEC 18004:2000 Section 8.4.4
diff --git a/classes/chillerlan-QRCode-Data-ECI.html b/classes/chillerlan-QRCode-Data-ECI.html
index 1cd72ab3d..3e9724a11 100644
--- a/classes/chillerlan-QRCode-Data-ECI.html
+++ b/classes/chillerlan-QRCode-Data-ECI.html
@@ -153,7 +153,7 @@
: int
-- the current data mode: Num, Alphanum, Kanji, Byte
+- the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
-
$encoding
@@ -260,7 +260,7 @@
@@ -298,7 +298,7 @@
-
the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -445,7 +445,7 @@
@@ -475,11 +475,10 @@
@@ -569,7 +568,7 @@
@@ -839,7 +838,7 @@
@@ -872,7 +871,7 @@
diff --git a/classes/chillerlan-QRCode-Data-Hanzi.html b/classes/chillerlan-QRCode-Data-Hanzi.html
index 60ea7bd33..bbdedc008 100644
--- a/classes/chillerlan-QRCode-Data-Hanzi.html
+++ b/classes/chillerlan-QRCode-Data-Hanzi.html
@@ -123,7 +123,7 @@
- Hanzi (simplified Chinese) mode, GBT18284-2000: double-byte characters from the GB2312/GB18030 character set
+ Hanzi (simplified Chinese) mode, GBT18284-2000: 13-bit double-byte characters from the GB2312/GB18030 character set
Please note that this is not part of the QR Code specification and may not be supported by all readers (ZXing-based ones do).
@@ -200,6 +200,13 @@
= 'GB18030'
+
+
+ -
+ GB2312_SUBSET
+
+ = 0b1
+
-
@@ -214,7 +221,7 @@
: int
-- the current data mode: Num, Alphanum, Kanji, Byte
+- the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
-
__construct()
@@ -317,6 +324,35 @@
+
+ public
+ mixed
+ GB2312_SUBSET
+ = 0b1
+
+
+
+
+
+
+
+
+
the current data mode: Num, Alphanum, Kanji, Byte
+the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -427,7 +463,7 @@
@@ -485,7 +521,7 @@
@@ -542,7 +578,7 @@
@@ -608,7 +644,7 @@
@@ -654,7 +690,7 @@
@@ -699,7 +735,7 @@
@@ -743,7 +779,7 @@
@@ -817,7 +853,7 @@
@@ -863,7 +899,7 @@
diff --git a/classes/chillerlan-QRCode-Data-Kanji.html b/classes/chillerlan-QRCode-Data-Kanji.html
index a9626e573..23df6d953 100644
--- a/classes/chillerlan-QRCode-Data-Kanji.html
+++ b/classes/chillerlan-QRCode-Data-Kanji.html
@@ -123,7 +123,7 @@
- Kanji mode: double-byte characters from the Shift-JIS character set
+ Kanji mode: 13-bit double-byte characters from the Shift-JIS character set
ISO/IEC 18004:2000 Section 8.3.5
ISO/IEC 18004:2000 Section 8.4.5
@@ -191,7 +191,7 @@ ISO/IEC 18004:2000 Section 8.4.5
: int
-the current data mode: Num, Alphanum, Kanji, Byte
+the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
__construct()
@@ -319,7 +319,7 @@ ISO/IEC 18004:2000 Section 8.4.5
@@ -357,7 +357,7 @@ ISO/IEC 18004:2000 Section 8.4.5
- the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -404,7 +404,7 @@ ISO/IEC 18004:2000 Section 8.4.5
@@ -591,7 +591,7 @@ ISO/IEC 18004:2000 Section 8.4.5
@@ -846,7 +846,7 @@ ISO/IEC 18004:2000 Section 8.4.5
diff --git a/classes/chillerlan-QRCode-Data-Number.html b/classes/chillerlan-QRCode-Data-Number.html
index f74fd616c..9682886a0 100644
--- a/classes/chillerlan-QRCode-Data-Number.html
+++ b/classes/chillerlan-QRCode-Data-Number.html
@@ -161,7 +161,7 @@ ISO/IEC 18004:2000 Section 8.4.2
: int
-the current data mode: Num, Alphanum, Kanji, Byte
+the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
__construct()
@@ -294,7 +294,7 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -332,7 +332,7 @@ ISO/IEC 18004:2000 Section 8.4.2
- the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -379,7 +379,7 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -437,7 +437,7 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -467,11 +467,10 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -567,7 +566,7 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -778,7 +777,7 @@ ISO/IEC 18004:2000 Section 8.4.2
@@ -811,7 +810,7 @@ ISO/IEC 18004:2000 Section 8.4.2
diff --git a/classes/chillerlan-QRCode-Data-QRData.html b/classes/chillerlan-QRCode-Data-QRData.html
index a40200565..9c48f1bdc 100644
--- a/classes/chillerlan-QRCode-Data-QRData.html
+++ b/classes/chillerlan-QRCode-Data-QRData.html
@@ -120,7 +120,7 @@
- Processes the binary data and maps it on a matrix which is then being returned
+ Processes the binary data and maps it on a QRMatrix which is then being returned
@@ -572,7 +572,7 @@
public
setBitBuffer(BitBuffer $bitBuffer) : self
- This can be used instead of setData(), however, the version auto detection is not available in this case.
+ This can be used instead of setData(), however, the version auto-detection is not available in this case.
The version needs match the length bits range for the data mode the data has been encoded with,
additionally the bit array needs to contain enough pad bits.
diff --git a/classes/chillerlan-QRCode-Data-QRDataModeAbstract.html b/classes/chillerlan-QRCode-Data-QRDataModeAbstract.html
index 306950f71..45902772d 100644
--- a/classes/chillerlan-QRCode-Data-QRDataModeAbstract.html
+++ b/classes/chillerlan-QRCode-Data-QRDataModeAbstract.html
@@ -119,11 +119,12 @@
-
+
abstract methods for the several data modes
+
@@ -162,7 +163,7 @@
: int
-the current data mode: Num, Alphanum, Kanji, Byte
+the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
__construct()
@@ -227,7 +228,7 @@
@@ -261,11 +262,11 @@
- the current data mode: Num, Alphanum, Kanji, Byte
+ the current data mode: Num, Alphanum, Kanji, Hanzi, Byte
protected
@@ -299,7 +300,7 @@
@@ -357,7 +358,7 @@
@@ -387,11 +388,10 @@
@@ -415,7 +415,7 @@
@@ -461,7 +461,7 @@
@@ -494,7 +494,7 @@
diff --git a/classes/chillerlan-QRCode-Data-QRDataModeInterface.html b/classes/chillerlan-QRCode-Data-QRDataModeInterface.html
index fcefcb7ad..cea95a202 100644
--- a/classes/chillerlan-QRCode-Data-QRDataModeInterface.html
+++ b/classes/chillerlan-QRCode-Data-QRDataModeInterface.html
@@ -133,6 +133,13 @@
-
+ convertEncoding()
+
+ : string
+
+- encoding conversion helper
+
+ -
decodeSegment()
: string
@@ -183,6 +190,64 @@
-method
-public
-static "
+>
+
+ convertEncoding()
+
+
+
+
+ encoding conversion helper
+
+
+ public
+ static convertEncoding(string $string) : string
+
+
+ Parameters
+
+ -
+ $string
+ : string
+
+ -
+
+
+
+
+
+
+
+ Tags
+
+
+
+
+ Return values
+ string
+ —
+
+
+
+
decodeSegment()
@@ -191,7 +256,7 @@
@@ -309,7 +374,7 @@
@@ -353,7 +418,7 @@
diff --git a/classes/chillerlan-QRCode-Decoder-Binarizer.html b/classes/chillerlan-QRCode-Decoder-Binarizer.html
index e3e72d031..e4bebf8bc 100644
--- a/classes/chillerlan-QRCode-Decoder-Binarizer.html
+++ b/classes/chillerlan-QRCode-Decoder-Binarizer.html
@@ -125,7 +125,7 @@ GlobalHistogramBinarizer, is fairly efficient for what it does. It is designed f
high frequency images of barcodes with black data on white backgrounds. For this application,
it does a much better job than a global blackpoint with severe shadows and gradients.
- However it tends to produce artifacts on lower frequency images and is therefore not
+ However, it tends to produce artifacts on lower frequency images and is therefore not
a good general purpose binarizer for uses outside ZXing.
This class extends GlobalHistogramBinarizer, using the older histogram approach for 1D readers,
and the newer local approach for 2D readers. 1D decoding using a per-row histogram is already
@@ -254,7 +254,7 @@ profiling easier, and not doing heavy lifting when callers don't expect it.
: BitMatrix
For each block in the image, calculate the average black point using a 5x5 grid
-of the blocks around it. Also handles the corner cases (fractional blocks are computed based
+of the surrounding blocks. Also handles the corner cases (fractional blocks are computed based
on the last pixels in the row/column which are also used in the previous block).
@@ -761,7 +761,7 @@ fetched using getBlackRow(), so don't mix and match between them.
For each block in the image, calculate the average black point using a 5x5 grid
-of the blocks around it. Also handles the corner cases (fractional blocks are computed based
+of the surrounding blocks. Also handles the corner cases (fractional blocks are computed based
on the last pixels in the row/column which are also used in the previous block).
diff --git a/classes/chillerlan-QRCode-Decoder-BitMatrix.html b/classes/chillerlan-QRCode-Decoder-BitMatrix.html
index 63e39a6c8..ed697ce7b 100644
--- a/classes/chillerlan-QRCode-Decoder-BitMatrix.html
+++ b/classes/chillerlan-QRCode-Decoder-BitMatrix.html
@@ -123,8 +123,7 @@
- Holds a numerical representation of the final QR Code;
-maps the ECC coded binary data and applies the mask pattern
+ Extended QRMatrix to map read data from the Binarizer
@@ -464,7 +463,7 @@ returns true if no matches are found, otherwise false.
Reads the bits in the BitMatrix representing the finder pattern in the
correct order in order to reconstruct the codewords bytes contained within the
-QR Code.
+QR Code. Throws if the exact number of bytes expected is not read.
set()
@@ -583,14 +582,14 @@ QR Code.
: Version|null
-
+Decodes the version information from the given bit sequence, returns null if no valid match is found.
doDecodeFormatInformation()
: int|null
-
+Returns information about the format it specifies, or null if it doesn't seem to match any known pattern
numBitsDiffering()
@@ -1987,7 +1986,7 @@ returns true if no matches are found, otherwise false.
@@ -2020,13 +2019,13 @@ returns true if no matches are found, otherwise false.
Reads the bits in the BitMatrix representing the finder pattern in the
correct order in order to reconstruct the codewords bytes contained within the
-QR Code.
+QR Code. Throws if the exact number of bytes expected is not read.
public
@@ -2046,18 +2045,14 @@ QR Code.
QRCodeDecoderException
- if the exact number of bytes expected is not read
-
-
+
Return values
array<string|int, mixed>
—
- bytes encoded within the QR Code
-
-
+
@@ -2373,7 +2368,7 @@ false => $M_TYPE
@@ -2395,8 +2390,7 @@ mirror() method should be called.
: bool
- Whether to read version and format information mirrored.
-
+
@@ -2422,7 +2416,7 @@ mirror() method should be called.
@@ -2756,7 +2750,7 @@ mirror() method should be called.
@@ -2815,11 +2809,12 @@ mirror() method should be called.
-
+ Decodes the version information from the given bit sequence, returns null if no valid match is found.
+
private
decodeVersionInformation(int $versionBits) : Version|null
@@ -2858,11 +2853,12 @@ mirror() method should be called.
-
+ Returns information about the format it specifies, or null if it doesn't seem to match any known pattern
+
private
doDecodeFormatInformation(int $maskedFormatInfo1, int $maskedFormatInfo2) : int|null
@@ -2875,8 +2871,7 @@ mirror() method should be called.
: int
- format info indicator, with mask still applied
-
+
@@ -2884,9 +2879,7 @@ mirror() method should be called.
: int
- second copy of same info; both are checked at the same time
-to establish best match
-
+
@@ -2896,9 +2889,7 @@ to establish best match
Return values
int|null
—
- information about the format it specifies, or null if doesn't seem to match any known pattern
-
-
+
@@ -2965,7 +2956,7 @@ to establish best match
@@ -2975,7 +2966,9 @@ to establish best match
private
readFormatInformation() : self
-
+ Throws if both format information locations cannot be parsed as the valid encoding of format information.
+if both format information locations cannot be parsed as -the valid encoding of format information
-Throws if both version information locations cannot be parsed as the valid encoding of version information.
+if both version information locations cannot be parsed as -the valid encoding of version information
-if the QR Code cannot be decoded
-text and bytes encoded within the QR Code
-Decode the contents of that stream of bytes
+
private
- decodeBitStream(array<string|int, mixed> $bytes) : DecoderResult
+ decodeBitStream(BitBuffer $bitBuffer) : DecoderResult
When QR Codes use multiple data blocks, they are actually interleaved.
- -
- private
- getDataBlocks(array<string|int, mixed> $rawCodewords) : array<string|int, mixed>
-
- That is, the first byte of data block 1 to n is written, then the second bytes, and so on. This -method will separate the data into original blocks.
-bytes as read directly from the QR Code
-DataBlocks containing original bytes, "de-interleaved" from representation in the QR Code
-Encapsulates the result of decoding a matrix of bits. This typically -applies to 2D barcode formats. For now it contains the raw bytes obtained, +applies to 2D barcode formats. For now, it contains the raw bytes obtained as well as a String interpretation of those bytes, if applicable.
@@ -162,7 +162,7 @@ as well as a String interpretation of those bytes, if applicable.
public
- array<string|int, int>
+ BitBuffer
$rawBytes
@@ -530,7 +530,7 @@ as well as a String interpretation of those bytes, if applicable.
@@ -539,7 +539,7 @@ as well as a String interpretation of those bytes, if applicable.
private
string
$data
-
+ = ''
@@ -564,7 +564,7 @@ as well as a String interpretation of those bytes, if applicable.
@@ -598,7 +598,7 @@ as well as a String interpretation of those bytes, if applicable.
@@ -639,7 +639,7 @@ as well as a String interpretation of those bytes, if applicable.
private
- array<string|int, mixed>
+ BitBuffer
$rawBytes
@@ -734,7 +734,7 @@ as well as a String interpretation of those bytes, if applicable.
diff --git a/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html b/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
index cc7354cdb..cc11a96ff 100644
--- a/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
+++ b/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
@@ -718,8 +718,8 @@ getLuminances() may never be called.
A row-major 2D array of luminance values. Do not use result.length as it may be
-larger than width * height bytes on some platforms. Do not modify the contents
+ A row-major 2D array of luminance values. Do not use result $length as it may be
+larger than $width * $height bytes on some platforms. Do not modify the contents
of the result.
A row-major 2D array of luminance values. Do not use result.length as it may be
-larger than width * height bytes on some platforms. Do not modify the contents
+ A row-major 2D array of luminance values. Do not use result $length as it may be
+larger than $width * $height bytes on some platforms. Do not modify the contents
of the result.
A row-major 2D array of luminance values. Do not use result.length as it may be
-larger than width * height bytes on some platforms. Do not modify the contents
+ A row-major 2D array of luminance values. Do not use result $length as it may be
+larger than $width * $height bytes on some platforms. Do not modify the contents
of the result.
A row-major 2D array of luminance values. Do not use result.length as it may be
-larger than width * height bytes on some platforms. Do not modify the contents
+ A row-major 2D array of luminance values. Do not use result $length as it may be
+larger than $width * $height bytes on some platforms. Do not modify the contents
of the result.
This is called when a horizontal scan finds a possible alignment pattern. It will -cross check with a vertical scan, and if successful, will see if this pattern had been +cross-check with a vertical scan, and if successful, will see if this pattern had been found on a previous horizontal scan. If so, we consider it confirmed and conclude we have found the alignment pattern.
diff --git a/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html b/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html index 4ff9fa1ea..4810ad03f 100644 --- a/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html +++ b/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html @@ -234,7 +234,7 @@ finder pattern to see if the same proportion is detected.
private
- crossCheckDiagonal( $centerI, $centerJ) : bool
+ crossCheckDiagonal(int $centerI, int $centerJ) : bool
; row where a finder pattern was detected
+row where a finder pattern was detected
; center of the section that appears to cross a finder pattern
+center of the section that appears to cross a finder pattern
Like #crossCheckVertical(int, int, int, int), and in fact is basically identical, except it reads horizontally instead of vertically. This is used to cross-cross -check a vertical cross check and locate the real center of the alignment pattern.
+check a vertical cross-check and locate the real center of the alignment pattern.
private
@@ -843,7 +843,7 @@ finder pattern to see if the same proportion is detected.
: int
-
-
; row where a finder pattern was detected
+ row where a finder pattern was detected
@@ -852,7 +852,7 @@ finder pattern to see if the same proportion is detected.
: int
-
-
; center of the section that appears to cross a finder pattern
+ center of the section that appears to cross a finder pattern
@@ -861,7 +861,7 @@ finder pattern to see if the same proportion is detected.
: int
-
-
; maximum reasonable number of modules that should be
+ maximum reasonable number of modules that should be
observed in any reading state, based on the results of the horizontal scan
@@ -1228,7 +1228,7 @@ used by finder patterns to be considered a match
This is called when a horizontal scan finds a possible alignment pattern. It will
-cross check with a vertical scan, and if successful, will, ah, cross-cross-check
+cross-check with a vertical scan, and if successful, will, ah, cross-cross-check
with another horizontal scan. This is needed primarily to locate the real horizontal
center of the pattern in cases of extreme skew.
diff --git a/classes/chillerlan-QRCode-QRCode.html b/classes/chillerlan-QRCode-QRCode.html
index 0485e1a95..09bde300c 100644
--- a/classes/chillerlan-QRCode-QRCode.html
+++ b/classes/chillerlan-QRCode-QRCode.html
@@ -368,14 +368,14 @@
: self
-- Adds a Hanzi data segment (simplified Chinese double-byte characters, GB2312/GB18030)
+- Adds a Hanzi data segment (simplified Chinese 13-bit double-byte characters, GB2312/GB18030)
-
addKanjiSegment()
: self
-- Adds a Kanji data segment (Japanese double-byte characters, Shift-JIS)
+- Adds a Kanji data segment (Japanese 13-bit double-byte characters, Shift-JIS)
-
addNumericSegment()
@@ -1741,7 +1741,7 @@
addEciSegment(int $encoding, string $data) : self
The given string will be encoded from mb_internal_encoding() to the given ECI character set
-i hate this somehow but i'll leave it for now
+I hate this somehow, but I'll leave it for now
Adds a Hanzi data segment (simplified Chinese double-byte characters, GB2312/GB18030)
+Adds a Hanzi data segment (simplified Chinese 13-bit double-byte characters, GB2312/GB18030)
public
@@ -1849,7 +1849,7 @@
- Adds a Kanji data segment (Japanese double-byte characters, Shift-JIS)
+ Adds a Kanji data segment (Japanese 13-bit double-byte characters, Shift-JIS)
public
diff --git a/classes/chillerlan-QRCodeTest-Data-AlphaNumTest.html b/classes/chillerlan-QRCodeTest-Data-AlphaNumTest.html
index 8db4de2b1..4c0a7b628 100644
--- a/classes/chillerlan-QRCodeTest-Data-AlphaNumTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-AlphaNumTest.html
@@ -512,7 +512,7 @@
@@ -670,7 +670,7 @@
@@ -795,7 +795,7 @@
@@ -828,7 +828,7 @@
diff --git a/classes/chillerlan-QRCodeTest-Data-ByteTest.html b/classes/chillerlan-QRCodeTest-Data-ByteTest.html
index dd6b4440b..a1b20fa36 100644
--- a/classes/chillerlan-QRCodeTest-Data-ByteTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-ByteTest.html
@@ -512,7 +512,7 @@
@@ -670,7 +670,7 @@
@@ -841,7 +841,7 @@
diff --git a/classes/chillerlan-QRCodeTest-Data-DataInterfaceTestAbstract.html b/classes/chillerlan-QRCodeTest-Data-DataInterfaceTestAbstract.html
index 36b85ce9c..96d8400be 100644
--- a/classes/chillerlan-QRCodeTest-Data-DataInterfaceTestAbstract.html
+++ b/classes/chillerlan-QRCodeTest-Data-DataInterfaceTestAbstract.html
@@ -512,7 +512,7 @@
@@ -670,7 +670,7 @@
@@ -795,7 +795,7 @@
@@ -828,7 +828,7 @@
diff --git a/classes/chillerlan-QRCodeTest-Data-HanziTest.html b/classes/chillerlan-QRCodeTest-Data-HanziTest.html
index d1e85b027..b77c24a86 100644
--- a/classes/chillerlan-QRCodeTest-Data-HanziTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-HanziTest.html
@@ -447,7 +447,7 @@
@@ -559,7 +559,7 @@
@@ -717,7 +717,7 @@
@@ -842,7 +842,7 @@
@@ -875,7 +875,7 @@
@@ -908,7 +908,7 @@
diff --git a/classes/chillerlan-QRCodeTest-Data-KanjiTest.html b/classes/chillerlan-QRCodeTest-Data-KanjiTest.html
index 53e0a36fe..b1f7494f3 100644
--- a/classes/chillerlan-QRCodeTest-Data-KanjiTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-KanjiTest.html
@@ -559,7 +559,7 @@
@@ -717,7 +717,7 @@
@@ -842,7 +842,7 @@
@@ -875,7 +875,7 @@
diff --git a/classes/chillerlan-QRCodeTest-Data-NumberTest.html b/classes/chillerlan-QRCodeTest-Data-NumberTest.html
index f4ae18e23..bca5269d8 100644
--- a/classes/chillerlan-QRCodeTest-Data-NumberTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-NumberTest.html
@@ -512,7 +512,7 @@
@@ -670,7 +670,7 @@
@@ -795,7 +795,7 @@
@@ -828,7 +828,7 @@
diff --git a/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ b/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ
index 59fe73381..720ffb098 100644
Binary files a/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ and b/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ differ
diff --git a/descriptors/-/F/jRgdyBLyXKT+BGk4NfTw b/descriptors/-/F/jRgdyBLyXKT+BGk4NfTw
index 1379f7fa7..a557f7e4e 100644
Binary files a/descriptors/-/F/jRgdyBLyXKT+BGk4NfTw and b/descriptors/-/F/jRgdyBLyXKT+BGk4NfTw differ
diff --git a/descriptors/-/F/kNxgM6+xXQuNe88gSOxA b/descriptors/-/F/kNxgM6+xXQuNe88gSOxA
index 91385e153..04544e8a3 100644
Binary files a/descriptors/-/F/kNxgM6+xXQuNe88gSOxA and b/descriptors/-/F/kNxgM6+xXQuNe88gSOxA differ
diff --git a/descriptors/-/O/p5-gmoh5hPLmm04gN4pQ b/descriptors/-/O/p5-gmoh5hPLmm04gN4pQ
index e3ff10de1..048e52991 100644
Binary files a/descriptors/-/O/p5-gmoh5hPLmm04gN4pQ and b/descriptors/-/O/p5-gmoh5hPLmm04gN4pQ differ
diff --git a/descriptors/0/8/K5Nh3Keev5uTA1xbHsFg b/descriptors/0/8/K5Nh3Keev5uTA1xbHsFg
index c2cf5ae78..2bb2e7dde 100644
Binary files a/descriptors/0/8/K5Nh3Keev5uTA1xbHsFg and b/descriptors/0/8/K5Nh3Keev5uTA1xbHsFg differ
diff --git a/descriptors/0/B/2qSrZ6qQnjx2PjdHk9CQ b/descriptors/0/B/2qSrZ6qQnjx2PjdHk9CQ
index 333ce444e..c3e2a44d8 100644
Binary files a/descriptors/0/B/2qSrZ6qQnjx2PjdHk9CQ and b/descriptors/0/B/2qSrZ6qQnjx2PjdHk9CQ differ
diff --git a/descriptors/0/N/GpaeNybzoU59gW6UhBnQ b/descriptors/0/N/GpaeNybzoU59gW6UhBnQ
index bf92ff79b..9e2f2ec3a 100644
Binary files a/descriptors/0/N/GpaeNybzoU59gW6UhBnQ and b/descriptors/0/N/GpaeNybzoU59gW6UhBnQ differ
diff --git a/descriptors/1/C/HhgHbACpp2-v5vnsHqoQ b/descriptors/1/C/HhgHbACpp2-v5vnsHqoQ
index 7254115f7..12c8e799e 100644
Binary files a/descriptors/1/C/HhgHbACpp2-v5vnsHqoQ and b/descriptors/1/C/HhgHbACpp2-v5vnsHqoQ differ
diff --git a/descriptors/1/W/3ebKU0GB6zhMUdVP1b+A b/descriptors/1/W/3ebKU0GB6zhMUdVP1b+A
index e7e06a274..b27c2c2bc 100644
Binary files a/descriptors/1/W/3ebKU0GB6zhMUdVP1b+A and b/descriptors/1/W/3ebKU0GB6zhMUdVP1b+A differ
diff --git a/descriptors/1/W/oHvshtXLek5m48kI4qYQ b/descriptors/1/W/oHvshtXLek5m48kI4qYQ
index 5c4c726a9..fd6df2f3b 100644
Binary files a/descriptors/1/W/oHvshtXLek5m48kI4qYQ and b/descriptors/1/W/oHvshtXLek5m48kI4qYQ differ
diff --git a/descriptors/2/9/WQOCx02TdfYvA2zPFRVQ b/descriptors/2/9/WQOCx02TdfYvA2zPFRVQ
index 130b08d36..465b1e458 100644
Binary files a/descriptors/2/9/WQOCx02TdfYvA2zPFRVQ and b/descriptors/2/9/WQOCx02TdfYvA2zPFRVQ differ
diff --git a/descriptors/3/O/NJboKaggdJkamainZjsA b/descriptors/3/O/NJboKaggdJkamainZjsA
index f4dbd88a0..618b9cc22 100644
Binary files a/descriptors/3/O/NJboKaggdJkamainZjsA and b/descriptors/3/O/NJboKaggdJkamainZjsA differ
diff --git a/descriptors/4/B/qeb7Z8-vMA7Ua4+gfLXA b/descriptors/4/B/qeb7Z8-vMA7Ua4+gfLXA
index 5270f103a..6519928fb 100644
Binary files a/descriptors/4/B/qeb7Z8-vMA7Ua4+gfLXA and b/descriptors/4/B/qeb7Z8-vMA7Ua4+gfLXA differ
diff --git a/descriptors/5/S/JYW4u1Ss7g87mvPurwuQ b/descriptors/5/S/JYW4u1Ss7g87mvPurwuQ
index 2a1a5178a..7d299cce8 100644
Binary files a/descriptors/5/S/JYW4u1Ss7g87mvPurwuQ and b/descriptors/5/S/JYW4u1Ss7g87mvPurwuQ differ
diff --git a/descriptors/6/1/lB29Unf+MGop8ZfQpbxw b/descriptors/6/1/lB29Unf+MGop8ZfQpbxw
index d30687852..2b3a5a2dc 100644
Binary files a/descriptors/6/1/lB29Unf+MGop8ZfQpbxw and b/descriptors/6/1/lB29Unf+MGop8ZfQpbxw differ
diff --git a/descriptors/6/K/6EwWb4g1s5Dj7Oor06Vg b/descriptors/6/K/6EwWb4g1s5Dj7Oor06Vg
index df4d10e83..271275949 100644
Binary files a/descriptors/6/K/6EwWb4g1s5Dj7Oor06Vg and b/descriptors/6/K/6EwWb4g1s5Dj7Oor06Vg differ
diff --git a/descriptors/7/8/QsSJcxuDttqz7kaLKK9w b/descriptors/7/8/QsSJcxuDttqz7kaLKK9w
index fc62580f6..12cb2c8fe 100644
Binary files a/descriptors/7/8/QsSJcxuDttqz7kaLKK9w and b/descriptors/7/8/QsSJcxuDttqz7kaLKK9w differ
diff --git a/descriptors/8/B/YUUawcRPu8iqa0H4uRzA b/descriptors/8/B/YUUawcRPu8iqa0H4uRzA
index c10e58076..2e82bb6c6 100644
Binary files a/descriptors/8/B/YUUawcRPu8iqa0H4uRzA and b/descriptors/8/B/YUUawcRPu8iqa0H4uRzA differ
diff --git a/descriptors/8/T/vc7T6bnZ3UycLojYYsbQ b/descriptors/8/T/vc7T6bnZ3UycLojYYsbQ
index 18bfeb9ed..26aa7a52e 100644
Binary files a/descriptors/8/T/vc7T6bnZ3UycLojYYsbQ and b/descriptors/8/T/vc7T6bnZ3UycLojYYsbQ differ
diff --git a/descriptors/9/O/WWt-IuNrfC8yLC-ncXKQ b/descriptors/9/O/WWt-IuNrfC8yLC-ncXKQ
index 794dd1192..143d6c431 100644
Binary files a/descriptors/9/O/WWt-IuNrfC8yLC-ncXKQ and b/descriptors/9/O/WWt-IuNrfC8yLC-ncXKQ differ
diff --git a/descriptors/A/H/DD90x3SluOjSxkcV88ZA b/descriptors/A/H/DD90x3SluOjSxkcV88ZA
index 8bfd8d071..eb784fa17 100644
Binary files a/descriptors/A/H/DD90x3SluOjSxkcV88ZA and b/descriptors/A/H/DD90x3SluOjSxkcV88ZA differ
diff --git a/descriptors/A/N/Ljow2YPBWWbEcemFbdJg b/descriptors/A/N/Ljow2YPBWWbEcemFbdJg
index a603aeaad..968a06eea 100644
Binary files a/descriptors/A/N/Ljow2YPBWWbEcemFbdJg and b/descriptors/A/N/Ljow2YPBWWbEcemFbdJg differ
diff --git a/descriptors/B/1/aTEUuEOOiQctQ60relWw b/descriptors/B/1/aTEUuEOOiQctQ60relWw
index 0b53e831b..8155e6c56 100644
Binary files a/descriptors/B/1/aTEUuEOOiQctQ60relWw and b/descriptors/B/1/aTEUuEOOiQctQ60relWw differ
diff --git a/descriptors/B/E/r1vpxcSDgXhLhmvapg0g b/descriptors/B/E/r1vpxcSDgXhLhmvapg0g
index fed5a62e5..305ea9421 100644
Binary files a/descriptors/B/E/r1vpxcSDgXhLhmvapg0g and b/descriptors/B/E/r1vpxcSDgXhLhmvapg0g differ
diff --git a/descriptors/B/M/ypKt-svLtRmUKXHv+qBg b/descriptors/B/M/ypKt-svLtRmUKXHv+qBg
index 4bc8894ea..68a1c513c 100644
Binary files a/descriptors/B/M/ypKt-svLtRmUKXHv+qBg and b/descriptors/B/M/ypKt-svLtRmUKXHv+qBg differ
diff --git a/descriptors/C/M/EVCvnxX+dRHuyEr8qsYA b/descriptors/C/M/EVCvnxX+dRHuyEr8qsYA
index f8f64c013..54fef28c3 100644
Binary files a/descriptors/C/M/EVCvnxX+dRHuyEr8qsYA and b/descriptors/C/M/EVCvnxX+dRHuyEr8qsYA differ
diff --git a/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w b/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w
index 674d785c6..848327df2 100644
Binary files a/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w and b/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w differ
diff --git a/descriptors/D/F/DOG571bO-z1teWt5gCnA b/descriptors/D/F/DOG571bO-z1teWt5gCnA
index aa48a758a..c12074052 100644
Binary files a/descriptors/D/F/DOG571bO-z1teWt5gCnA and b/descriptors/D/F/DOG571bO-z1teWt5gCnA differ
diff --git a/descriptors/D/Y/dbZm8qpxN30zrKzqw2hA b/descriptors/D/Y/dbZm8qpxN30zrKzqw2hA
index 3b3e3e7b2..5b505e535 100644
Binary files a/descriptors/D/Y/dbZm8qpxN30zrKzqw2hA and b/descriptors/D/Y/dbZm8qpxN30zrKzqw2hA differ
diff --git a/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA b/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA
index b66cb8246..4d3c83275 100644
Binary files a/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA and b/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA differ
diff --git a/descriptors/F/7/OnTTKZgQfCrYvSHdurDA b/descriptors/F/7/OnTTKZgQfCrYvSHdurDA
index 134581452..1020a7421 100644
Binary files a/descriptors/F/7/OnTTKZgQfCrYvSHdurDA and b/descriptors/F/7/OnTTKZgQfCrYvSHdurDA differ
diff --git a/descriptors/F/B/LksworQTmdGDsbuGgK3w b/descriptors/F/B/LksworQTmdGDsbuGgK3w
index e1c0470c6..68de7031a 100644
Binary files a/descriptors/F/B/LksworQTmdGDsbuGgK3w and b/descriptors/F/B/LksworQTmdGDsbuGgK3w differ
diff --git a/descriptors/F/V/02epmiUkatFxWCEUNOZQ b/descriptors/F/V/02epmiUkatFxWCEUNOZQ
index 656875fac..e1e9f84bf 100644
Binary files a/descriptors/F/V/02epmiUkatFxWCEUNOZQ and b/descriptors/F/V/02epmiUkatFxWCEUNOZQ differ
diff --git a/descriptors/F/W/LPVjCtHs4NygJFs5cb6w b/descriptors/F/W/LPVjCtHs4NygJFs5cb6w
index 2ba36de76..a09538d65 100644
Binary files a/descriptors/F/W/LPVjCtHs4NygJFs5cb6w and b/descriptors/F/W/LPVjCtHs4NygJFs5cb6w differ
diff --git a/descriptors/G/8/34PLS-AzpSCuX2cZHsqw b/descriptors/G/8/34PLS-AzpSCuX2cZHsqw
index 0f567a6fe..f7a077377 100644
Binary files a/descriptors/G/8/34PLS-AzpSCuX2cZHsqw and b/descriptors/G/8/34PLS-AzpSCuX2cZHsqw differ
diff --git a/descriptors/G/8/lMTRtTRfeOvS1-4DgeGA b/descriptors/G/8/lMTRtTRfeOvS1-4DgeGA
index 8e276d423..d73d9b5a0 100644
Binary files a/descriptors/G/8/lMTRtTRfeOvS1-4DgeGA and b/descriptors/G/8/lMTRtTRfeOvS1-4DgeGA differ
diff --git a/descriptors/G/G/Wqosy8fgWMr+iNneQiEw b/descriptors/G/G/Wqosy8fgWMr+iNneQiEw
index edd6e9032..7c33c50f5 100644
Binary files a/descriptors/G/G/Wqosy8fgWMr+iNneQiEw and b/descriptors/G/G/Wqosy8fgWMr+iNneQiEw differ
diff --git a/descriptors/G/V/fdJGuZf5fNFLqtugqT-w b/descriptors/G/V/fdJGuZf5fNFLqtugqT-w
index bd6106c63..71df487b1 100644
Binary files a/descriptors/G/V/fdJGuZf5fNFLqtugqT-w and b/descriptors/G/V/fdJGuZf5fNFLqtugqT-w differ
diff --git a/descriptors/G/Z/oRUELJnE8E9xjfb7zVYw b/descriptors/G/Z/oRUELJnE8E9xjfb7zVYw
index ab9395ce1..5d3c3bf06 100644
Binary files a/descriptors/G/Z/oRUELJnE8E9xjfb7zVYw and b/descriptors/G/Z/oRUELJnE8E9xjfb7zVYw differ
diff --git a/descriptors/H/K/L8qxzlGe3nApAEb0XDmw b/descriptors/H/K/L8qxzlGe3nApAEb0XDmw
index 908d79d1c..3ecfd2d5a 100644
Binary files a/descriptors/H/K/L8qxzlGe3nApAEb0XDmw and b/descriptors/H/K/L8qxzlGe3nApAEb0XDmw differ
diff --git a/descriptors/I/J/x2xVUc9W5MxogGELRmsw b/descriptors/I/J/x2xVUc9W5MxogGELRmsw
index 7fb4d781c..65caf98ab 100644
Binary files a/descriptors/I/J/x2xVUc9W5MxogGELRmsw and b/descriptors/I/J/x2xVUc9W5MxogGELRmsw differ
diff --git a/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ b/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ
index b56ce8b28..c24110412 100644
Binary files a/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ and b/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ differ
diff --git a/descriptors/L/2/ctw2MM3ESsh4daIK1sWg b/descriptors/L/2/ctw2MM3ESsh4daIK1sWg
index f9be88670..81a1a0281 100644
Binary files a/descriptors/L/2/ctw2MM3ESsh4daIK1sWg and b/descriptors/L/2/ctw2MM3ESsh4daIK1sWg differ
diff --git a/descriptors/M/-/WxZaFDk-ceeWbfrdktlw b/descriptors/M/-/WxZaFDk-ceeWbfrdktlw
index caf047125..e1b40d048 100644
Binary files a/descriptors/M/-/WxZaFDk-ceeWbfrdktlw and b/descriptors/M/-/WxZaFDk-ceeWbfrdktlw differ
diff --git a/descriptors/M/0/6Pk8EaJbsABUqPovsNjA b/descriptors/M/0/6Pk8EaJbsABUqPovsNjA
index eefdb3596..ea682d1b0 100644
Binary files a/descriptors/M/0/6Pk8EaJbsABUqPovsNjA and b/descriptors/M/0/6Pk8EaJbsABUqPovsNjA differ
diff --git a/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA b/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA
index ffaaf3689..6f91777ea 100644
Binary files a/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA and b/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA differ
diff --git a/descriptors/M/E/Nh3ZTPCAW0NKAreDA58A b/descriptors/M/E/Nh3ZTPCAW0NKAreDA58A
index 8f4fbd47a..d4c0a2849 100644
Binary files a/descriptors/M/E/Nh3ZTPCAW0NKAreDA58A and b/descriptors/M/E/Nh3ZTPCAW0NKAreDA58A differ
diff --git a/descriptors/M/H/UP+q5Whq-hBCfNUVgmmA b/descriptors/M/H/UP+q5Whq-hBCfNUVgmmA
index aee39a03b..317273fb1 100644
Binary files a/descriptors/M/H/UP+q5Whq-hBCfNUVgmmA and b/descriptors/M/H/UP+q5Whq-hBCfNUVgmmA differ
diff --git a/descriptors/N/E/ZqP6aKgWYU4JMqYQSlXw b/descriptors/N/E/ZqP6aKgWYU4JMqYQSlXw
index 4b53d828c..83f4d1dcc 100644
Binary files a/descriptors/N/E/ZqP6aKgWYU4JMqYQSlXw and b/descriptors/N/E/ZqP6aKgWYU4JMqYQSlXw differ
diff --git a/descriptors/N/K/1wJmCAkdhUBMG4W9U26Q b/descriptors/N/K/1wJmCAkdhUBMG4W9U26Q
index 359919942..dabb163fc 100644
Binary files a/descriptors/N/K/1wJmCAkdhUBMG4W9U26Q and b/descriptors/N/K/1wJmCAkdhUBMG4W9U26Q differ
diff --git a/descriptors/N/L/M8tl-UJDn9hJ5n0JYiUQ b/descriptors/N/L/M8tl-UJDn9hJ5n0JYiUQ
index 4b1bd0c74..e49ed5637 100644
Binary files a/descriptors/N/L/M8tl-UJDn9hJ5n0JYiUQ and b/descriptors/N/L/M8tl-UJDn9hJ5n0JYiUQ differ
diff --git a/descriptors/O/-/Qj50sQunXyprLIPjDWuw b/descriptors/O/-/Qj50sQunXyprLIPjDWuw
index 8d724b9ad..0f4b22c43 100644
Binary files a/descriptors/O/-/Qj50sQunXyprLIPjDWuw and b/descriptors/O/-/Qj50sQunXyprLIPjDWuw differ
diff --git a/descriptors/O/9/TxGIyEkOt8LOdakmWGng b/descriptors/O/9/TxGIyEkOt8LOdakmWGng
index 69d99c2a2..2e7fba4ce 100644
Binary files a/descriptors/O/9/TxGIyEkOt8LOdakmWGng and b/descriptors/O/9/TxGIyEkOt8LOdakmWGng differ
diff --git a/descriptors/O/C/QrLkTA4pksM1hZjh2fmQ b/descriptors/O/C/QrLkTA4pksM1hZjh2fmQ
index 2c66607d0..df5e514b4 100644
Binary files a/descriptors/O/C/QrLkTA4pksM1hZjh2fmQ and b/descriptors/O/C/QrLkTA4pksM1hZjh2fmQ differ
diff --git a/descriptors/O/O/mS81z7ltTtSlHSFUSNuw b/descriptors/O/O/mS81z7ltTtSlHSFUSNuw
index fdf1be4c9..f7304b735 100644
Binary files a/descriptors/O/O/mS81z7ltTtSlHSFUSNuw and b/descriptors/O/O/mS81z7ltTtSlHSFUSNuw differ
diff --git a/descriptors/O/P/hsy4XuaUYG7s+p327kdw b/descriptors/O/P/hsy4XuaUYG7s+p327kdw
index f49ac2c79..444525f97 100644
Binary files a/descriptors/O/P/hsy4XuaUYG7s+p327kdw and b/descriptors/O/P/hsy4XuaUYG7s+p327kdw differ
diff --git a/descriptors/P/F/CRQ81A3lfcHvSs9jQKkw b/descriptors/P/F/CRQ81A3lfcHvSs9jQKkw
index 956e13bad..9a72cdcb3 100644
Binary files a/descriptors/P/F/CRQ81A3lfcHvSs9jQKkw and b/descriptors/P/F/CRQ81A3lfcHvSs9jQKkw differ
diff --git a/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ b/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ
index faf07be10..bcf4f9dd8 100644
Binary files a/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ and b/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ differ
diff --git a/descriptors/P/W/v4WcSXImGyjLmuu+otdw b/descriptors/P/W/v4WcSXImGyjLmuu+otdw
index 73545adc3..134173df1 100644
Binary files a/descriptors/P/W/v4WcSXImGyjLmuu+otdw and b/descriptors/P/W/v4WcSXImGyjLmuu+otdw differ
diff --git a/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng b/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng
index 7ae45507b..29646ee30 100644
Binary files a/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng and b/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng differ
diff --git a/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw b/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw
index e1ff379c4..cf8753625 100644
Binary files a/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw and b/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw differ
diff --git a/descriptors/R/4/r6yGx50e8PvtGI2kYcVA b/descriptors/R/4/r6yGx50e8PvtGI2kYcVA
index 1ff0476e0..325274d83 100644
Binary files a/descriptors/R/4/r6yGx50e8PvtGI2kYcVA and b/descriptors/R/4/r6yGx50e8PvtGI2kYcVA differ
diff --git a/descriptors/R/J/XynComHevEUzJVBqwqBw b/descriptors/R/J/XynComHevEUzJVBqwqBw
index 73693127a..a3def0986 100644
Binary files a/descriptors/R/J/XynComHevEUzJVBqwqBw and b/descriptors/R/J/XynComHevEUzJVBqwqBw differ
diff --git a/descriptors/R/Z/B7iBRy42UrH9XZFVHxqQ b/descriptors/R/Z/B7iBRy42UrH9XZFVHxqQ
index 4a1f664eb..7f2a96b60 100644
Binary files a/descriptors/R/Z/B7iBRy42UrH9XZFVHxqQ and b/descriptors/R/Z/B7iBRy42UrH9XZFVHxqQ differ
diff --git a/descriptors/S/5/GDvbx5K37txRsFozM6Dw b/descriptors/S/5/GDvbx5K37txRsFozM6Dw
index 14eb4845d..2a5e64c30 100644
Binary files a/descriptors/S/5/GDvbx5K37txRsFozM6Dw and b/descriptors/S/5/GDvbx5K37txRsFozM6Dw differ
diff --git a/descriptors/S/O/uB88R0MDvju5O8vP9R2g b/descriptors/S/O/uB88R0MDvju5O8vP9R2g
index 51810efcc..304fb5d13 100644
Binary files a/descriptors/S/O/uB88R0MDvju5O8vP9R2g and b/descriptors/S/O/uB88R0MDvju5O8vP9R2g differ
diff --git a/descriptors/T/M/LNFLDuHMpqMgpKcW670A b/descriptors/T/M/LNFLDuHMpqMgpKcW670A
index 183b1023f..0716aca4a 100644
Binary files a/descriptors/T/M/LNFLDuHMpqMgpKcW670A and b/descriptors/T/M/LNFLDuHMpqMgpKcW670A differ
diff --git a/descriptors/T/T/tO3jR81njv31WRpZ7b3w b/descriptors/T/T/tO3jR81njv31WRpZ7b3w
index 8692ebff4..9105173b3 100644
Binary files a/descriptors/T/T/tO3jR81njv31WRpZ7b3w and b/descriptors/T/T/tO3jR81njv31WRpZ7b3w differ
diff --git a/descriptors/T/U/tCn8347JaERiSFirOQkQ b/descriptors/T/U/tCn8347JaERiSFirOQkQ
index 552ce5c71..8a0a29441 100644
Binary files a/descriptors/T/U/tCn8347JaERiSFirOQkQ and b/descriptors/T/U/tCn8347JaERiSFirOQkQ differ
diff --git a/descriptors/T/Y/GYEZMyZYKnQDpBqG-ZsQ b/descriptors/T/Y/GYEZMyZYKnQDpBqG-ZsQ
index 6441f536a..2d7dff9c4 100644
Binary files a/descriptors/T/Y/GYEZMyZYKnQDpBqG-ZsQ and b/descriptors/T/Y/GYEZMyZYKnQDpBqG-ZsQ differ
diff --git a/descriptors/U/D/HkBpwSQ2rDsnrVbWT7Ig b/descriptors/U/D/HkBpwSQ2rDsnrVbWT7Ig
index 036001567..8e65c92e2 100644
Binary files a/descriptors/U/D/HkBpwSQ2rDsnrVbWT7Ig and b/descriptors/U/D/HkBpwSQ2rDsnrVbWT7Ig differ
diff --git a/descriptors/U/F/lOcPYujFNfed0+VaP6pQ b/descriptors/U/F/lOcPYujFNfed0+VaP6pQ
index 7784d1f68..da830a72b 100644
Binary files a/descriptors/U/F/lOcPYujFNfed0+VaP6pQ and b/descriptors/U/F/lOcPYujFNfed0+VaP6pQ differ
diff --git a/descriptors/U/M/GOkWye9ioWEVXJE38j3A b/descriptors/U/M/GOkWye9ioWEVXJE38j3A
index 86e286311..a5680ce16 100644
Binary files a/descriptors/U/M/GOkWye9ioWEVXJE38j3A and b/descriptors/U/M/GOkWye9ioWEVXJE38j3A differ
diff --git a/descriptors/U/T/sy7Fttx0RT+dXnidigIg b/descriptors/U/T/sy7Fttx0RT+dXnidigIg
index 3d064a2a1..8e1eca226 100644
Binary files a/descriptors/U/T/sy7Fttx0RT+dXnidigIg and b/descriptors/U/T/sy7Fttx0RT+dXnidigIg differ
diff --git a/descriptors/V/D/k1Sxb8RF0516043ylCfA b/descriptors/V/D/k1Sxb8RF0516043ylCfA
index 3a90f6ab4..89efb7896 100644
Binary files a/descriptors/V/D/k1Sxb8RF0516043ylCfA and b/descriptors/V/D/k1Sxb8RF0516043ylCfA differ
diff --git a/descriptors/V/W/lD6qBTbqlkVqPSgCnx4Q b/descriptors/V/W/lD6qBTbqlkVqPSgCnx4Q
index ea5253a6b..04484acce 100644
Binary files a/descriptors/V/W/lD6qBTbqlkVqPSgCnx4Q and b/descriptors/V/W/lD6qBTbqlkVqPSgCnx4Q differ
diff --git a/descriptors/W/V/grsubfc-REqTpvf8epEg b/descriptors/W/V/grsubfc-REqTpvf8epEg
index 7d1d3b4d4..7ebf26c5c 100644
Binary files a/descriptors/W/V/grsubfc-REqTpvf8epEg and b/descriptors/W/V/grsubfc-REqTpvf8epEg differ
diff --git a/descriptors/W/W/VuUIL017QJptZ8nk+oCQ b/descriptors/W/W/VuUIL017QJptZ8nk+oCQ
index f5ecc76fd..7066ad7e3 100644
Binary files a/descriptors/W/W/VuUIL017QJptZ8nk+oCQ and b/descriptors/W/W/VuUIL017QJptZ8nk+oCQ differ
diff --git a/descriptors/X/K/dIL95Dr61miaEd3wrNUQ b/descriptors/X/K/dIL95Dr61miaEd3wrNUQ
index 2d0201a98..37c59eaa2 100644
Binary files a/descriptors/X/K/dIL95Dr61miaEd3wrNUQ and b/descriptors/X/K/dIL95Dr61miaEd3wrNUQ differ
diff --git a/descriptors/X/K/rcP7Yr7J6y6gKxcrtYjQ b/descriptors/X/K/rcP7Yr7J6y6gKxcrtYjQ
index a2a3f21ad..320827085 100644
Binary files a/descriptors/X/K/rcP7Yr7J6y6gKxcrtYjQ and b/descriptors/X/K/rcP7Yr7J6y6gKxcrtYjQ differ
diff --git a/descriptors/X/P/6FuSnMkagyPUTmQNikpA b/descriptors/X/P/6FuSnMkagyPUTmQNikpA
index 3caaf3f2c..7dfb12508 100644
Binary files a/descriptors/X/P/6FuSnMkagyPUTmQNikpA and b/descriptors/X/P/6FuSnMkagyPUTmQNikpA differ
diff --git a/descriptors/Y/H/ePCrZ0GYbMW9q694m-BA b/descriptors/Y/H/ePCrZ0GYbMW9q694m-BA
index 5f3077ef9..77dc69156 100644
Binary files a/descriptors/Y/H/ePCrZ0GYbMW9q694m-BA and b/descriptors/Y/H/ePCrZ0GYbMW9q694m-BA differ
diff --git a/descriptors/Y/J/-UeysKWW9IRX0jdHGODw b/descriptors/Y/J/-UeysKWW9IRX0jdHGODw
index ae1412122..db3d5b746 100644
Binary files a/descriptors/Y/J/-UeysKWW9IRX0jdHGODw and b/descriptors/Y/J/-UeysKWW9IRX0jdHGODw differ
diff --git a/descriptors/Z/C/CRBlXw6s4VbcKgA+wbGA b/descriptors/Z/C/CRBlXw6s4VbcKgA+wbGA
index de0dd1bff..6f74ae5f2 100644
Binary files a/descriptors/Z/C/CRBlXw6s4VbcKgA+wbGA and b/descriptors/Z/C/CRBlXw6s4VbcKgA+wbGA differ
diff --git a/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg b/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg
index 27b6ef819..11e4333c9 100644
Binary files a/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg and b/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg differ
diff --git a/descriptors/Z/D/2U667Gxe4khBp7gpHeRQ b/descriptors/Z/D/2U667Gxe4khBp7gpHeRQ
index b2c880ad3..61e4e866b 100644
Binary files a/descriptors/Z/D/2U667Gxe4khBp7gpHeRQ and b/descriptors/Z/D/2U667Gxe4khBp7gpHeRQ differ
diff --git a/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ b/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ
index 48585d854..5ac2b532a 100644
Binary files a/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ and b/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ differ
diff --git a/descriptors/Z/T/SVOJOBr-M5MAP66POlfw b/descriptors/Z/T/SVOJOBr-M5MAP66POlfw
index ea4561e46..39cc5d036 100644
Binary files a/descriptors/Z/T/SVOJOBr-M5MAP66POlfw and b/descriptors/Z/T/SVOJOBr-M5MAP66POlfw differ
diff --git a/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg b/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg
index dc0675c12..ea8fe015d 100644
Binary files a/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg and b/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg differ
diff --git a/files/+/C/g2a3sebfEXlPyYWt26yg b/files/+/C/g2a3sebfEXlPyYWt26yg
new file mode 100644
index 000000000..579b8b789
Binary files /dev/null and b/files/+/C/g2a3sebfEXlPyYWt26yg differ
diff --git a/files/+/S/wrM-jPxYLjp2miviyjqw b/files/+/S/wrM-jPxYLjp2miviyjqw
deleted file mode 100644
index d1f553416..000000000
Binary files a/files/+/S/wrM-jPxYLjp2miviyjqw and /dev/null differ
diff --git a/files/-/S/fPUUxHs8gKEv3uNPWwcQ b/files/-/S/fPUUxHs8gKEv3uNPWwcQ
deleted file mode 100644
index 817e6945b..000000000
Binary files a/files/-/S/fPUUxHs8gKEv3uNPWwcQ and /dev/null differ
diff --git a/files/0/D/c4xcvaV-0HkaEBVhH6Iw b/files/0/D/c4xcvaV-0HkaEBVhH6Iw
new file mode 100644
index 000000000..6fe680ccb
Binary files /dev/null and b/files/0/D/c4xcvaV-0HkaEBVhH6Iw differ
diff --git a/files/0/L/9HOkwE5rqsFa-63ipuYQ b/files/0/L/9HOkwE5rqsFa-63ipuYQ
index 6fbaa84df..4b186f768 100644
Binary files a/files/0/L/9HOkwE5rqsFa-63ipuYQ and b/files/0/L/9HOkwE5rqsFa-63ipuYQ differ
diff --git a/files/0/U/4Yn9mS5X4sOHo2dgkSig b/files/0/U/4Yn9mS5X4sOHo2dgkSig
deleted file mode 100644
index 97f1018c3..000000000
Binary files a/files/0/U/4Yn9mS5X4sOHo2dgkSig and /dev/null differ
diff --git a/files/1/0/+hiHIysDYM48zmI34lRw b/files/1/0/+hiHIysDYM48zmI34lRw
new file mode 100644
index 000000000..09d908864
Binary files /dev/null and b/files/1/0/+hiHIysDYM48zmI34lRw differ
diff --git a/files/3/G/7onX3zKzW1+5AI3uovcA b/files/3/G/7onX3zKzW1+5AI3uovcA
deleted file mode 100644
index 87f12887d..000000000
Binary files a/files/3/G/7onX3zKzW1+5AI3uovcA and /dev/null differ
diff --git a/files/3/N/189cBEl67bsBwjxv+UZQ b/files/3/N/189cBEl67bsBwjxv+UZQ
index 2e1ec6fe3..f70555071 100644
Binary files a/files/3/N/189cBEl67bsBwjxv+UZQ and b/files/3/N/189cBEl67bsBwjxv+UZQ differ
diff --git a/files/3/N/lGfxAV9mmjJhsR0w-USg b/files/3/N/lGfxAV9mmjJhsR0w-USg
deleted file mode 100644
index d50a55980..000000000
Binary files a/files/3/N/lGfxAV9mmjJhsR0w-USg and /dev/null differ
diff --git a/files/5/Y/eUrrXI9RYLYsfyKLq-lQ b/files/5/Y/eUrrXI9RYLYsfyKLq-lQ
index 41e4dcd48..9915b1322 100644
Binary files a/files/5/Y/eUrrXI9RYLYsfyKLq-lQ and b/files/5/Y/eUrrXI9RYLYsfyKLq-lQ differ
diff --git a/files/6/2/iJOfNy+gi3PoV9ghfYaw b/files/6/2/iJOfNy+gi3PoV9ghfYaw
index feee0adcf..b3edfcaa1 100644
Binary files a/files/6/2/iJOfNy+gi3PoV9ghfYaw and b/files/6/2/iJOfNy+gi3PoV9ghfYaw differ
diff --git a/files/6/3/33EtB9iNmyjfOy5bh7GA b/files/6/3/33EtB9iNmyjfOy5bh7GA
new file mode 100644
index 000000000..fe08a4e22
Binary files /dev/null and b/files/6/3/33EtB9iNmyjfOy5bh7GA differ
diff --git a/files/6/I/mJkwVXoXuXku5NPK0gDw b/files/6/I/mJkwVXoXuXku5NPK0gDw
new file mode 100644
index 000000000..a7c7ee2f7
Binary files /dev/null and b/files/6/I/mJkwVXoXuXku5NPK0gDw differ
diff --git a/files/6/S/wo2qIKIfj+gC5BFU4RBw b/files/6/S/wo2qIKIfj+gC5BFU4RBw
deleted file mode 100644
index 82f9c7e3d..000000000
Binary files a/files/6/S/wo2qIKIfj+gC5BFU4RBw and /dev/null differ
diff --git a/files/7/C/yHK5-SltR2h317oRNQHw b/files/7/C/yHK5-SltR2h317oRNQHw
index ce108c910..3b6320f16 100644
Binary files a/files/7/C/yHK5-SltR2h317oRNQHw and b/files/7/C/yHK5-SltR2h317oRNQHw differ
diff --git a/files/7/M/A6Raivf78FIgeGe0QjLA b/files/7/M/A6Raivf78FIgeGe0QjLA
index b1564e377..e665a52b2 100644
Binary files a/files/7/M/A6Raivf78FIgeGe0QjLA and b/files/7/M/A6Raivf78FIgeGe0QjLA differ
diff --git a/files/8/+/FXqGfHmMVHxXzaKr7eEw b/files/8/+/FXqGfHmMVHxXzaKr7eEw
new file mode 100644
index 000000000..6e2f68c3b
Binary files /dev/null and b/files/8/+/FXqGfHmMVHxXzaKr7eEw differ
diff --git a/files/9/T/jQp1nYU2-KIa6qtJTltg b/files/9/T/jQp1nYU2-KIa6qtJTltg
index 7de7fff6d..6c01653ad 100644
Binary files a/files/9/T/jQp1nYU2-KIa6qtJTltg and b/files/9/T/jQp1nYU2-KIa6qtJTltg differ
diff --git a/files/9/W/QcQbdUAKJ21d4foq29kg b/files/9/W/QcQbdUAKJ21d4foq29kg
index e2568702b..e28bc0d1a 100644
Binary files a/files/9/W/QcQbdUAKJ21d4foq29kg and b/files/9/W/QcQbdUAKJ21d4foq29kg differ
diff --git a/files/A/9/F78vJIqsKePNbeoikNMw b/files/A/9/F78vJIqsKePNbeoikNMw
index b8dd7b75f..94468c772 100644
Binary files a/files/A/9/F78vJIqsKePNbeoikNMw and b/files/A/9/F78vJIqsKePNbeoikNMw differ
diff --git a/files/A/W/jcBdW6XWLXWU6HUiz4cg b/files/A/W/jcBdW6XWLXWU6HUiz4cg
new file mode 100644
index 000000000..ee901c3d8
Binary files /dev/null and b/files/A/W/jcBdW6XWLXWU6HUiz4cg differ
diff --git a/files/B/G/d5hfp17i9wMvaCFNPjWA b/files/B/G/d5hfp17i9wMvaCFNPjWA
index e87fbc9b3..02693d938 100644
Binary files a/files/B/G/d5hfp17i9wMvaCFNPjWA and b/files/B/G/d5hfp17i9wMvaCFNPjWA differ
diff --git a/files/H/I/bhVfMo3KBot+GtS71f0g b/files/B/Q/9v0V5xgptRH5W-HxYXQA
similarity index 99%
rename from files/H/I/bhVfMo3KBot+GtS71f0g
rename to files/B/Q/9v0V5xgptRH5W-HxYXQA
index 77a065923..c4b3aa6de 100644
Binary files a/files/H/I/bhVfMo3KBot+GtS71f0g and b/files/B/Q/9v0V5xgptRH5W-HxYXQA differ
diff --git a/files/B/R/3nhfuAJJgy16qJMaMiVg b/files/B/R/3nhfuAJJgy16qJMaMiVg
deleted file mode 100644
index 654a1e0b4..000000000
Binary files a/files/B/R/3nhfuAJJgy16qJMaMiVg and /dev/null differ
diff --git a/files/C/1/TjAYjG1GMt-NM8W7TGEQ b/files/C/1/TjAYjG1GMt-NM8W7TGEQ
index c4e566336..1aaa581ab 100644
Binary files a/files/C/1/TjAYjG1GMt-NM8W7TGEQ and b/files/C/1/TjAYjG1GMt-NM8W7TGEQ differ
diff --git a/files/C/G/EKZKb7Y5DriOkHYBjv4w b/files/C/G/EKZKb7Y5DriOkHYBjv4w
index 0597a6ea5..0818a0b3a 100644
Binary files a/files/C/G/EKZKb7Y5DriOkHYBjv4w and b/files/C/G/EKZKb7Y5DriOkHYBjv4w differ
diff --git a/files/C/H/0ueg3mX6L42xbRGHXsKQ b/files/C/H/0ueg3mX6L42xbRGHXsKQ
index e2ebd698c..6ecf66cfc 100644
Binary files a/files/C/H/0ueg3mX6L42xbRGHXsKQ and b/files/C/H/0ueg3mX6L42xbRGHXsKQ differ
diff --git a/files/C/H/DkEkFK6VODfsDqP0JcDQ b/files/C/H/DkEkFK6VODfsDqP0JcDQ
new file mode 100644
index 000000000..a1be75d22
Binary files /dev/null and b/files/C/H/DkEkFK6VODfsDqP0JcDQ differ
diff --git a/files/C/Z/oatGE-a8FElByY-JNZTA b/files/C/Z/oatGE-a8FElByY-JNZTA
index b2941cfeb..8af9cdd6a 100644
Binary files a/files/C/Z/oatGE-a8FElByY-JNZTA and b/files/C/Z/oatGE-a8FElByY-JNZTA differ
diff --git a/files/E/A/5y4K1JFSyG4wgYzz8TLQ b/files/E/A/5y4K1JFSyG4wgYzz8TLQ
new file mode 100644
index 000000000..8e96f18cd
Binary files /dev/null and b/files/E/A/5y4K1JFSyG4wgYzz8TLQ differ
diff --git a/files/E/C/HRIK9tI80oiUR5Lod9CA b/files/E/C/HRIK9tI80oiUR5Lod9CA
new file mode 100644
index 000000000..9f060f179
Binary files /dev/null and b/files/E/C/HRIK9tI80oiUR5Lod9CA differ
diff --git a/files/E/O/jR4lsyNNefsOcS46Mrfw b/files/E/O/jR4lsyNNefsOcS46Mrfw
deleted file mode 100644
index 567a1d798..000000000
Binary files a/files/E/O/jR4lsyNNefsOcS46Mrfw and /dev/null differ
diff --git a/files/F/4/00qtf7-Jv+xbOKcWrZkQ b/files/F/4/00qtf7-Jv+xbOKcWrZkQ
deleted file mode 100644
index d2d861892..000000000
Binary files a/files/F/4/00qtf7-Jv+xbOKcWrZkQ and /dev/null differ
diff --git a/files/F/L/h7rV5G-uxoYXpwvMKQPw b/files/F/L/h7rV5G-uxoYXpwvMKQPw
index 4abfe1638..40533d8f1 100644
Binary files a/files/F/L/h7rV5G-uxoYXpwvMKQPw and b/files/F/L/h7rV5G-uxoYXpwvMKQPw differ
diff --git a/files/F/R/Nr60fjCnka+ugl60hKMA b/files/F/R/Nr60fjCnka+ugl60hKMA
index 3c1ce145c..f0583af9e 100644
Binary files a/files/F/R/Nr60fjCnka+ugl60hKMA and b/files/F/R/Nr60fjCnka+ugl60hKMA differ
diff --git a/files/F/T/sO7liIHny5L+hXiMGE2A b/files/F/T/sO7liIHny5L+hXiMGE2A
index 1c8de95ae..002a01911 100644
Binary files a/files/F/T/sO7liIHny5L+hXiMGE2A and b/files/F/T/sO7liIHny5L+hXiMGE2A differ
diff --git a/files/G/B/WhkFbHMk25MlJHmwaxAw b/files/G/B/WhkFbHMk25MlJHmwaxAw
index ee3ecbee6..b50243f5e 100644
Binary files a/files/G/B/WhkFbHMk25MlJHmwaxAw and b/files/G/B/WhkFbHMk25MlJHmwaxAw differ
diff --git a/files/G/H/BWcLBB6uT0pQpMAH3RRQ b/files/G/H/BWcLBB6uT0pQpMAH3RRQ
new file mode 100644
index 000000000..72f8c51eb
Binary files /dev/null and b/files/G/H/BWcLBB6uT0pQpMAH3RRQ differ
diff --git a/files/H/+/39sBGptoVkz7c8EGGviw b/files/H/+/39sBGptoVkz7c8EGGviw
index c19954940..fa2e32964 100644
Binary files a/files/H/+/39sBGptoVkz7c8EGGviw and b/files/H/+/39sBGptoVkz7c8EGGviw differ
diff --git a/files/H/H/uKVUdBXXQpIdcoFCH-ow b/files/H/H/uKVUdBXXQpIdcoFCH-ow
index e742e4fbf..1b92ce603 100644
Binary files a/files/H/H/uKVUdBXXQpIdcoFCH-ow and b/files/H/H/uKVUdBXXQpIdcoFCH-ow differ
diff --git a/files/H/S/reOyDAczMgwP3yT9N1lg b/files/H/S/reOyDAczMgwP3yT9N1lg
index 02690625e..51dea9a0f 100644
Binary files a/files/H/S/reOyDAczMgwP3yT9N1lg and b/files/H/S/reOyDAczMgwP3yT9N1lg differ
diff --git a/files/I/8/Vu64bZA+m7A6DuL+vCGw b/files/I/8/Vu64bZA+m7A6DuL+vCGw
new file mode 100644
index 000000000..f192cf0d3
Binary files /dev/null and b/files/I/8/Vu64bZA+m7A6DuL+vCGw differ
diff --git a/files/I/D/uMIMcEmycM2j9DoNEowg b/files/I/D/uMIMcEmycM2j9DoNEowg
index ebe23f861..60167e656 100644
Binary files a/files/I/D/uMIMcEmycM2j9DoNEowg and b/files/I/D/uMIMcEmycM2j9DoNEowg differ
diff --git a/files/I/P/FkYiZtK4wsxzTIksHwKA b/files/I/P/FkYiZtK4wsxzTIksHwKA
index 7f4bd89d3..68856d540 100644
Binary files a/files/I/P/FkYiZtK4wsxzTIksHwKA and b/files/I/P/FkYiZtK4wsxzTIksHwKA differ
diff --git a/files/I/R/N-akxKJ4qG3JpbMIkfHw b/files/I/R/N-akxKJ4qG3JpbMIkfHw
deleted file mode 100644
index d45d53d45..000000000
Binary files a/files/I/R/N-akxKJ4qG3JpbMIkfHw and /dev/null differ
diff --git a/files/I/U/mNzCc5FIJ0+je3BDZrQA b/files/I/U/mNzCc5FIJ0+je3BDZrQA
index 5ada6a456..4fad513e7 100644
Binary files a/files/I/U/mNzCc5FIJ0+je3BDZrQA and b/files/I/U/mNzCc5FIJ0+je3BDZrQA differ
diff --git a/files/J/1/PxuL9jO1x9efWzIN4yzQ b/files/J/1/PxuL9jO1x9efWzIN4yzQ
index 107253844..e8859269a 100644
Binary files a/files/J/1/PxuL9jO1x9efWzIN4yzQ and b/files/J/1/PxuL9jO1x9efWzIN4yzQ differ
diff --git a/files/J/1/pIAusvx9ulfkRypatz7w b/files/J/1/pIAusvx9ulfkRypatz7w
index 6d771cd63..ed7944375 100644
Binary files a/files/J/1/pIAusvx9ulfkRypatz7w and b/files/J/1/pIAusvx9ulfkRypatz7w differ
diff --git a/files/K/6/RadTpGbsN53dcFDzRaKw b/files/K/6/RadTpGbsN53dcFDzRaKw
index 4263456e3..0b77505aa 100644
Binary files a/files/K/6/RadTpGbsN53dcFDzRaKw and b/files/K/6/RadTpGbsN53dcFDzRaKw differ
diff --git a/files/K/A/0rd0+hMAxzMuWlnRSDNQ b/files/K/A/0rd0+hMAxzMuWlnRSDNQ
deleted file mode 100644
index d962a5b28..000000000
Binary files a/files/K/A/0rd0+hMAxzMuWlnRSDNQ and /dev/null differ
diff --git a/files/K/N/XIQZRWGjpP+60G8tfIgA b/files/K/N/XIQZRWGjpP+60G8tfIgA
index 22ff60344..c14d42e19 100644
Binary files a/files/K/N/XIQZRWGjpP+60G8tfIgA and b/files/K/N/XIQZRWGjpP+60G8tfIgA differ
diff --git a/files/L/A/7DBcp2x0vPSDjVUNAPGA b/files/L/A/7DBcp2x0vPSDjVUNAPGA
index 56326b1b0..98aef7394 100644
Binary files a/files/L/A/7DBcp2x0vPSDjVUNAPGA and b/files/L/A/7DBcp2x0vPSDjVUNAPGA differ
diff --git a/files/L/H/+BvI9Cb5JRnGPBvCZVag b/files/L/H/+BvI9Cb5JRnGPBvCZVag
deleted file mode 100644
index ee074c0ae..000000000
Binary files a/files/L/H/+BvI9Cb5JRnGPBvCZVag and /dev/null differ
diff --git a/files/L/R/mpyD0GfaS1PVeeNy+4sQ b/files/L/R/mpyD0GfaS1PVeeNy+4sQ
new file mode 100644
index 000000000..f89c04da8
Binary files /dev/null and b/files/L/R/mpyD0GfaS1PVeeNy+4sQ differ
diff --git a/files/L/S/UVFAwHwOSyilMG-1NP4Q b/files/L/S/UVFAwHwOSyilMG-1NP4Q
index f647bf323..152d7ae5e 100644
Binary files a/files/L/S/UVFAwHwOSyilMG-1NP4Q and b/files/L/S/UVFAwHwOSyilMG-1NP4Q differ
diff --git a/files/L/Y/qmgdZg29J7SrwADUiP0g b/files/L/Y/qmgdZg29J7SrwADUiP0g
index add4f0d76..e7b499542 100644
Binary files a/files/L/Y/qmgdZg29J7SrwADUiP0g and b/files/L/Y/qmgdZg29J7SrwADUiP0g differ
diff --git a/files/L/Z/uplcU1zTlxA9g7KlMXWA b/files/L/Z/uplcU1zTlxA9g7KlMXWA
index 8af524bb5..e20630351 100644
Binary files a/files/L/Z/uplcU1zTlxA9g7KlMXWA and b/files/L/Z/uplcU1zTlxA9g7KlMXWA differ
diff --git a/files/E/F/KdmjGq6qickWkArjluNw b/files/M/7/rdozEZzj-PthoRSY4JcA
similarity index 92%
rename from files/E/F/KdmjGq6qickWkArjluNw
rename to files/M/7/rdozEZzj-PthoRSY4JcA
index 31a227e99..082b09cbb 100644
Binary files a/files/E/F/KdmjGq6qickWkArjluNw and b/files/M/7/rdozEZzj-PthoRSY4JcA differ
diff --git a/files/M/Z/b4WaiPm4Z9PEqA6ERiPg b/files/M/Z/b4WaiPm4Z9PEqA6ERiPg
new file mode 100644
index 000000000..f4d8400cd
Binary files /dev/null and b/files/M/Z/b4WaiPm4Z9PEqA6ERiPg differ
diff --git a/files/N/G/Bu9RhhlA6ZBmtfjHOxLA b/files/N/G/Bu9RhhlA6ZBmtfjHOxLA
index 9f762aad0..90112da0d 100644
Binary files a/files/N/G/Bu9RhhlA6ZBmtfjHOxLA and b/files/N/G/Bu9RhhlA6ZBmtfjHOxLA differ
diff --git a/files/O/2/2qXsgSqpvUPWeJ+XC29w b/files/O/2/2qXsgSqpvUPWeJ+XC29w
deleted file mode 100644
index b44d64517..000000000
Binary files a/files/O/2/2qXsgSqpvUPWeJ+XC29w and /dev/null differ
diff --git a/files/O/8/vowPMh9yAEIXSvYoIvaw b/files/O/8/vowPMh9yAEIXSvYoIvaw
index 84fc76e7f..b07fa21ed 100644
Binary files a/files/O/8/vowPMh9yAEIXSvYoIvaw and b/files/O/8/vowPMh9yAEIXSvYoIvaw differ
diff --git a/files/O/A/XI++5GhKIiCn8Jcl2KBA b/files/O/A/XI++5GhKIiCn8Jcl2KBA
new file mode 100644
index 000000000..5b6c9b3f2
Binary files /dev/null and b/files/O/A/XI++5GhKIiCn8Jcl2KBA differ
diff --git a/files/O/A/w+HMCfrM3onL3P0s0czA b/files/O/A/w+HMCfrM3onL3P0s0czA
new file mode 100644
index 000000000..92f0ea617
Binary files /dev/null and b/files/O/A/w+HMCfrM3onL3P0s0czA differ
diff --git a/files/O/B/ogu6C00YHQWUHCf0yvOg b/files/O/B/ogu6C00YHQWUHCf0yvOg
deleted file mode 100644
index 1aa47a6f5..000000000
Binary files a/files/O/B/ogu6C00YHQWUHCf0yvOg and /dev/null differ
diff --git a/files/O/K/NmOmNO3p5h7L1Cv6QCyw b/files/O/K/NmOmNO3p5h7L1Cv6QCyw
index c0137061a..14d25ef3e 100644
Binary files a/files/O/K/NmOmNO3p5h7L1Cv6QCyw and b/files/O/K/NmOmNO3p5h7L1Cv6QCyw differ
diff --git a/files/O/L/2VVoPbca2+iXf34L6GpA b/files/O/L/2VVoPbca2+iXf34L6GpA
deleted file mode 100644
index 945041abd..000000000
Binary files a/files/O/L/2VVoPbca2+iXf34L6GpA and /dev/null differ
diff --git a/files/O/O/48JtGkrMgoqz9nAQYAsw b/files/O/O/48JtGkrMgoqz9nAQYAsw
new file mode 100644
index 000000000..75adc5d04
Binary files /dev/null and b/files/O/O/48JtGkrMgoqz9nAQYAsw differ
diff --git a/files/O/P/VKUMgyryHg5qnxCn-h0g b/files/O/P/VKUMgyryHg5qnxCn-h0g
index 54f6d9b78..0a7f8a5e2 100644
Binary files a/files/O/P/VKUMgyryHg5qnxCn-h0g and b/files/O/P/VKUMgyryHg5qnxCn-h0g differ
diff --git a/files/P/5/Q1Mg1pUTynL4Cz3fTr4A b/files/P/5/Q1Mg1pUTynL4Cz3fTr4A
new file mode 100644
index 000000000..2cd1dfde7
Binary files /dev/null and b/files/P/5/Q1Mg1pUTynL4Cz3fTr4A differ
diff --git a/files/P/B/UOjks0Q18083dxQr-8NA b/files/P/B/UOjks0Q18083dxQr-8NA
index abd8e12c9..c34034962 100644
Binary files a/files/P/B/UOjks0Q18083dxQr-8NA and b/files/P/B/UOjks0Q18083dxQr-8NA differ
diff --git a/files/P/B/d7RfcmuxL951f4wUuOoA b/files/P/B/d7RfcmuxL951f4wUuOoA
index f2fb46379..4799602c1 100644
Binary files a/files/P/B/d7RfcmuxL951f4wUuOoA and b/files/P/B/d7RfcmuxL951f4wUuOoA differ
diff --git a/files/P/J/rJVITHBnpumHci6P1vSA b/files/P/J/rJVITHBnpumHci6P1vSA
deleted file mode 100644
index 148fa08e4..000000000
Binary files a/files/P/J/rJVITHBnpumHci6P1vSA and /dev/null differ
diff --git a/files/Q/1/b1TAFVoJn-yGcJRwSPmw b/files/Q/1/b1TAFVoJn-yGcJRwSPmw
deleted file mode 100644
index cd08e3006..000000000
Binary files a/files/Q/1/b1TAFVoJn-yGcJRwSPmw and /dev/null differ
diff --git a/files/Q/6/afD6rVJYJ2CYS6mlNirw b/files/Q/6/afD6rVJYJ2CYS6mlNirw
deleted file mode 100644
index aa940987e..000000000
Binary files a/files/Q/6/afD6rVJYJ2CYS6mlNirw and /dev/null differ
diff --git a/files/Q/P/1zVPXbyG0GXwyUHpBCXA b/files/Q/P/1zVPXbyG0GXwyUHpBCXA
index 949e45715..13e2055c4 100644
Binary files a/files/Q/P/1zVPXbyG0GXwyUHpBCXA and b/files/Q/P/1zVPXbyG0GXwyUHpBCXA differ
diff --git a/files/Q/X/yIErfdXKkF0qVVP2fzEg b/files/Q/X/yIErfdXKkF0qVVP2fzEg
index 7fad21383..c524d52cf 100644
Binary files a/files/Q/X/yIErfdXKkF0qVVP2fzEg and b/files/Q/X/yIErfdXKkF0qVVP2fzEg differ
diff --git a/files/R/1/AhKdr1gqaXCIasSPqx9w b/files/R/1/AhKdr1gqaXCIasSPqx9w
index 1d22ecd6a..09c8468a2 100644
Binary files a/files/R/1/AhKdr1gqaXCIasSPqx9w and b/files/R/1/AhKdr1gqaXCIasSPqx9w differ
diff --git a/files/R/A/KR1eHVIREC4chjjMsqPg b/files/R/A/KR1eHVIREC4chjjMsqPg
new file mode 100644
index 000000000..39bec76e1
Binary files /dev/null and b/files/R/A/KR1eHVIREC4chjjMsqPg differ
diff --git a/files/R/L/pPfuisuehb9UpjDVcVNw b/files/R/L/pPfuisuehb9UpjDVcVNw
index 92437aee5..3ec358491 100644
Binary files a/files/R/L/pPfuisuehb9UpjDVcVNw and b/files/R/L/pPfuisuehb9UpjDVcVNw differ
diff --git a/files/R/U/+w581b+tml-CmMzhLSVA b/files/R/U/+w581b+tml-CmMzhLSVA
deleted file mode 100644
index 15d834c7b..000000000
Binary files a/files/R/U/+w581b+tml-CmMzhLSVA and /dev/null differ
diff --git a/files/S/F/z8umFKxEe3ycnvV9iZxQ b/files/S/F/z8umFKxEe3ycnvV9iZxQ
index 76429d806..fadd7b41b 100644
Binary files a/files/S/F/z8umFKxEe3ycnvV9iZxQ and b/files/S/F/z8umFKxEe3ycnvV9iZxQ differ
diff --git a/files/S/P/jkH2RVu87lGknK2664ug b/files/S/P/jkH2RVu87lGknK2664ug
index 9e50f7383..272898fad 100644
Binary files a/files/S/P/jkH2RVu87lGknK2664ug and b/files/S/P/jkH2RVu87lGknK2664ug differ
diff --git a/files/T/M/e3GdXAojADhfJcNALpig b/files/T/M/e3GdXAojADhfJcNALpig
index e14594160..4bf094152 100644
Binary files a/files/T/M/e3GdXAojADhfJcNALpig and b/files/T/M/e3GdXAojADhfJcNALpig differ
diff --git a/files/U/B/YP5QXIhrYiwu-iJQjHfQ b/files/U/B/YP5QXIhrYiwu-iJQjHfQ
index f7313890d..bb7251175 100644
Binary files a/files/U/B/YP5QXIhrYiwu-iJQjHfQ and b/files/U/B/YP5QXIhrYiwu-iJQjHfQ differ
diff --git a/files/U/J/JwMkjE77AoI6w26d1sgA b/files/U/J/JwMkjE77AoI6w26d1sgA
index 4d0dcf421..4b4f47594 100644
Binary files a/files/U/J/JwMkjE77AoI6w26d1sgA and b/files/U/J/JwMkjE77AoI6w26d1sgA differ
diff --git a/files/U/L/tWKwtUMrty1YgiXYYdzA b/files/U/L/tWKwtUMrty1YgiXYYdzA
deleted file mode 100644
index 850a0f3e6..000000000
Binary files a/files/U/L/tWKwtUMrty1YgiXYYdzA and /dev/null differ
diff --git a/files/U/S/i1NlhHfwBNQ3cdZwVrcw b/files/U/S/i1NlhHfwBNQ3cdZwVrcw
new file mode 100644
index 000000000..d5e23ac09
Binary files /dev/null and b/files/U/S/i1NlhHfwBNQ3cdZwVrcw differ
diff --git a/files/U/X/eL8QOfoDNvlwFwZdUpgw b/files/U/X/eL8QOfoDNvlwFwZdUpgw
index 2d7b68920..f4f8ff2fb 100644
Binary files a/files/U/X/eL8QOfoDNvlwFwZdUpgw and b/files/U/X/eL8QOfoDNvlwFwZdUpgw differ
diff --git a/files/U/Y/XIjugypyySZ44Zu1YUuw b/files/U/Y/XIjugypyySZ44Zu1YUuw
index c0e2b71ca..7a546345b 100644
Binary files a/files/U/Y/XIjugypyySZ44Zu1YUuw and b/files/U/Y/XIjugypyySZ44Zu1YUuw differ
diff --git a/files/V/1/rwNpFLpluH8wiTsLoRDw b/files/V/1/rwNpFLpluH8wiTsLoRDw
deleted file mode 100644
index c0b7ccec5..000000000
Binary files a/files/V/1/rwNpFLpluH8wiTsLoRDw and /dev/null differ
diff --git a/files/V/5/gWkjyipX-y-so24GQuIA b/files/V/5/gWkjyipX-y-so24GQuIA
index 6185f8de3..121b05cc4 100644
Binary files a/files/V/5/gWkjyipX-y-so24GQuIA and b/files/V/5/gWkjyipX-y-so24GQuIA differ
diff --git a/files/V/6/UqfusinvnQSMYR8OJD4A b/files/V/6/UqfusinvnQSMYR8OJD4A
index 4941035d9..db73143e3 100644
Binary files a/files/V/6/UqfusinvnQSMYR8OJD4A and b/files/V/6/UqfusinvnQSMYR8OJD4A differ
diff --git a/files/V/R/fQN2fNNLMYGdBwZPYZRA b/files/V/R/fQN2fNNLMYGdBwZPYZRA
index ada68ba1b..649e9e7af 100644
Binary files a/files/V/R/fQN2fNNLMYGdBwZPYZRA and b/files/V/R/fQN2fNNLMYGdBwZPYZRA differ
diff --git a/files/W/A/6X48IDMa202CFrLH8K3w b/files/W/A/6X48IDMa202CFrLH8K3w
deleted file mode 100644
index dcffaac31..000000000
Binary files a/files/W/A/6X48IDMa202CFrLH8K3w and /dev/null differ
diff --git a/files/W/D/y0dw92pJOsRs8Uhm7t-Q b/files/W/D/y0dw92pJOsRs8Uhm7t-Q
index 1957ac81f..6bce5f30d 100644
Binary files a/files/W/D/y0dw92pJOsRs8Uhm7t-Q and b/files/W/D/y0dw92pJOsRs8Uhm7t-Q differ
diff --git a/files/W/F/ZJzNp-uASseMJ97d0h+Q b/files/W/F/ZJzNp-uASseMJ97d0h+Q
index 9d1f383d0..807cb6296 100644
Binary files a/files/W/F/ZJzNp-uASseMJ97d0h+Q and b/files/W/F/ZJzNp-uASseMJ97d0h+Q differ
diff --git a/files/W/O/pFkGLb8kpjlJqKkUdubA b/files/W/O/pFkGLb8kpjlJqKkUdubA
index 91d7d0a78..18c4057f3 100644
Binary files a/files/W/O/pFkGLb8kpjlJqKkUdubA and b/files/W/O/pFkGLb8kpjlJqKkUdubA differ
diff --git a/files/W/P/wwvQNDsJ7LohQrrG+lrQ b/files/W/P/wwvQNDsJ7LohQrrG+lrQ
index 2947eea42..3759c89b6 100644
Binary files a/files/W/P/wwvQNDsJ7LohQrrG+lrQ and b/files/W/P/wwvQNDsJ7LohQrrG+lrQ differ
diff --git a/files/X/B/NO6d0OnMKVuWhWSBzMlQ b/files/X/B/NO6d0OnMKVuWhWSBzMlQ
index 825f16022..387ea694a 100644
Binary files a/files/X/B/NO6d0OnMKVuWhWSBzMlQ and b/files/X/B/NO6d0OnMKVuWhWSBzMlQ differ
diff --git a/files/X/M/-ebQh8Xou1M-S+Jp2EjA b/files/X/M/-ebQh8Xou1M-S+Jp2EjA
index 88c47feb5..147a7075e 100644
Binary files a/files/X/M/-ebQh8Xou1M-S+Jp2EjA and b/files/X/M/-ebQh8Xou1M-S+Jp2EjA differ
diff --git a/files/X/O/gSrCA33RdWIu9vUT1pTA b/files/X/O/gSrCA33RdWIu9vUT1pTA
index 1d6a4724f..83862d4f5 100644
Binary files a/files/X/O/gSrCA33RdWIu9vUT1pTA and b/files/X/O/gSrCA33RdWIu9vUT1pTA differ
diff --git a/files/Y/M/TCImPV8jEc8p1nsNXOzQ b/files/Y/M/TCImPV8jEc8p1nsNXOzQ
new file mode 100644
index 000000000..09506f450
Binary files /dev/null and b/files/Y/M/TCImPV8jEc8p1nsNXOzQ differ
diff --git a/files/Y/M/ahAF9E4l0w2jgwtRIqlw b/files/Y/M/ahAF9E4l0w2jgwtRIqlw
new file mode 100644
index 000000000..f87b81cc6
Binary files /dev/null and b/files/Y/M/ahAF9E4l0w2jgwtRIqlw differ
diff --git a/files/Y/U/OnaMT-1MpJ8XyX3oKJmg b/files/Y/U/OnaMT-1MpJ8XyX3oKJmg
index abbc92466..883bd563e 100644
Binary files a/files/Y/U/OnaMT-1MpJ8XyX3oKJmg and b/files/Y/U/OnaMT-1MpJ8XyX3oKJmg differ
diff --git a/files/Z/J/9TkOxR+5mKlSS8EaZbKw b/files/Z/J/9TkOxR+5mKlSS8EaZbKw
index d7490be21..ffdb192e7 100644
Binary files a/files/Z/J/9TkOxR+5mKlSS8EaZbKw and b/files/Z/J/9TkOxR+5mKlSS8EaZbKw differ
diff --git a/files/Z/J/g9buXlFakahzpUEiOiHQ b/files/Z/J/g9buXlFakahzpUEiOiHQ
new file mode 100644
index 000000000..37f8cb19f
Binary files /dev/null and b/files/Z/J/g9buXlFakahzpUEiOiHQ differ
diff --git a/files/Z/N/aHvyZza9inzpBU6-BY7w b/files/Z/N/aHvyZza9inzpBU6-BY7w
deleted file mode 100644
index 4882cd3c6..000000000
Binary files a/files/Z/N/aHvyZza9inzpBU6-BY7w and /dev/null differ
diff --git a/files/Z/Y/anqhQGjjMdO1w6SkylxA b/files/Z/Y/anqhQGjjMdO1w6SkylxA
index b9869972e..bbe360460 100644
Binary files a/files/Z/Y/anqhQGjjMdO1w6SkylxA and b/files/Z/Y/anqhQGjjMdO1w6SkylxA differ
diff --git a/files/src-common-ecicharset.html b/files/src-common-ecicharset.html
index 9870120ac..07c0502d9 100644
--- a/files/src-common-ecicharset.html
+++ b/files/src-common-ecicharset.html
@@ -156,7 +156,7 @@
- ECICharset
-
+ - ISO/IEC 18004:2000 - 8.4.1 Extended Channel Interpretation (ECI) Mode
diff --git a/files/src-common-version.html b/files/src-common-version.html
index e60068f41..7cf65910c 100644
--- a/files/src-common-version.html
+++ b/files/src-common-version.html
@@ -156,7 +156,7 @@
- Version
-
+ - Version related tables and methods
diff --git a/files/src-data-hanzi.html b/files/src-data-hanzi.html
index 7219f8c23..224e34813 100644
--- a/files/src-data-hanzi.html
+++ b/files/src-data-hanzi.html
@@ -156,7 +156,7 @@
- Hanzi
- - Hanzi (simplified Chinese) mode, GBT18284-2000: double-byte characters from the GB2312/GB18030 character set
+ - Hanzi (simplified Chinese) mode, GBT18284-2000: 13-bit double-byte characters from the GB2312/GB18030 character set
diff --git a/files/src-data-kanji.html b/files/src-data-kanji.html
index 9fb898fee..9dc09a514 100644
--- a/files/src-data-kanji.html
+++ b/files/src-data-kanji.html
@@ -156,7 +156,7 @@
- Kanji
- - Kanji mode: double-byte characters from the Shift-JIS character set
+ - Kanji mode: 13-bit double-byte characters from the Shift-JIS character set
diff --git a/files/src-data-qrdata.html b/files/src-data-qrdata.html
index 9fc0befdd..ef0fab65a 100644
--- a/files/src-data-qrdata.html
+++ b/files/src-data-qrdata.html
@@ -156,7 +156,7 @@
- QRData
- - Processes the binary data and maps it on a matrix which is then being returned
+ - Processes the binary data and maps it on a QRMatrix which is then being returned
diff --git a/files/src-data-qrdatamodeabstract.html b/files/src-data-qrdatamodeabstract.html
index a27ddecdb..a835a4c85 100644
--- a/files/src-data-qrdatamodeabstract.html
+++ b/files/src-data-qrdatamodeabstract.html
@@ -156,7 +156,7 @@
- QRDataModeAbstract
-
+ - abstract methods for the several data modes
diff --git a/files/src-decoder-bitmatrix.html b/files/src-decoder-bitmatrix.html
index 0fdf436ae..4ec95fddd 100644
--- a/files/src-decoder-bitmatrix.html
+++ b/files/src-decoder-bitmatrix.html
@@ -165,8 +165,7 @@
- BitMatrix
- - Holds a numerical representation of the final QR Code;
-maps the ECC coded binary data and applies the mask pattern
+ - Extended QRMatrix to map read data from the Binarizer
diff --git a/files/src-decoder-decoderresult.html b/files/src-decoder-decoderresult.html
index ddf39dfa0..e3628d5b0 100644
--- a/files/src-decoder-decoderresult.html
+++ b/files/src-decoder-decoderresult.html
@@ -166,7 +166,7 @@
- DecoderResult
- Encapsulates the result of decoding a matrix of bits. This typically
-applies to 2D barcode formats. For now it contains the raw bytes obtained,
+applies to 2D barcode formats. For now, it contains the raw bytes obtained
as well as a String interpretation of those bytes, if applicable.
diff --git a/js/searchIndex.js b/js/searchIndex.js
index 53cfbfd9f..606e54d88 100644
--- a/js/searchIndex.js
+++ b/js/searchIndex.js
@@ -45,6 +45,11 @@ Search.appendIndex(
"name": "clear",
"summary": "Clears\u0020the\u0020buffer\u0020and\u0020resets\u0020the\u0020stats",
"url": "classes/chillerlan-QRCode-Common-BitBuffer.html#method_clear"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\BitBuffer\u003A\u003Arewind\u0028\u0029",
+ "name": "rewind",
+ "summary": "Resets\u0020the\u0020read\u002Dcounters",
+ "url": "classes/chillerlan-QRCode-Common-BitBuffer.html#method_rewind"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\BitBuffer\u003A\u003A\u0024buffer",
"name": "buffer",
@@ -138,7 +143,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ECICharset",
"name": "ECICharset",
- "summary": "",
+ "summary": "ISO\/IEC\u002018004\u003A2000\u0020\u002D\u00208.4.1\u0020Extended\u0020Channel\u0020Interpretation\u0020\u0028ECI\u0029\u0020Mode",
"url": "classes/chillerlan-QRCode-Common-ECICharset.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ECICharset\u003A\u003A__construct\u0028\u0029",
@@ -620,11 +625,21 @@ Search.appendIndex(
"name": "ReedSolomonDecoder",
"summary": "Implements\u0020Reed\u002DSolomon\u0020decoding,\u0020as\u0020the\u0020name\u0020implies.",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003A__construct\u0028\u0029",
+ "name": "__construct",
+ "summary": "ReedSolomonDecoder\u0020constructor",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#method___construct"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003Adecode\u0028\u0029",
"name": "decode",
"summary": "Error\u002Dcorrect\u0020and\u0020copy\u0020data\u0020blocks\u0020together\u0020into\u0020a\u0020stream\u0020of\u0020bytes",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#method_decode"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003AdeinterleaveRawBytes\u0028\u0029",
+ "name": "deinterleaveRawBytes",
+ "summary": "When\u0020QR\u0020Codes\u0020use\u0020multiple\u0020data\u0020blocks,\u0020they\u0020are\u0020actually\u0020interleaved.",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#method_deinterleaveRawBytes"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003AcorrectErrors\u0028\u0029",
"name": "correctErrors",
@@ -650,26 +665,51 @@ Search.appendIndex(
"name": "findErrorMagnitudes",
"summary": "",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#method_findErrorMagnitudes"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003A\u0024version",
+ "name": "version",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#property_version"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonDecoder\u003A\u003A\u0024eccLevel",
+ "name": "eccLevel",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonDecoder.html#property_eccLevel"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder",
"name": "ReedSolomonEncoder",
"summary": "ISO\/IEC\u002018004\u003A2000\u0020Section\u00208.5\u0020ff",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003A__construct\u0028\u0029",
+ "name": "__construct",
+ "summary": "ReedSolomonDecoder\u0020constructor",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#method___construct"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003AinterleaveEcBytes\u0028\u0029",
"name": "interleaveEcBytes",
"summary": "ECC\u0020interleaving",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#method_interleaveEcBytes"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003AgenerateEcBytes\u0028\u0029",
- "name": "generateEcBytes",
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003Aencode\u0028\u0029",
+ "name": "encode",
"summary": "",
- "url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#method_generateEcBytes"
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#method_encode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003Ainterleave\u0028\u0029",
"name": "interleave",
"summary": "",
"url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#method_interleave"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003A\u0024version",
+ "name": "version",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#property_version"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003A\u0024eccLevel",
+ "name": "eccLevel",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Common-ReedSolomonEncoder.html#property_eccLevel"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\ReedSolomonEncoder\u003A\u003A\u0024interleavedData",
"name": "interleavedData",
@@ -683,7 +723,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version",
"name": "Version",
- "summary": "",
+ "summary": "Version\u0020related\u0020tables\u0020and\u0020methods",
"url": "classes/chillerlan-QRCode-Common-Version.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003A__construct\u0028\u0029",
@@ -728,7 +768,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003AAUTO",
"name": "AUTO",
- "summary": "",
+ "summary": "Enable\u0020version\u0020auto\u0020detection",
"url": "classes/chillerlan-QRCode-Common-Version.html#constant_AUTO"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003AALIGNMENT_PATTERN",
@@ -743,12 +783,12 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003ARSBLOCKS",
"name": "RSBLOCKS",
- "summary": "ISO\/IEC\u002018004\u003A2000\u0020Tables\u002013\u002D22",
+ "summary": "ISO\/IEC\u002018004\u003A2000\u0020Tables\u002013\u002D22\u0020\u002D\u0020Error\u0020correction\u0020characteristics",
"url": "classes/chillerlan-QRCode-Common-Version.html#constant_RSBLOCKS"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003ATOTAL_CODEWORDS",
"name": "TOTAL_CODEWORDS",
- "summary": "",
+ "summary": "ISO\/IEC\u002018004\u003A2000\u0020Table\u00201\u0020\u002D\u0020Data\u0020capacity\u0020of\u0020all\u0020versions\u0020of\u0020QR\u0020Code",
"url": "classes/chillerlan-QRCode-Common-Version.html#constant_TOTAL_CODEWORDS"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\Version\u003A\u003A\u0024version",
@@ -788,7 +828,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\AlphaNum\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-AlphaNum.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Byte",
@@ -818,7 +858,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Byte\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-Byte.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\ECI",
@@ -858,7 +898,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\ECI\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-ECI.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\ECI\u003A\u003A\u0024encoding",
@@ -868,7 +908,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Hanzi",
"name": "Hanzi",
- "summary": "Hanzi\u0020\u0028simplified\u0020Chinese\u0029\u0020mode,\u0020GBT18284\u002D2000\u003A\u0020double\u002Dbyte\u0020characters\u0020from\u0020the\u0020GB2312\/GB18030\u0020character\u0020set",
+ "summary": "Hanzi\u0020\u0028simplified\u0020Chinese\u0029\u0020mode,\u0020GBT18284\u002D2000\u003A\u002013\u002Dbit\u0020double\u002Dbyte\u0020characters\u0020from\u0020the\u0020GB2312\/GB18030\u0020character\u0020set",
"url": "classes/chillerlan-QRCode-Data-Hanzi.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Hanzi\u003A\u003AgetCharCount\u0028\u0029",
@@ -905,15 +945,20 @@ Search.appendIndex(
"name": "ENCODING",
"summary": "",
"url": "classes/chillerlan-QRCode-Data-Hanzi.html#constant_ENCODING"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Data\\Hanzi\u003A\u003AGB2312_SUBSET",
+ "name": "GB2312_SUBSET",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Data-Hanzi.html#constant_GB2312_SUBSET"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Hanzi\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-Hanzi.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Kanji",
"name": "Kanji",
- "summary": "Kanji\u0020mode\u003A\u0020double\u002Dbyte\u0020characters\u0020from\u0020the\u0020Shift\u002DJIS\u0020character\u0020set",
+ "summary": "Kanji\u0020mode\u003A\u002013\u002Dbit\u0020double\u002Dbyte\u0020characters\u0020from\u0020the\u0020Shift\u002DJIS\u0020character\u0020set",
"url": "classes/chillerlan-QRCode-Data-Kanji.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Kanji\u003A\u003AgetCharCount\u0028\u0029",
@@ -953,7 +998,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Kanji\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-Kanji.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Number",
@@ -993,7 +1038,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\Number\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-Number.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRCodeDataException",
@@ -1003,7 +1048,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRData",
"name": "QRData",
- "summary": "Processes\u0020the\u0020binary\u0020data\u0020and\u0020maps\u0020it\u0020on\u0020a\u0020matrix\u0020which\u0020is\u0020then\u0020being\u0020returned",
+ "summary": "Processes\u0020the\u0020binary\u0020data\u0020and\u0020maps\u0020it\u0020on\u0020a\u0020QRMatrix\u0020which\u0020is\u0020then\u0020being\u0020returned",
"url": "classes/chillerlan-QRCode-Data-QRData.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRData\u003A\u003A__construct\u0028\u0029",
@@ -1078,7 +1123,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract",
"name": "QRDataModeAbstract",
- "summary": "",
+ "summary": "abstract\u0020methods\u0020for\u0020the\u0020several\u0020data\u0020modes",
"url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003A__construct\u0028\u0029",
@@ -1095,20 +1140,20 @@ Search.appendIndex(
"name": "getDataMode",
"summary": "returns\u0020the\u0020current\u0020data\u0020mode\u0020constant",
"url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html#method_getDataMode"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003AgetLengthBits\u0028\u0029",
- "name": "getLengthBits",
- "summary": "shortcut",
- "url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html#method_getLengthBits"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003AconvertEncoding\u0028\u0029",
"name": "convertEncoding",
"summary": "encoding\u0020conversion\u0020helper",
"url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html#method_convertEncoding"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003AgetLengthBits\u0028\u0029",
+ "name": "getLengthBits",
+ "summary": "shortcut",
+ "url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html#method_getLengthBits"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003A\u0024datamode",
"name": "datamode",
- "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Byte",
+ "summary": "the\u0020current\u0020data\u0020mode\u003A\u0020Num,\u0020Alphanum,\u0020Kanji,\u0020Hanzi,\u0020Byte",
"url": "classes/chillerlan-QRCode-Data-QRDataModeAbstract.html#property_datamode"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeAbstract\u003A\u003A\u0024data",
@@ -1130,6 +1175,11 @@ Search.appendIndex(
"name": "getLengthInBits",
"summary": "retruns\u0020the\u0020length\u0020in\u0020bits\u0020of\u0020the\u0020data\u0020string",
"url": "classes/chillerlan-QRCode-Data-QRDataModeInterface.html#method_getLengthInBits"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeInterface\u003A\u003AconvertEncoding\u0028\u0029",
+ "name": "convertEncoding",
+ "summary": "encoding\u0020conversion\u0020helper",
+ "url": "classes/chillerlan-QRCode-Data-QRDataModeInterface.html#method_convertEncoding"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRDataModeInterface\u003A\u003AvalidateString\u0028\u0029",
"name": "validateString",
@@ -1393,7 +1443,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Binarizer\u003A\u003AcalculateThresholdForBlock\u0028\u0029",
"name": "calculateThresholdForBlock",
- "summary": "For\u0020each\u0020block\u0020in\u0020the\u0020image,\u0020calculate\u0020the\u0020average\u0020black\u0020point\u0020using\u0020a\u00205x5\u0020grid\nof\u0020the\u0020blocks\u0020around\u0020it.\u0020Also\u0020handles\u0020the\u0020corner\u0020cases\u0020\u0028fractional\u0020blocks\u0020are\u0020computed\u0020based\non\u0020the\u0020last\u0020pixels\u0020in\u0020the\u0020row\/column\u0020which\u0020are\u0020also\u0020used\u0020in\u0020the\u0020previous\u0020block\u0029.",
+ "summary": "For\u0020each\u0020block\u0020in\u0020the\u0020image,\u0020calculate\u0020the\u0020average\u0020black\u0020point\u0020using\u0020a\u00205x5\u0020grid\nof\u0020the\u0020surrounding\u0020blocks.\u0020Also\u0020handles\u0020the\u0020corner\u0020cases\u0020\u0028fractional\u0020blocks\u0020are\u0020computed\u0020based\non\u0020the\u0020last\u0020pixels\u0020in\u0020the\u0020row\/column\u0020which\u0020are\u0020also\u0020used\u0020in\u0020the\u0020previous\u0020block\u0029.",
"url": "classes/chillerlan-QRCode-Decoder-Binarizer.html#method_calculateThresholdForBlock"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Binarizer\u003A\u003Acap\u0028\u0029",
@@ -1448,7 +1498,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix",
"name": "BitMatrix",
- "summary": "Holds\u0020a\u0020numerical\u0020representation\u0020of\u0020the\u0020final\u0020QR\u0020Code\u003B\nmaps\u0020the\u0020ECC\u0020coded\u0020binary\u0020data\u0020and\u0020applies\u0020the\u0020mask\u0020pattern",
+ "summary": "Extended\u0020QRMatrix\u0020to\u0020map\u0020read\u0020data\u0020from\u0020the\u0020Binarizer",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A__construct\u0028\u0029",
@@ -1468,7 +1518,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AreadCodewords\u0028\u0029",
"name": "readCodewords",
- "summary": "Reads\u0020the\u0020bits\u0020in\u0020the\u0020BitMatrix\u0020representing\u0020the\u0020finder\u0020pattern\u0020in\u0020the\ncorrect\u0020order\u0020in\u0020order\u0020to\u0020reconstruct\u0020the\u0020codewords\u0020bytes\u0020contained\u0020within\u0020the\nQR\u0020Code.",
+ "summary": "Reads\u0020the\u0020bits\u0020in\u0020the\u0020BitMatrix\u0020representing\u0020the\u0020finder\u0020pattern\u0020in\u0020the\ncorrect\u0020order\u0020in\u0020order\u0020to\u0020reconstruct\u0020the\u0020codewords\u0020bytes\u0020contained\u0020within\u0020the\nQR\u0020Code.\u0020Throws\u0020if\u0020the\u0020exact\u0020number\u0020of\u0020bytes\u0020expected\u0020is\u0020not\u0020read.",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_readCodewords"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AreadFormatInformation\u0028\u0029",
@@ -1483,7 +1533,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AdoDecodeFormatInformation\u0028\u0029",
"name": "doDecodeFormatInformation",
- "summary": "",
+ "summary": "Returns\u0020information\u0020about\u0020the\u0020format\u0020it\u0020specifies,\u0020or\u0020null\u0020if\u0020it\u0020doesn\u0027t\u0020seem\u0020to\u0020match\u0020any\u0020known\u0020pattern",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_doDecodeFormatInformation"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AreadVersion\u0028\u0029",
@@ -1493,7 +1543,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AdecodeVersionInformation\u0028\u0029",
"name": "decodeVersionInformation",
- "summary": "",
+ "summary": "Decodes\u0020the\u0020version\u0020information\u0020from\u0020the\u0020given\u0020bit\u0020sequence,\u0020returns\u0020null\u0020if\u0020no\u0020valid\u0020match\u0020is\u0020found.",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_decodeVersionInformation"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AuRShift\u0028\u0029",
@@ -1540,15 +1590,10 @@ Search.appendIndex(
"name": "decodeMatrix",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-Decoder.html#method_decodeMatrix"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003AgetDataBlocks\u0028\u0029",
- "name": "getDataBlocks",
- "summary": "When\u0020QR\u0020Codes\u0020use\u0020multiple\u0020data\u0020blocks,\u0020they\u0020are\u0020actually\u0020interleaved.",
- "url": "classes/chillerlan-QRCode-Decoder-Decoder.html#method_getDataBlocks"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003AdecodeBitStream\u0028\u0029",
"name": "decodeBitStream",
- "summary": "",
+ "summary": "Decode\u0020the\u0020contents\u0020of\u0020that\u0020stream\u0020of\u0020bytes",
"url": "classes/chillerlan-QRCode-Decoder-Decoder.html#method_decodeBitStream"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003A\u0024version",
@@ -1568,7 +1613,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult",
"name": "DecoderResult",
- "summary": "Encapsulates\u0020the\u0020result\u0020of\u0020decoding\u0020a\u0020matrix\u0020of\u0020bits.\u0020This\u0020typically\napplies\u0020to\u00202D\u0020barcode\u0020formats.\u0020For\u0020now\u0020it\u0020contains\u0020the\u0020raw\u0020bytes\u0020obtained,\nas\u0020well\u0020as\u0020a\u0020String\u0020interpretation\u0020of\u0020those\u0020bytes,\u0020if\u0020applicable.",
+ "summary": "Encapsulates\u0020the\u0020result\u0020of\u0020decoding\u0020a\u0020matrix\u0020of\u0020bits.\u0020This\u0020typically\napplies\u0020to\u00202D\u0020barcode\u0020formats.\u0020For\u0020now,\u0020it\u0020contains\u0020the\u0020raw\u0020bytes\u0020obtained\nas\u0020well\u0020as\u0020a\u0020String\u0020interpretation\u0020of\u0020those\u0020bytes,\u0020if\u0020applicable.",
"url": "classes/chillerlan-QRCode-Decoder-DecoderResult.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult\u003A\u003A__construct\u0028\u0029",
@@ -1600,11 +1645,6 @@ Search.appendIndex(
"name": "rawBytes",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-DecoderResult.html#property_rawBytes"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult\u003A\u003A\u0024data",
- "name": "data",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-DecoderResult.html#property_data"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult\u003A\u003A\u0024version",
"name": "version",
@@ -1620,6 +1660,11 @@ Search.appendIndex(
"name": "maskPattern",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-DecoderResult.html#property_maskPattern"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult\u003A\u003A\u0024data",
+ "name": "data",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Decoder-DecoderResult.html#property_data"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult\u003A\u003A\u0024structuredAppendParity",
"name": "structuredAppendParity",
@@ -1823,7 +1868,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\AlignmentPatternFinder\u003A\u003AhandlePossibleCenter\u0028\u0029",
"name": "handlePossibleCenter",
- "summary": "This\u0020is\u0020called\u0020when\u0020a\u0020horizontal\u0020scan\u0020finds\u0020a\u0020possible\u0020alignment\u0020pattern.\u0020It\u0020will\ncross\u0020check\u0020with\u0020a\u0020vertical\u0020scan,\u0020and\u0020if\u0020successful,\u0020will\u0020see\u0020if\u0020this\u0020pattern\u0020had\u0020been\nfound\u0020on\u0020a\u0020previous\u0020horizontal\u0020scan.\u0020If\u0020so,\u0020we\u0020consider\u0020it\u0020confirmed\u0020and\u0020conclude\u0020we\u0020have\nfound\u0020the\u0020alignment\u0020pattern.",
+ "summary": "This\u0020is\u0020called\u0020when\u0020a\u0020horizontal\u0020scan\u0020finds\u0020a\u0020possible\u0020alignment\u0020pattern.\u0020It\u0020will\ncross\u002Dcheck\u0020with\u0020a\u0020vertical\u0020scan,\u0020and\u0020if\u0020successful,\u0020will\u0020see\u0020if\u0020this\u0020pattern\u0020had\u0020been\nfound\u0020on\u0020a\u0020previous\u0020horizontal\u0020scan.\u0020If\u0020so,\u0020we\u0020consider\u0020it\u0020confirmed\u0020and\u0020conclude\u0020we\u0020have\nfound\u0020the\u0020alignment\u0020pattern.",
"url": "classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html#method_handlePossibleCenter"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\AlignmentPatternFinder\u003A\u003AcenterFromEnd\u0028\u0029",
@@ -2008,12 +2053,12 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003AcrossCheckHorizontal\u0028\u0029",
"name": "crossCheckHorizontal",
- "summary": "Like\u0020\u0023crossCheckVertical\u0028int,\u0020int,\u0020int,\u0020int\u0029,\u0020and\u0020in\u0020fact\u0020is\u0020basically\u0020identical,\nexcept\u0020it\u0020reads\u0020horizontally\u0020instead\u0020of\u0020vertically.\u0020This\u0020is\u0020used\u0020to\u0020cross\u002Dcross\ncheck\u0020a\u0020vertical\u0020cross\u0020check\u0020and\u0020locate\u0020the\u0020real\u0020center\u0020of\u0020the\u0020alignment\u0020pattern.",
+ "summary": "Like\u0020\u0023crossCheckVertical\u0028int,\u0020int,\u0020int,\u0020int\u0029,\u0020and\u0020in\u0020fact\u0020is\u0020basically\u0020identical,\nexcept\u0020it\u0020reads\u0020horizontally\u0020instead\u0020of\u0020vertically.\u0020This\u0020is\u0020used\u0020to\u0020cross\u002Dcross\ncheck\u0020a\u0020vertical\u0020cross\u002Dcheck\u0020and\u0020locate\u0020the\u0020real\u0020center\u0020of\u0020the\u0020alignment\u0020pattern.",
"url": "classes/chillerlan-QRCode-Detector-FinderPatternFinder.html#method_crossCheckHorizontal"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003AhandlePossibleCenter\u0028\u0029",
"name": "handlePossibleCenter",
- "summary": "This\u0020is\u0020called\u0020when\u0020a\u0020horizontal\u0020scan\u0020finds\u0020a\u0020possible\u0020alignment\u0020pattern.\u0020It\u0020will\ncross\u0020check\u0020with\u0020a\u0020vertical\u0020scan,\u0020and\u0020if\u0020successful,\u0020will,\u0020ah,\u0020cross\u002Dcross\u002Dcheck\nwith\u0020another\u0020horizontal\u0020scan.\u0020This\u0020is\u0020needed\u0020primarily\u0020to\u0020locate\u0020the\u0020real\u0020horizontal\ncenter\u0020of\u0020the\u0020pattern\u0020in\u0020cases\u0020of\u0020extreme\u0020skew.",
+ "summary": "This\u0020is\u0020called\u0020when\u0020a\u0020horizontal\u0020scan\u0020finds\u0020a\u0020possible\u0020alignment\u0020pattern.\u0020It\u0020will\ncross\u002Dcheck\u0020with\u0020a\u0020vertical\u0020scan,\u0020and\u0020if\u0020successful,\u0020will,\u0020ah,\u0020cross\u002Dcross\u002Dcheck\nwith\u0020another\u0020horizontal\u0020scan.\u0020This\u0020is\u0020needed\u0020primarily\u0020to\u0020locate\u0020the\u0020real\u0020horizontal\ncenter\u0020of\u0020the\u0020pattern\u0020in\u0020cases\u0020of\u0020extreme\u0020skew.",
"url": "classes/chillerlan-QRCode-Detector-FinderPatternFinder.html#method_handlePossibleCenter"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003AfindRowSkip\u0028\u0029",
@@ -2733,12 +2778,12 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\QRCode\u003A\u003AaddKanjiSegment\u0028\u0029",
"name": "addKanjiSegment",
- "summary": "Adds\u0020a\u0020Kanji\u0020data\u0020segment\u0020\u0028Japanese\u0020double\u002Dbyte\u0020characters,\u0020Shift\u002DJIS\u0029",
+ "summary": "Adds\u0020a\u0020Kanji\u0020data\u0020segment\u0020\u0028Japanese\u002013\u002Dbit\u0020double\u002Dbyte\u0020characters,\u0020Shift\u002DJIS\u0029",
"url": "classes/chillerlan-QRCode-QRCode.html#method_addKanjiSegment"
}, {
"fqsen": "\\chillerlan\\QRCode\\QRCode\u003A\u003AaddHanziSegment\u0028\u0029",
"name": "addHanziSegment",
- "summary": "Adds\u0020a\u0020Hanzi\u0020data\u0020segment\u0020\u0028simplified\u0020Chinese\u0020double\u002Dbyte\u0020characters,\u0020GB2312\/GB18030\u0029",
+ "summary": "Adds\u0020a\u0020Hanzi\u0020data\u0020segment\u0020\u0028simplified\u0020Chinese\u002013\u002Dbit\u0020double\u002Dbyte\u0020characters,\u0020GB2312\/GB18030\u0029",
"url": "classes/chillerlan-QRCode-QRCode.html#method_addHanziSegment"
}, {
"fqsen": "\\chillerlan\\QRCode\\QRCode\u003A\u003AaddByteSegment\u0028\u0029",
diff --git a/namespaces/chillerlan-qrcode-common.html b/namespaces/chillerlan-qrcode-common.html
index f04d084e4..90f8ded1e 100644
--- a/namespaces/chillerlan-qrcode-common.html
+++ b/namespaces/chillerlan-qrcode-common.html
@@ -114,7 +114,7 @@
- EccLevel
- This class encapsulates the four error correction levels defined by the QR code standard.
- ECICharset
-
+ - ISO/IEC 18004:2000 - 8.4.1 Extended Channel Interpretation (ECI) Mode
- GenericGFPoly
- Represents a polynomial whose coefficients are elements of a GF.
- GF256
@@ -130,7 +130,7 @@ ISO/IEC 18004:2000 Section 8.8.2 - Evaluation of masking results
- ReedSolomonEncoder
- ISO/IEC 18004:2000 Section 8.5 ff
- Version
-
+ - Version related tables and methods