in package
@@ -116,11 +119,13 @@
-
+
Holds a numerical representation of the final QR Code;
+maps the ECC coded binary data and applies the mask pattern
+
@@ -135,46 +140,158 @@
-
- $bits
+
+ IS_DARK
+
+ = 0b100000000000
+
+
+
+
+ M_ALIGNMENT
+
+ = 0b10000
+
+
+
+
+ M_DARKMODULE
+
+ = 0b1
+
+
+
+
+ M_DATA
+
+ = 0b10
+
+
+
+
+ M_FINDER
+
+ = 0b100
+
+
+
+
+ M_FINDER_DOT
+
+ = 0b10000000000
+
+
+
+
+ M_FORMAT
+
+ = 0b1000000
+
+
+
+
+ M_LOGO
+
+ = 0b1000000000
+
+
+
+
+ M_NULL
+
+ = 0b0
+
+
+
+
+ M_QUIETZONE
+
+ = 0b100000000
+
+
+
+
+ M_SEPARATOR
+
+ = 0b1000
+
+
+
+
+ M_TEST
+
+ = 0b11111111111
+
+
+
+
+ M_TIMING
+
+ = 0b100000
+
+
+
+
+ M_VERSION
+
+ = 0b10000000
+
+
+
+
+ DECODE_LOOKUP
+
+ = [0x0 => 0x5412, 0x1 => 0x5125, 0x2 => 0x5e7c, 0x3 => 0x5b4b, 0x4 => 0x45f9, 0x5 => 0x40ce, 0x6 => 0x4f97, 0x7 => 0x4aa0, 0x8 => 0x77c4, 0x9 => 0x72f3, 0xa => 0x7daa, 0xb => 0x789d, 0xc => 0x662f, 0xd => 0x6318, 0xe => 0x6c41, 0xf => 0x6976, 0x10 => 0x1689, 0x11 => 0x13be, 0x12 => 0x1ce7, 0x13 => 0x19d0, 0x14 => 0x762, 0x15 => 0x255, 0x16 => 0xd0c, 0x17 => 0x83b, 0x18 => 0x355f, 0x19 => 0x3068, 0x1a => 0x3f31, 0x1b => 0x3a06, 0x1c => 0x24b4, 0x1d => 0x2183, 0x1e => 0x2eda, 0x1f => 0x2bed]
+
+See ISO 18004:2006, Annex C, Table C.1
+
+
+ FORMAT_INFO_MASK_QR
+
+ = 0x5412
+
+
+
+
+ $eccLevel
+
+ : EccLevel |null
+
+the current ECC level
+
+
+ $maskPattern
+
+ : MaskPattern |null
+
+the used mask pattern, set via QRMatrix::mask()
+
+
+ $matrix
: array<string|int, mixed>
-
+the actual matrix data array
-
- $dimension
+
+ $moduleCount
: int
-
+the size (side length) of the matrix, including quiet zone (if created)
-
- $formatInfo
+
+ $version
- : FormatInformation |null
+ : Version |null
-
+a Version instance
$mirror
: bool
-
-
-
- $rowSize
-
- : int
-
-
-
-
- $version
-
- : Version |null
-
@@ -182,42 +299,77 @@
: mixed
-
+QRMatrix constructor.
- flip()
-
- : self
-
-Flips the given bit. 1 << (0xf9 & 0x1f)
-
-
- get()
+ check()
: bool
-Gets the requested bit, where true means black.
+Checks whether a module is true (dark) or false (light)
- getDimension()
+ checkType()
+
+ : bool
+
+Checks whether a module is of the given $M_TYPE
+
+
+ checkTypes()
+
+ : bool
+
+checks whether a module matches one of the given $M_TYPES
+
+
+ eccLevel()
+
+ : EccLevel |null
+
+Returns the current ECC level
+
+
+ flip()
+
+ : self
+
+Flips the value of the module
+
+
+ get()
: int
-
+Returns the value of the module at position [$x, $y]
- getFormatInfo()
+ initFunctionalPatterns()
- : FormatInformation |null
+ : self
-
+shortcut to initialize the functional patterns
- getVersion()
+ mask()
- : Version |null
+ : self
-
+Applies/reverses the mask pattern
+
+
+ maskPattern()
+
+ : MaskPattern |null
+
+Returns the current mask pattern
+
+
+ matrix()
+
+ : array<string|int, array<string|int, int>>|array<string|int, array<string|int, bool>>
+
+Returns the data matrix, returns a pure boolean representation if $boolean is set to true
mirror()
@@ -236,11 +388,46 @@ correct order in order to reconstruct the codewords bytes contained within the
QR Code.
- set()
+ set()
: self
- Sets the given bit to true.
+Sets the $M_TYPE value for the module at position [$x, $y]
+
+
+ setAlignmentPattern()
+
+ : self
+
+Draws the 5x5 alignment patterns
+
+
+ setDarkModule()
+
+ : self
+
+Sets the "dark module", that is always on the same position 1x1px away from the bottom left finder
+
+
+ setFinderPattern()
+
+ : self
+
+Draws the 7x7 finder patterns in the corners top left/right and bottom left
+
+
+ setFormatInfo()
+
+ : self
+
+Draws the format info along the finder patterns
+
+
+ setLogoSpace()
+
+ : self
+
+Clears a space of $width * $height in order to add a logo or text.
setMirror()
@@ -250,21 +437,56 @@ QR Code.
Prepare the parser for a mirrored operation.
- setRegion()
+ setQuietZone()
: self
-Sets a square region of the bit matrix to true.
+Draws the "quiet zone" of $size around the matrix
-
- buildFunctionPattern()
+
+ setSeparators()
: self
- See ISO 18004:2006 Annex E
+Draws the separator lines around the finder patterns
+
+
+ setTimingPattern()
+
+ : self
+
+Draws the timing pattern (h/v checkered line between the finder patterns)
+
+
+ setVersionNumber()
+
+ : self
+
+Draws the version information, 2x 3x6 pixel
+
+
+ size()
+
+ : int
+
+Returns the absoulute size of the matrix, including quiet zone (after setting it).
+
+
+ version()
+
+ : Version |null
+
+Returns the current version number
+
+
+ writeCodewords()
+
+ : self
+
+Maps the interleaved binary $data on the matrix
- copyBit()
+ copyVersionBit()
: int
@@ -280,7 +502,7 @@ QR Code.
doDecodeFormatInformation()
- : FormatInformation |null
+ : int|null
@@ -294,25 +516,17 @@ QR Code.
readFormatInformation()
- : FormatInformation
+ : self
Reads format information from one of its two locations within the QR Code.
readVersion()
- : Version
+ : self
Reads version information from one of its two locations within the QR Code.
-
- unmask()
-
- : void
-
-Implementations of this method reverse the data masking process applied to a QR Code and
-make its bits ready to read.
-
uRShift()
@@ -325,6 +539,450 @@ make its bits ready to read.
+
+
+
+
+ IS_DARK
+
+
+
+
+
+
+
+ public
+ int
+ IS_DARK
+ = 0b100000000000
+
+
+
+
+
+
+
+
+
+
+ M_ALIGNMENT
+
+
+
+
+
+
+
+ public
+ int
+ M_ALIGNMENT
+ = 0b10000
+
+
+
+
+
+
+
+
+
+
+ M_DARKMODULE
+
+
+
+
+
+
+
+ public
+ int
+ M_DARKMODULE
+ = 0b1
+
+
+
+
+
+
+
+
+
+
+ M_DATA
+
+
+
+
+
+
+
+ public
+ int
+ M_DATA
+ = 0b10
+
+
+
+
+
+
+
+
+
+
+ M_FINDER
+
+
+
+
+
+
+
+ public
+ int
+ M_FINDER
+ = 0b100
+
+
+
+
+
+
+
+
+
+
+ M_FINDER_DOT
+
+
+
+
+
+
+
+ public
+ int
+ M_FINDER_DOT
+ = 0b10000000000
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ public
+ int
+ M_FORMAT
+ = 0b1000000
+
+
+
+
+
+
+
+
+
+
+ M_LOGO
+
+
+
+
+
+
+
+ public
+ int
+ M_LOGO
+ = 0b1000000000
+
+
+
+
+
+
+
+
+
+
+ M_NULL
+
+
+
+
+
+
+
+ public
+ int
+ M_NULL
+ = 0b0
+
+
+
+
+
+
+
+
+
+
+ M_QUIETZONE
+
+
+
+
+
+
+
+ public
+ int
+ M_QUIETZONE
+ = 0b100000000
+
+
+
+
+
+
+
+
+
+
+ M_SEPARATOR
+
+
+
+
+
+
+
+ public
+ int
+ M_SEPARATOR
+ = 0b1000
+
+
+
+
+
+
+
+
+
+
+ M_TEST
+
+
+
+
+
+
+
+ public
+ int
+ M_TEST
+ = 0b11111111111
+
+
+
+
+
+
+
+
+
+
+ M_TIMING
+
+
+
+
+
+
+
+ public
+ int
+ M_TIMING
+ = 0b100000
+
+
+
+
+
+
+
+
+
+
+ M_VERSION
+
+
+
+
+
+
+
+ public
+ int
+ M_VERSION
+ = 0b10000000
+
+
+
+
+
+
+
+
+
+
+ DECODE_LOOKUP
+
+
+
+
+
+ See ISO 18004:2006, Annex C, Table C.1
+
+
+ private
+ mixed
+ DECODE_LOOKUP
+ = [0x0 => 0x5412, 0x1 => 0x5125, 0x2 => 0x5e7c, 0x3 => 0x5b4b, 0x4 => 0x45f9, 0x5 => 0x40ce, 0x6 => 0x4f97, 0x7 => 0x4aa0, 0x8 => 0x77c4, 0x9 => 0x72f3, 0xa => 0x7daa, 0xb => 0x789d, 0xc => 0x662f, 0xd => 0x6318, 0xe => 0x6c41, 0xf => 0x6976, 0x10 => 0x1689, 0x11 => 0x13be, 0x12 => 0x1ce7, 0x13 => 0x19d0, 0x14 => 0x762, 0x15 => 0x255, 0x16 => 0xd0c, 0x17 => 0x83b, 0x18 => 0x355f, 0x19 => 0x3068, 0x1a => 0x3f31, 0x1b => 0x3a06, 0x1c => 0x24b4, 0x1d => 0x2183, 0x1e => 0x2eda, 0x1f => 0x2bed]
+
+
+
+ [data bits, sequence after masking]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ private
+ mixed
+ FORMAT_INFO_MASK_QR
+ = 0x5412
+
+
+
+
+
+
+
+
+
+
+
@@ -336,99 +994,166 @@ make its bits ready to read.
class="
phpdocumentor-element
-property
- -private
+ -protected
"
>
- the current ECC level
+
- private
- array<string|int, mixed>
- $bits
-
-
-
-
-
-
-
-
-
-
-
- $dimension
-
-
-
-
-
-
-
-
- private
- int
- $dimension
-
-
-
-
-
-
-
-
-
-
-
- $formatInfo
-
-
-
-
-
-
-
-
- private
- FormatInformation |null
- $formatInfo
+ protected
+ EccLevel |null
+ $eccLevel
= null
+
+
+
+
+
+
+ $maskPattern
+
+
+
+
+
+
+ the used mask pattern, set via QRMatrix::mask()
+
+
+ protected
+ MaskPattern |null
+ $maskPattern
+ = null
+
+
+
+
+
+
+
+
+
+ $matrix
+
+
+
+
+
+
+ the actual matrix data array
+
+
+ protected
+ array<string|int, mixed>
+ $matrix
+
+
+
+
+
+
+
+
+
+ $moduleCount
+
+
+
+
+
+
+ the size (side length) of the matrix, including quiet zone (if created)
+
+
+ protected
+ int
+ $moduleCount
+
+
+
+
+
+
+
+
+
+
+ $version
+
+
+
+
+
+
+ a Version instance
+
+
+ protected
+ Version |null
+ $version
+ = null
+
+
@@ -450,7 +1175,7 @@ make its bits ready to read.
@@ -467,74 +1192,6 @@ make its bits ready to read.
-
-
-
- $rowSize
-
-
-
-
-
-
-
-
- private
- int
- $rowSize
-
-
-
-
-
-
-
-
-
-
-
- $version
-
-
-
-
-
-
-
-
- private
- Version |null
- $version
- = null
-
-
-
-
-
-
-
@@ -556,11 +1213,12 @@ make its bits ready to read.
-
+ QRMatrix constructor.
+
public
__construct ( int $dimension ) : mixed
@@ -579,6 +1237,21 @@ make its bits ready to read.
+
+ Tags
+
+
+
+
+ noinspection
+
+
+
+ PhpMissingParentConstructorInspection
+
+
+
+
Return values
mixed
@@ -592,18 +1265,228 @@ make its bits ready to read.
-public
"
>
-
- flip()
-
+
+ check()
+
- Flips the given bit. 1 << (0xf9 & 0x1f)
+
Checks whether a module is true (dark) or false (light)
+
+
+ public
+ check ( int $x , int $y ) : bool
+
+
true => $value & 0x800 === 0x800
+false => $value & 0x800 === 0
+
+
+
Parameters
+
+
+ $x
+ : int
+
+
+
+
+
+
+ $y
+ : int
+
+
+
+
+
+
+
+
+
+
Return values
+
bool
+ —
+
+
+
+
+
+ checkType()
+
+
+
+
+ Checks whether a module is of the given $M_TYPE
+
+
+ public
+ checkType ( int $x , int $y , int $M_TYPE ) : bool
+
+ true => $value & $M_TYPE === $M_TYPE
+
+
+ Parameters
+
+
+ $x
+ : int
+
+
+
+
+
+
+ $y
+ : int
+
+
+
+
+
+
+ $M_TYPE
+ : int
+
+
+
+
+
+
+
+
+
+ Return values
+ bool
+ —
+
+
+
+
+
+ checkTypes()
+
+
+
+
+ checks whether a module matches one of the given $M_TYPES
+
+
+ public
+ checkTypes ( int $x , int $y , array<string|int, mixed> $M_TYPES ) : bool
+
+
+ Parameters
+
+
+ $x
+ : int
+
+
+
+
+
+
+ $y
+ : int
+
+
+
+
+
+
+ $M_TYPES
+ : array<string|int, mixed>
+
+
+
+
+
+
+
+
+
+ Return values
+ bool
+ —
+
+
+
+
+
+ eccLevel()
+
+
+
+
+ Returns the current ECC level
+
+
+ public
+ eccLevel ( ) : EccLevel |null
+
+
+
+
+
+ Return values
+ EccLevel |null
+ —
+
+
+
+
+
+ flip()
+
+
+
+
+ Flips the value of the module
public
@@ -617,8 +1500,7 @@ make its bits ready to read.
: int
- ; The horizontal component (i.e. which column)
-
+
@@ -626,8 +1508,7 @@ make its bits ready to read.
: int
- ; The vertical component (i.e. which row)
-
+
@@ -648,20 +1529,20 @@ make its bits ready to read.
>
get()
-
+
- Gets the requested bit, where true means black.
+ Returns the value of the module at position [$x, $y]
public
- get ( int $x , int $y ) : bool
+ get ( int $x , int $y ) : int
Parameters
@@ -671,8 +1552,7 @@ make its bits ready to read.
: int
- The horizontal component (i.e. which column)
-
+
@@ -680,85 +1560,16 @@ make its bits ready to read.
: int
- The vertical component (i.e. which row)
-
+
- Return values
- bool
- —
- value of given bit in matrix
-
-
-
-
-
-
- getDimension()
-
-
-
-
-
-
- public
- getDimension ( ) : int
-
-
-
-
-
Return values
int
—
- The dimension (width/height) of the matrix
-
-
-
-
-
-
- getFormatInfo()
-
-
-
-
-
-
- public
- getFormatInfo ( ) : FormatInformation |null
-
-
-
-
-
- Return values
- FormatInformation |null
- —
@@ -768,28 +1579,141 @@ make its bits ready to read.
-public
"
>
-
- getVersion()
-
+
+ initFunctionalPatterns()
+
-
+ shortcut to initialize the functional patterns
+
public
- getVersion ( ) : Version |null
+
initFunctionalPatterns ( ) : self
Return values
-
Version |null
+
self
+ —
+
+
+
+
+
+ mask()
+
+
+
+
+ Applies/reverses the mask pattern
+
+
+ public
+ mask ( ) : self
+
+ ISO/IEC 18004:2000 Section 8.8.1
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ maskPattern()
+
+
+
+
+ Returns the current mask pattern
+
+
+ public
+ maskPattern ( ) : MaskPattern |null
+
+
+
+
+
+ Return values
+ MaskPattern |null
+ —
+
+
+
+
+
+ matrix()
+
+
+
+
+ Returns the data matrix, returns a pure boolean representation if $boolean is set to true
+
+
+ public
+ matrix ( [ bool $boolean = false ] ) : array<string|int, array<string|int, int>>|array<string|int, array<string|int, bool>>
+
+
+ Parameters
+
+
+ $boolean
+ : bool
+ = false
+
+
+
+
+
+
+
+
+ Return values
+ array<string|int, array<string|int, int>>|array<string|int, array<string|int, bool>>
—
@@ -807,7 +1731,7 @@ make its bits ready to read.
@@ -840,7 +1764,7 @@ make its bits ready to read.
@@ -888,22 +1812,25 @@ QR Code.
>
set()
-
+
- Sets the given bit to true.
+ Sets the $M_TYPE value for the module at position [$x, $y]
public
- set ( int $x , int $y ) : self
+ set ( int $x , int $y , bool $value , int $M_TYPE ) : self
+
+ true => $M_TYPE | 0x800
+false => $M_TYPE
+
-
Parameters
@@ -911,8 +1838,7 @@ QR Code.
: int
- ; The horizontal component (i.e. which column)
-
+
@@ -920,8 +1846,23 @@ QR Code.
: int
- ; The vertical component (i.e. which row)
-
+
+
+
+
+ $value
+ : bool
+
+
+
+
+
+
+ $M_TYPE
+ : int
+
+
+
@@ -933,6 +1874,235 @@ QR Code.
—
+
+
+
+ setAlignmentPattern()
+
+
+
+
+ Draws the 5x5 alignment patterns
+
+
+ public
+ setAlignmentPattern ( ) : self
+
+ ISO/IEC 18004:2000 Section 7.3.5
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setDarkModule()
+
+
+
+
+ Sets the "dark module", that is always on the same position 1x1px away from the bottom left finder
+
+
+ public
+ setDarkModule ( ) : self
+
+ 4 * version + 9 or moduleCount - 8
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setFinderPattern()
+
+
+
+
+ Draws the 7x7 finder patterns in the corners top left/right and bottom left
+
+
+ public
+ setFinderPattern ( ) : self
+
+ ISO/IEC 18004:2000 Section 7.3.2
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setFormatInfo()
+
+
+
+
+ Draws the format info along the finder patterns
+
+
+ public
+ setFormatInfo ( ) : self
+
+ ISO/IEC 18004:2000 Section 8.9
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setLogoSpace()
+
+
+
+
+ Clears a space of $width * $height in order to add a logo or text.
+
+
+ public
+ setLogoSpace ( int $width , int $height [ , int $startX = null ] [ , int $startY = null ] ) : self
+
+
+ Parameters
+
+
+ $width
+ : int
+
+
+
+
+
+
+ $height
+ : int
+
+
+
+
+
+
+ $startX
+ : int
+ = null
+
+
+
+
+
+ $startY
+ : int
+ = null
+
+
+
+
+
+
+
+
+ Tags
+
+
+
+
+ codeCoverageIgnore
+
+
+
+
+
+
+ throws
+
+
+ QRCodeDataException
+
+
+
+
+
+ Return values
+ self
+ —
+
+
BitMatrix.php
:
- 232
+ 84
@@ -989,60 +2159,32 @@ mirror() method should be called.
-public
"
>
-
- setRegion()
-
+
+ setQuietZone()
+
- Sets a square region of the bit matrix to true.
+ Draws the "quiet zone" of $size around the matrix
public
- setRegion ( int $left , int $top , int $width , int $height ) : self
+ setQuietZone ( [ int $size = null ] ) : self
Parameters
- $left
+ $size
: int
-
+ = null
- ; The horizontal position to begin at (inclusive)
-
-
-
-
- $top
- : int
-
-
- ; The vertical position to begin at (inclusive)
-
-
-
-
- $width
- : int
-
-
- ; The width of the region
-
-
-
-
- $height
- : int
-
-
- ; The height of the region
-
+
@@ -1054,10 +2196,17 @@ mirror() method should be called.
+ codeCoverageIgnore
+
+
+
+
+
+
throws
- QRCodeDecoderException
+ QRCodeDataException
@@ -1072,28 +2221,212 @@ mirror() method should be called.
-
- buildFunctionPattern()
-
+
+ setSeparators()
+
- See ISO 18004:2006 Annex E
+ Draws the separator lines around the finder patterns
- private
- buildFunctionPattern ( ) : self
+ public
+ setSeparators ( ) : self
+
+ ISO/IEC 18004:2000 Section 7.3.3
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setTimingPattern()
+
+
+
+
+ Draws the timing pattern (h/v checkered line between the finder patterns)
+
+
+ public
+ setTimingPattern ( ) : self
+
+ ISO/IEC 18004:2000 Section 7.3.4
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ setVersionNumber()
+
+
+
+
+ Draws the version information, 2x 3x6 pixel
+
+
+ public
+ setVersionNumber ( ) : self
+
+ ISO/IEC 18004:2000 Section 8.10
+
+
+
+
+
+ Return values
+ self
+ —
+
+
+
+
+
+ size()
+
+
+
+
+ Returns the absoulute size of the matrix, including quiet zone (after setting it).
+
+
+ public
+ size ( ) : int
+
+ size = version * 4 + 17 [ + 2 * quietzone size]
+
+
+
+
+
+ Return values
+ int
+ —
+
+
+
+
+
+ version()
+
+
+
+
+ Returns the current version number
+
+
+ public
+ version ( ) : Version |null
+
+
+
+
+
+ Return values
+ Version |null
+ —
+
+
+
+
+
+ writeCodewords()
+
+
+
+
+ Maps the interleaved binary $data on the matrix
+
+
+ public
+ writeCodewords ( BitBuffer $bitBuffer ) : self
+
+
+ Parameters
+
+
+ $bitBuffer
+ : BitBuffer
+
+
+
+
+
+
+
Return values
@@ -1108,21 +2441,21 @@ mirror() method should be called.
-private
"
>
-
- copyBit()
-
+
+ copyVersionBit()
+
private
- copyBit ( int $i , int $j , int $versionBits ) : int
+ copyVersionBit ( int $i , int $j , int $versionBits ) : int
Parameters
@@ -1174,7 +2507,7 @@ mirror() method should be called.
@@ -1191,7 +2524,8 @@ mirror() method should be called.
: int
-
+
+
@@ -1216,14 +2550,14 @@ mirror() method should be called.
private
- doDecodeFormatInformation ( int $maskedFormatInfo1 , int $maskedFormatInfo2 ) : FormatInformation |null
+ doDecodeFormatInformation ( int $maskedFormatInfo1 , int $maskedFormatInfo2 ) : int|null
Parameters
@@ -1252,10 +2586,9 @@ to establish best match
Return values
- FormatInformation |null
+ int|null
—
- information about the format it specifies, or null
-if doesn't seem to match any known pattern
+ information about the format it specifies, or null if doesn't seem to match any known pattern
@@ -1273,7 +2606,7 @@ if doesn't seem to match any known pattern
@@ -1324,7 +2657,7 @@ if doesn't seem to match any known pattern
@@ -1332,7 +2665,7 @@ if doesn't seem to match any known pattern
private
- readFormatInformation ( ) : FormatInformation
+ readFormatInformation ( ) : self
@@ -1356,11 +2689,9 @@ the valid encoding of format information
Return values
- FormatInformation
+ self
—
- encapsulating the QR Code's format info
-
-
+
@@ -1384,7 +2715,7 @@ the valid encoding of format information
private
- readVersion ( ) : Version
+ readVersion ( ) : self
@@ -1417,43 +2748,7 @@ the valid encoding of version information
Return values
- Version
- —
- encapsulating the QR Code's version
-
-
-
-
-
-
- unmask()
-
-
-
-
- Implementations of this method reverse the data masking process applied to a QR Code and
-make its bits ready to read.
-
-
- private
- unmask ( ) : void
-
-
-
-
-
- Return values
- void
+ self
—
@@ -1471,7 +2766,7 @@ make its bits ready to read.
diff --git a/classes/chillerlan-QRCode-Decoder-Decoder.html b/classes/chillerlan-QRCode-Decoder-Decoder.html
index feefb92d0..20a6efb97 100644
--- a/classes/chillerlan-QRCode-Decoder-Decoder.html
+++ b/classes/chillerlan-QRCode-Decoder-Decoder.html
@@ -155,14 +155,14 @@ the QR Code from an image.
$eccLevel
- : EccLevel
+ : EccLevel |null
- $formatInfo
+ $maskPattern
- : FormatInformation |null
+ : MaskPattern |null
@@ -229,16 +229,16 @@ the QR Code from an image.
private
- EccLevel
+ EccLevel |null
$eccLevel
-
+ = null
@@ -254,24 +254,24 @@ the QR Code from an image.
-private
"
>
-
- $formatInfo
-
+
+ $maskPattern
+
private
- FormatInformation |null
- $formatInfo
+ MaskPattern |null
+ $maskPattern
= null
@@ -398,7 +398,7 @@ the QR Code from an image.
@@ -462,13 +462,13 @@ the QR Code from an image.
private
- decodeMatrix ( BitMatrix $bitMatrix ) : DecoderResult
+ decodeMatrix ( BitMatrix $matrix ) : DecoderResult
Parameters
- $bitMatrix
+ $matrix
: BitMatrix
diff --git a/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html b/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
index f83ffd727..e88285dab 100644
--- a/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
+++ b/classes/chillerlan-QRCode-Decoder-GDLuminanceSource.html
@@ -204,7 +204,7 @@ It does not support rotation.
- getMatrix()
+ getLuminances()
: array<string|int, mixed>
@@ -220,7 +220,7 @@ It does not support rotation.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
getWidth()
@@ -680,9 +680,9 @@ getMatrix() may never be called.
-public
"
>
-
- getMatrix()
-
+
+ getLuminances()
+
LuminanceSourceAbstract.php
@@ -696,7 +696,7 @@ getMatrix() may never be called.
public
- getMatrix ( ) : array<string|int, mixed>
+ getLuminances ( ) : array<string|int, mixed>
@@ -746,7 +746,7 @@ of the result.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
public
diff --git a/classes/chillerlan-QRCode-Decoder-IMagickLuminanceSource.html b/classes/chillerlan-QRCode-Decoder-IMagickLuminanceSource.html
index b7213e457..d08e3bb7c 100644
--- a/classes/chillerlan-QRCode-Decoder-IMagickLuminanceSource.html
+++ b/classes/chillerlan-QRCode-Decoder-IMagickLuminanceSource.html
@@ -204,7 +204,7 @@ It does not support rotation.
- getMatrix()
+ getLuminances()
: array<string|int, mixed>
@@ -220,7 +220,7 @@ It does not support rotation.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
getWidth()
@@ -670,9 +670,9 @@ getMatrix() may never be called.
-public
"
>
-
- getMatrix()
-
+
+ getLuminances()
+
LuminanceSourceAbstract.php
@@ -686,7 +686,7 @@ getMatrix() may never be called.
public
- getMatrix ( ) : array<string|int, mixed>
+ getLuminances ( ) : array<string|int, mixed>
@@ -736,7 +736,7 @@ of the result.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
public
diff --git a/classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html b/classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html
index 259135353..d68a63412 100644
--- a/classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html
+++ b/classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html
@@ -213,7 +213,7 @@ for other Readers in the chain.
- getMatrix()
+ getLuminances()
: array<string|int, mixed>
@@ -229,7 +229,7 @@ for other Readers in the chain.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
getWidth()
@@ -517,9 +517,9 @@ getMatrix() may never be called.
-public
"
>
-
- getMatrix()
-
+
+ getLuminances()
+
LuminanceSourceAbstract.php
@@ -533,7 +533,7 @@ getMatrix() may never be called.
public
- getMatrix ( ) : array<string|int, mixed>
+ getLuminances ( ) : array<string|int, mixed>
@@ -583,7 +583,7 @@ of the result.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
public
diff --git a/classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html b/classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html
index 1dd83b4ec..07b6f3bd0 100644
--- a/classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html
+++ b/classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html
@@ -153,7 +153,7 @@
- getMatrix()
+ getLuminances()
: array<string|int, mixed>
@@ -169,7 +169,7 @@
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
getWidth()
@@ -317,9 +317,9 @@ getMatrix() may never be called.
-public
"
>
-
- getMatrix()
-
+
+ getLuminances()
+
LuminanceSourceInterface.php
@@ -333,7 +333,7 @@ getMatrix() may never be called.
public
- getMatrix ( ) : array<string|int, mixed>
+ getLuminances ( ) : array<string|int, mixed>
@@ -370,7 +370,7 @@ of the result.
0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have
to bitwise and with 0xff for each value. It is preferable for implementations of this method
to only fetch this row rather than the whole image, since no 2D Readers may be installed and
-getMatrix() may never be called.
+getLuminances() may never be called.
public
diff --git a/classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html b/classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html
index ecf369f7b..2061c923f 100644
--- a/classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html
+++ b/classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html
@@ -159,7 +159,7 @@ some code.
- $bitMatrix
+ $matrix
: BitMatrix
@@ -247,9 +247,9 @@ found the alignment pattern.
-private
"
>
-
- $bitMatrix
-
+
+ $matrix
+
@@ -264,7 +264,7 @@ found the alignment pattern.
private
BitMatrix
- $bitMatrix
+ $matrix
@@ -368,13 +368,13 @@ found the alignment pattern.
public
- __construct ( BitMatrix $image , float $moduleSize ) : mixed
+ __construct ( BitMatrix $matrix , float $moduleSize ) : mixed
Parameters
- $image
+ $matrix
: BitMatrix
diff --git a/classes/chillerlan-QRCode-Detector-Detector.html b/classes/chillerlan-QRCode-Detector-Detector.html
index b28231708..0dd3b6e0f 100644
--- a/classes/chillerlan-QRCode-Detector-Detector.html
+++ b/classes/chillerlan-QRCode-Detector-Detector.html
@@ -153,7 +153,7 @@ is rotated or skewed, or partially obscured.
- $bitMatrix
+ $matrix
: BitMatrix
@@ -248,9 +248,9 @@ of another po$(another finder pattern center), and in the opposite direction too
-private
"
>
-
- $bitMatrix
-
+
+ $matrix
+
@@ -265,7 +265,7 @@ of another po$(another finder pattern center), and in the opposite direction too
private
BitMatrix
- $bitMatrix
+ $matrix
@@ -457,13 +457,13 @@ width of each, measuring along the axis between their centers.
private
- calculateModuleSizeOneWay ( FinderPattern $pattern , FinderPattern $otherPattern ) : float
+ calculateModuleSizeOneWay ( FinderPattern $a , FinderPattern $b ) : float
Parameters
- $pattern
+ $a
: FinderPattern
@@ -471,7 +471,7 @@ width of each, measuring along the axis between their centers.
- $otherPattern
+ $b
: FinderPattern
@@ -501,7 +501,7 @@ width of each, measuring along the axis between their centers.
@@ -510,13 +510,13 @@ of the finder patterns and estimated module size.
private
- computeDimension ( FinderPattern $topLeft , FinderPattern $topRight , FinderPattern $bottomLeft , float $moduleSize ) : int
+ computeDimension ( FinderPattern $nw , FinderPattern $ne , FinderPattern $sw , float $size ) : int
Parameters
- $topLeft
+ $nw
: FinderPattern
@@ -524,7 +524,7 @@ of the finder patterns and estimated module size.
- $topRight
+ $ne
: FinderPattern
@@ -532,7 +532,7 @@ of the finder patterns and estimated module size.
- $bottomLeft
+ $sw
: FinderPattern
@@ -540,7 +540,7 @@ of the finder patterns and estimated module size.
- $moduleSize
+ $size
: float
@@ -584,20 +584,20 @@ of the finder patterns and estimated module size.
private
- createTransform ( FinderPattern $topLeft , FinderPattern $topRight , FinderPattern $bottomLeft , int $dimension [ , AlignmentPattern $alignmentPattern = null ] ) : PerspectiveTransform
+ createTransform ( FinderPattern $nw , FinderPattern $ne , FinderPattern $sw , int $size [ , AlignmentPattern $ap = null ] ) : PerspectiveTransform
Parameters
- $topLeft
+ $nw
: FinderPattern
@@ -605,7 +605,7 @@ of the finder patterns and estimated module size.
- $topRight
+ $ne
: FinderPattern
@@ -613,7 +613,7 @@ of the finder patterns and estimated module size.
- $bottomLeft
+ $sw
: FinderPattern
@@ -621,7 +621,7 @@ of the finder patterns and estimated module size.
- $dimension
+ $size
: int
@@ -629,7 +629,7 @@ of the finder patterns and estimated module size.
- $alignmentPattern
+ $ap
: AlignmentPattern
= null
@@ -659,7 +659,7 @@ of the finder patterns and estimated module size.
@@ -734,7 +734,7 @@ guessed to contain it.
@@ -807,7 +807,7 @@ may be skewed or rotated.
diff --git a/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html b/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html
index 84b3c2792..4ff9fa1ea 100644
--- a/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html
+++ b/classes/chillerlan-QRCode-Detector-FinderPatternFinder.html
@@ -176,16 +176,16 @@ markers at three corners of a QR Code.
- $bitMatrix
+ $hasSkipped
- : BitMatrix
+ : bool
- $hasSkipped
+ $matrix
- : bool
+ : BitMatrix
@@ -437,40 +437,6 @@ and BC is less than AC, and the angle between BC and BA is less than 180 degrees
-property
-private
"
->
-
- $bitMatrix
-
-
-
-
-
-
-
-
- private
- BitMatrix
- $bitMatrix
-
-
-
-
-
-
-
-
-
-
$hasSkipped
@@ -498,6 +464,40 @@ and BC is less than AC, and the angle between BC and BA is less than 180 degrees
+
+
+
+ $matrix
+
+
+
+
+
+
+
+
+ private
+ BitMatrix
+ $matrix
+
+
+
+
+
+
+
+
public
- __construct ( BitMatrix $bitMatrix ) : mixed
+ __construct ( BitMatrix $matrix ) : mixed
Parameters
- $bitMatrix
+ $matrix
: BitMatrix
@@ -738,7 +738,7 @@ finder pattern to see if the same proportion is detected.
@@ -788,6 +788,21 @@ check a vertical cross check and locate the real center of the alignment pattern
+
+ Tags
+
+
+
+
+ noinspection
+
+
+
+
+
+
+
Return values
float|null
@@ -808,7 +823,7 @@ check a vertical cross check and locate the real center of the alignment pattern
@@ -861,6 +876,21 @@ observed in any reading state, based on the results of the horizontal scan
+
+ Tags
+
+
+
+
+ noinspection
+
+
+
+
+
+
+
Return values
float|null
@@ -883,7 +913,7 @@ observed in any reading state, based on the results of the horizontal scan
@@ -985,7 +1015,7 @@ observed in any reading state, based on the results of the horizontal scan
@@ -1193,7 +1223,7 @@ used by finder patterns to be considered a match
@@ -1267,7 +1297,7 @@ pattern center
@@ -1303,7 +1333,7 @@ candidates is "pretty similar"
@@ -1349,7 +1379,7 @@ and BC is less than AC, and the angle between BC and BA is less than 180 degrees
diff --git a/classes/chillerlan-QRCode-Detector-GridSampler.html b/classes/chillerlan-QRCode-Detector-GridSampler.html
index 09d93e1e5..3b1d7912c 100644
--- a/classes/chillerlan-QRCode-Detector-GridSampler.html
+++ b/classes/chillerlan-QRCode-Detector-GridSampler.html
@@ -116,7 +116,7 @@
@@ -202,7 +202,7 @@ the image's dimensions to see if the point are even within the image.
@@ -212,13 +212,13 @@ image space.
public
- sampleGrid ( BitMatrix $image , int $dimension , PerspectiveTransform $transform ) : BitMatrix
+ sampleGrid ( BitMatrix $matrix , int $dimension , PerspectiveTransform $transform ) : BitMatrix
Parameters
- $image
+ $matrix
: BitMatrix
@@ -284,7 +284,7 @@ defined by the "from" parameters
@@ -293,7 +293,7 @@ the image's dimensions to see if the point are even within the image.
private
- checkAndNudgePoints ( BitMatrix $bitMatrix , array<string|int, float> $points ) : void
+ checkAndNudgePoints ( BitMatrix $matrix , array<string|int, float> $points ) : void
This method will actually "nudge" the endpoints back onto the image if they are found to be
barely (less than 1 pixel) off the image. This accounts for imperfect detection of finder
@@ -305,7 +305,7 @@ to be within the image. Because the set of points are assumed to be linear, this
Parameters
- $bitMatrix
+ $matrix
: BitMatrix
diff --git a/classes/chillerlan-QRCodeTest-Data-QRMatrixTest.html b/classes/chillerlan-QRCodeTest-Data-QRMatrixTest.html
index 2e8906c6c..ed536f86e 100644
--- a/classes/chillerlan-QRCodeTest-Data-QRMatrixTest.html
+++ b/classes/chillerlan-QRCodeTest-Data-QRMatrixTest.html
@@ -448,7 +448,7 @@
@@ -481,7 +481,7 @@
@@ -580,7 +580,7 @@
@@ -639,7 +639,7 @@
@@ -698,7 +698,7 @@
@@ -757,7 +757,7 @@
@@ -816,7 +816,7 @@
@@ -849,7 +849,7 @@
@@ -882,7 +882,7 @@
@@ -915,7 +915,7 @@
@@ -948,7 +948,7 @@
@@ -1007,7 +1007,7 @@
@@ -1040,7 +1040,7 @@
@@ -1099,7 +1099,7 @@
@@ -1158,7 +1158,7 @@
@@ -1283,7 +1283,7 @@
diff --git a/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ b/descriptors/+/V/e7JUWAyUAJ6cdg6qkPAQ
index 86ec8f540..5fe402f60 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 bf0c1dc5d..e7eb4cbf3 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 c21d92114..6d993fd88 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 24315a72c..91d0bb25e 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 e64a2821f..64dc618f5 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 8d1fba90b..45f11ae53 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 014c53d4a..511029616 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 eacf33824..cd0daf368 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 2a70186f4..e48c88323 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 c10ac475a..3ce45e4cd 100644
Binary files a/descriptors/1/W/oHvshtXLek5m48kI4qYQ and b/descriptors/1/W/oHvshtXLek5m48kI4qYQ differ
diff --git a/descriptors/3/O/NJboKaggdJkamainZjsA b/descriptors/3/O/NJboKaggdJkamainZjsA
index d5b9a7a44..3386658d7 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 8f43df934..78b5dd1b4 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 888f43490..c0cc1803a 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 7dc042c53..c5dae7f70 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 99155e520..127fce154 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 7b7c255a4..68b1e5594 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 f5b059838..ae790b346 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 a79809f47..98eb62c97 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 b7867f03a..a78e43171 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 9778d022f..eefe21ca5 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 6fb11b27c..454fbf4c5 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 e066eabf9..34aab379e 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 d1d0d7f65..66108b2eb 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 470f31ad2..2d18988fb 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 8674c7586..a1c0d9d4d 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 9e4b273e4..b6d5e891c 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 e084fd021..db2807f4a 100644
Binary files a/descriptors/D/F/DOG571bO-z1teWt5gCnA and b/descriptors/D/F/DOG571bO-z1teWt5gCnA differ
diff --git a/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA b/descriptors/D/Y/k68AX6bKDcYhVlpLdDsA
index 44684c6a8..5b247ccac 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 6050079a5..ea3c07333 100644
Binary files a/descriptors/F/7/OnTTKZgQfCrYvSHdurDA and b/descriptors/F/7/OnTTKZgQfCrYvSHdurDA differ
diff --git a/descriptors/F/9/pXbPL7Yb0FBQxCQ3gJFw b/descriptors/F/9/pXbPL7Yb0FBQxCQ3gJFw
deleted file mode 100644
index 4140a4c85..000000000
Binary files a/descriptors/F/9/pXbPL7Yb0FBQxCQ3gJFw and /dev/null differ
diff --git a/descriptors/F/B/LksworQTmdGDsbuGgK3w b/descriptors/F/B/LksworQTmdGDsbuGgK3w
index c2857e7fc..f94335ccd 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 e3b8d5131..535822e89 100644
Binary files a/descriptors/F/V/02epmiUkatFxWCEUNOZQ and b/descriptors/F/V/02epmiUkatFxWCEUNOZQ differ
diff --git a/descriptors/F/W/W0teNcVy9jqdc46pQatg b/descriptors/F/W/W0teNcVy9jqdc46pQatg
index 7a24cecba..955c03ad1 100644
Binary files a/descriptors/F/W/W0teNcVy9jqdc46pQatg and b/descriptors/F/W/W0teNcVy9jqdc46pQatg differ
diff --git a/descriptors/G/8/34PLS-AzpSCuX2cZHsqw b/descriptors/G/8/34PLS-AzpSCuX2cZHsqw
index 98354f3f1..b1834cac7 100644
Binary files a/descriptors/G/8/34PLS-AzpSCuX2cZHsqw and b/descriptors/G/8/34PLS-AzpSCuX2cZHsqw differ
diff --git a/descriptors/G/G/Wqosy8fgWMr+iNneQiEw b/descriptors/G/G/Wqosy8fgWMr+iNneQiEw
index 1ba9a8475..2bbf27360 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 7cdbaaa52..3a5f98bf1 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 16f32d413..5a6e2fa26 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 b3fdc516e..a5e95157b 100644
Binary files a/descriptors/H/K/L8qxzlGe3nApAEb0XDmw and b/descriptors/H/K/L8qxzlGe3nApAEb0XDmw differ
diff --git a/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ b/descriptors/I/Y/McDk2MyGmf-EX5vHdJnQ
index 41959a2a8..7b3fd33be 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 6ddcf5bb4..5c6f348db 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 40d3547e0..906c4b04c 100644
Binary files a/descriptors/M/-/WxZaFDk-ceeWbfrdktlw and b/descriptors/M/-/WxZaFDk-ceeWbfrdktlw differ
diff --git a/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA b/descriptors/M/D/7RuPc8ZLXiYUOULAXMHA
index 2530bd18e..58db4841b 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 c66aecb04..357deaa9f 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 6141f32ba..8b28042ec 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 9de66ce50..bc3deb7f5 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 50c615ba0..bec5c1148 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 0f46c92ab..fc6c47abf 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 9630cf2e3..bc3f5fb81 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 995455839..8bb6c139e 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 211f790f3..5fe3629aa 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 d6fe9e9ff..86ebbfc82 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 55eb88378..5694622bf 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 2d6a99e9d..e26924e4b 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 9622f3e6a..5f6e599b4 100644
Binary files a/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ and b/descriptors/P/V/hBxH0ZEK5MfA5tilgPPQ differ
diff --git a/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng b/descriptors/Q/G/1e8Ygp1jpFLMRhjJxNng
index 60c50e324..c7c8bc7f5 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 5b5aa5f18..0c07708cb 100644
Binary files a/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw and b/descriptors/Q/P/B+J2GJLfQ0IakPB13vHw differ
diff --git a/descriptors/R/J/XynComHevEUzJVBqwqBw b/descriptors/R/J/XynComHevEUzJVBqwqBw
index eaf55b7fd..a7edb228c 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 d1e06649d..f30459ca9 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 4b65dfc24..9bfd8311c 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 b4a870fe3..8b76a35b5 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 0ae6a5aac..744e4a234 100644
Binary files a/descriptors/T/M/LNFLDuHMpqMgpKcW670A and b/descriptors/T/M/LNFLDuHMpqMgpKcW670A differ
diff --git a/descriptors/T/U/tCn8347JaERiSFirOQkQ b/descriptors/T/U/tCn8347JaERiSFirOQkQ
index 5b9fbc718..310ba3c46 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 84049a2c2..c62a3199a 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 77744b6fd..855b61a78 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 7f2ded819..18a0cbd29 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 b66bc7be5..df8e50568 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 354470e2d..012fa620c 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 bbf89d591..471b765c7 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 9521fc884..81838c191 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 cc429c26e..fefc2328c 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 00c9bdefa..c59bc0b14 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 1667c10a3..26c0c2397 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 1e2a362a9..413671c6e 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 b8bbfa66b..cfd0d547a 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 6db4f91a4..fa62a1849 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 d2115a5f8..72a41a558 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 9e01de515..5ae23c1cc 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 a8d0825e5..3a7160879 100644
Binary files a/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg and b/descriptors/Z/C/F+uoZ4eMh0rvFVtWvHQg differ
diff --git a/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ b/descriptors/Z/R/OUsJ+j-nqt5LtwbqJiaQ
index 912b627ad..92485d952 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 cb8179c14..5c5dbc08e 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 d063f99db..1adff2bbb 100644
Binary files a/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg and b/descriptors/Z/Y/O1XoiKM2Zbo-sweIM8Xg differ
diff --git a/files/+/K/fivj+KhPIlShyqsYHS6w b/files/+/K/fivj+KhPIlShyqsYHS6w
index 42d832c84..e4bb41725 100644
Binary files a/files/+/K/fivj+KhPIlShyqsYHS6w and b/files/+/K/fivj+KhPIlShyqsYHS6w differ
diff --git a/files/+/S/wrM-jPxYLjp2miviyjqw b/files/+/S/wrM-jPxYLjp2miviyjqw
new file mode 100644
index 000000000..18227c25a
Binary files /dev/null and b/files/+/S/wrM-jPxYLjp2miviyjqw differ
diff --git a/files/-/L/JVcJQjpIr7foxVgjTUxA b/files/-/L/JVcJQjpIr7foxVgjTUxA
index aa8ff420a..0d78aeecd 100644
Binary files a/files/-/L/JVcJQjpIr7foxVgjTUxA and b/files/-/L/JVcJQjpIr7foxVgjTUxA differ
diff --git a/files/0/L/e0NLQo8nmqbFSArGMKeA b/files/0/L/e0NLQo8nmqbFSArGMKeA
deleted file mode 100644
index b465f382c..000000000
Binary files a/files/0/L/e0NLQo8nmqbFSArGMKeA and /dev/null differ
diff --git a/files/0/P/9TmOfQ1VmiCaZtldqrtQ b/files/0/P/9TmOfQ1VmiCaZtldqrtQ
deleted file mode 100644
index 0ec0104f3..000000000
Binary files a/files/0/P/9TmOfQ1VmiCaZtldqrtQ and /dev/null differ
diff --git a/files/1/C/CbuZy0fqcFbWJLYV7CMQ b/files/1/C/CbuZy0fqcFbWJLYV7CMQ
index 8441e63f1..9cddbebc1 100644
Binary files a/files/1/C/CbuZy0fqcFbWJLYV7CMQ and b/files/1/C/CbuZy0fqcFbWJLYV7CMQ differ
diff --git a/files/1/R/7JvD4UbX9ZrpN0vvITpw b/files/1/R/7JvD4UbX9ZrpN0vvITpw
deleted file mode 100644
index 8c01f19be..000000000
Binary files a/files/1/R/7JvD4UbX9ZrpN0vvITpw and /dev/null differ
diff --git a/files/3/3/fNbZvBvpkr88YIkXpkvg b/files/3/3/fNbZvBvpkr88YIkXpkvg
index 243024811..972133572 100644
Binary files a/files/3/3/fNbZvBvpkr88YIkXpkvg and b/files/3/3/fNbZvBvpkr88YIkXpkvg differ
diff --git a/files/3/G/7onX3zKzW1+5AI3uovcA b/files/3/G/7onX3zKzW1+5AI3uovcA
index e42d4ced1..6d8d1f8b3 100644
Binary files a/files/3/G/7onX3zKzW1+5AI3uovcA and b/files/3/G/7onX3zKzW1+5AI3uovcA differ
diff --git a/files/3/H/wB2GiwqPuQxHs6x6WSuQ b/files/3/H/wB2GiwqPuQxHs6x6WSuQ
index 4f1fd5ce3..ccbf78735 100644
Binary files a/files/3/H/wB2GiwqPuQxHs6x6WSuQ and b/files/3/H/wB2GiwqPuQxHs6x6WSuQ differ
diff --git a/files/3/N/189cBEl67bsBwjxv+UZQ b/files/3/N/189cBEl67bsBwjxv+UZQ
index bb86705b0..bc617eab1 100644
Binary files a/files/3/N/189cBEl67bsBwjxv+UZQ and b/files/3/N/189cBEl67bsBwjxv+UZQ differ
diff --git a/files/4/A/SVpTTMK1n6oImqC-ArLw b/files/4/A/SVpTTMK1n6oImqC-ArLw
index 7d7ee5950..d1bd848ed 100644
Binary files a/files/4/A/SVpTTMK1n6oImqC-ArLw and b/files/4/A/SVpTTMK1n6oImqC-ArLw differ
diff --git a/files/5/2/SczqacBMs8Xs9CNoLnZQ b/files/5/2/SczqacBMs8Xs9CNoLnZQ
index cf1c59182..5d284677c 100644
Binary files a/files/5/2/SczqacBMs8Xs9CNoLnZQ and b/files/5/2/SczqacBMs8Xs9CNoLnZQ differ
diff --git a/files/5/Y/eUrrXI9RYLYsfyKLq-lQ b/files/5/Y/eUrrXI9RYLYsfyKLq-lQ
index 09ae1bf34..316821d2c 100644
Binary files a/files/5/Y/eUrrXI9RYLYsfyKLq-lQ and b/files/5/Y/eUrrXI9RYLYsfyKLq-lQ differ
diff --git a/files/6/N/2FZfaB2jHCQixfQSoTqQ b/files/6/N/2FZfaB2jHCQixfQSoTqQ
new file mode 100644
index 000000000..2676a59dc
Binary files /dev/null and b/files/6/N/2FZfaB2jHCQixfQSoTqQ differ
diff --git a/files/7/C/yHK5-SltR2h317oRNQHw b/files/7/C/yHK5-SltR2h317oRNQHw
index 73ea09708..11607f48b 100644
Binary files a/files/7/C/yHK5-SltR2h317oRNQHw and b/files/7/C/yHK5-SltR2h317oRNQHw differ
diff --git a/files/7/O/hVnPCNw3dvd9Hg1VDBUg b/files/7/O/hVnPCNw3dvd9Hg1VDBUg
index 83033dac9..59d45619a 100644
Binary files a/files/7/O/hVnPCNw3dvd9Hg1VDBUg and b/files/7/O/hVnPCNw3dvd9Hg1VDBUg differ
diff --git a/files/8/0/fp9ShnPyXs7M-MCMUhpA b/files/8/0/fp9ShnPyXs7M-MCMUhpA
index a0c52469c..197c0d78a 100644
Binary files a/files/8/0/fp9ShnPyXs7M-MCMUhpA and b/files/8/0/fp9ShnPyXs7M-MCMUhpA differ
diff --git a/files/9/X/t0oAbWrLJ8eYeO0ctYBQ b/files/9/X/t0oAbWrLJ8eYeO0ctYBQ
index f9d0a9a1b..215c5323b 100644
Binary files a/files/9/X/t0oAbWrLJ8eYeO0ctYBQ and b/files/9/X/t0oAbWrLJ8eYeO0ctYBQ differ
diff --git a/files/A/S/kveMpVSfMypkefUhTg+w b/files/A/S/kveMpVSfMypkefUhTg+w
index a535a50d9..5b045cedf 100644
Binary files a/files/A/S/kveMpVSfMypkefUhTg+w and b/files/A/S/kveMpVSfMypkefUhTg+w differ
diff --git a/files/B/+/cilQUkol1+S1DN2k4IAw b/files/B/+/cilQUkol1+S1DN2k4IAw
index 208528d88..ce0750800 100644
Binary files a/files/B/+/cilQUkol1+S1DN2k4IAw and b/files/B/+/cilQUkol1+S1DN2k4IAw differ
diff --git a/files/B/A/PlYPAD3WRkmDlZCA0sYg b/files/B/A/PlYPAD3WRkmDlZCA0sYg
index bc87a96a5..166b9f2ff 100644
Binary files a/files/B/A/PlYPAD3WRkmDlZCA0sYg and b/files/B/A/PlYPAD3WRkmDlZCA0sYg differ
diff --git a/files/B/G/d5hfp17i9wMvaCFNPjWA b/files/B/G/d5hfp17i9wMvaCFNPjWA
index 93b511b55..10ba4b870 100644
Binary files a/files/B/G/d5hfp17i9wMvaCFNPjWA and b/files/B/G/d5hfp17i9wMvaCFNPjWA differ
diff --git a/files/B/H/KvGP2UVEMGrycr9hWcOg b/files/B/H/KvGP2UVEMGrycr9hWcOg
new file mode 100644
index 000000000..0e0c70692
Binary files /dev/null and b/files/B/H/KvGP2UVEMGrycr9hWcOg differ
diff --git a/files/B/Z/iWJB1cFgK2tgeml2h-fQ b/files/B/Z/iWJB1cFgK2tgeml2h-fQ
new file mode 100644
index 000000000..737617dfc
Binary files /dev/null and b/files/B/Z/iWJB1cFgK2tgeml2h-fQ differ
diff --git a/files/B/Z/r6u9XkCEapqm4ynQfcGA b/files/B/Z/r6u9XkCEapqm4ynQfcGA
index ad24cb1f4..5cb4983d1 100644
Binary files a/files/B/Z/r6u9XkCEapqm4ynQfcGA and b/files/B/Z/r6u9XkCEapqm4ynQfcGA differ
diff --git a/files/C/A/iLTAvf56jtDjxMNSr0HQ b/files/C/A/iLTAvf56jtDjxMNSr0HQ
index e0826700e..82ca3a1c0 100644
Binary files a/files/C/A/iLTAvf56jtDjxMNSr0HQ and b/files/C/A/iLTAvf56jtDjxMNSr0HQ differ
diff --git a/files/C/F/DbW2Pl32WH1Y2LPi4Nrw b/files/C/F/DbW2Pl32WH1Y2LPi4Nrw
deleted file mode 100644
index 6f185e6f7..000000000
Binary files a/files/C/F/DbW2Pl32WH1Y2LPi4Nrw and /dev/null differ
diff --git a/files/C/H/BvIsMp78g+y3-WbjvTAA b/files/C/H/BvIsMp78g+y3-WbjvTAA
deleted file mode 100644
index 7887c5a33..000000000
Binary files a/files/C/H/BvIsMp78g+y3-WbjvTAA and /dev/null differ
diff --git a/files/C/Z/oatGE-a8FElByY-JNZTA b/files/C/Z/oatGE-a8FElByY-JNZTA
index 09da90199..51e60a79f 100644
Binary files a/files/C/Z/oatGE-a8FElByY-JNZTA and b/files/C/Z/oatGE-a8FElByY-JNZTA differ
diff --git a/files/D/6/1lQpZtHHuBj-6HQXKSsw b/files/D/6/1lQpZtHHuBj-6HQXKSsw
deleted file mode 100644
index 06486d8a4..000000000
Binary files a/files/D/6/1lQpZtHHuBj-6HQXKSsw and /dev/null differ
diff --git a/files/D/R/gj7mKqcxe8KYAFY5lAJA b/files/D/R/gj7mKqcxe8KYAFY5lAJA
index 9d550062a..fd9029c09 100644
Binary files a/files/D/R/gj7mKqcxe8KYAFY5lAJA and b/files/D/R/gj7mKqcxe8KYAFY5lAJA differ
diff --git a/files/E/9/nweH4dCaAgwFUIPbFRIA b/files/E/9/nweH4dCaAgwFUIPbFRIA
index 250808b15..f684e4345 100644
Binary files a/files/E/9/nweH4dCaAgwFUIPbFRIA and b/files/E/9/nweH4dCaAgwFUIPbFRIA differ
diff --git a/files/E/R/TAcbdYw27qpvxALSxR3w b/files/E/R/TAcbdYw27qpvxALSxR3w
index 1522917a9..a7d66878c 100644
Binary files a/files/E/R/TAcbdYw27qpvxALSxR3w and b/files/E/R/TAcbdYw27qpvxALSxR3w differ
diff --git a/files/E/Z/Or2RBx9GltvHT9ZAUFpQ b/files/E/Z/Or2RBx9GltvHT9ZAUFpQ
index cec57869a..74aa5e0c8 100644
Binary files a/files/E/Z/Or2RBx9GltvHT9ZAUFpQ and b/files/E/Z/Or2RBx9GltvHT9ZAUFpQ differ
diff --git a/files/F/+/C1GJwnHM4LR2ZeV+2VfQ b/files/F/+/C1GJwnHM4LR2ZeV+2VfQ
index 4715d10ba..52d294ad7 100644
Binary files a/files/F/+/C1GJwnHM4LR2ZeV+2VfQ and b/files/F/+/C1GJwnHM4LR2ZeV+2VfQ differ
diff --git a/files/F/6/YsNYwb1msBicc+pHjxkQ b/files/F/6/YsNYwb1msBicc+pHjxkQ
index e9f9a6bfc..c68880da8 100644
Binary files a/files/F/6/YsNYwb1msBicc+pHjxkQ and b/files/F/6/YsNYwb1msBicc+pHjxkQ differ
diff --git a/files/F/R/Nr60fjCnka+ugl60hKMA b/files/F/R/Nr60fjCnka+ugl60hKMA
index a83b2f466..a8b73cd08 100644
Binary files a/files/F/R/Nr60fjCnka+ugl60hKMA and b/files/F/R/Nr60fjCnka+ugl60hKMA differ
diff --git a/files/G/S/ilhZdkG-bqx8NIJVrmNg b/files/G/S/ilhZdkG-bqx8NIJVrmNg
index f39e4c13b..19508471e 100644
Binary files a/files/G/S/ilhZdkG-bqx8NIJVrmNg and b/files/G/S/ilhZdkG-bqx8NIJVrmNg differ
diff --git a/files/I/A/nqtGjl7eu5-IcarAosug b/files/I/A/nqtGjl7eu5-IcarAosug
index 9789fa3b8..ad067a58d 100644
Binary files a/files/I/A/nqtGjl7eu5-IcarAosug and b/files/I/A/nqtGjl7eu5-IcarAosug differ
diff --git a/files/I/D/uMIMcEmycM2j9DoNEowg b/files/I/D/uMIMcEmycM2j9DoNEowg
new file mode 100644
index 000000000..a64bbfc51
Binary files /dev/null and b/files/I/D/uMIMcEmycM2j9DoNEowg differ
diff --git a/files/I/R/N-akxKJ4qG3JpbMIkfHw b/files/I/R/N-akxKJ4qG3JpbMIkfHw
index 5a453bb42..e56eadd73 100644
Binary files a/files/I/R/N-akxKJ4qG3JpbMIkfHw and b/files/I/R/N-akxKJ4qG3JpbMIkfHw differ
diff --git a/files/J/1/PxuL9jO1x9efWzIN4yzQ b/files/J/1/PxuL9jO1x9efWzIN4yzQ
index 4fab7159b..00894bac1 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 78e7d41a2..91cd311ee 100644
Binary files a/files/J/1/pIAusvx9ulfkRypatz7w and b/files/J/1/pIAusvx9ulfkRypatz7w differ
diff --git a/files/K/A/0rd0+hMAxzMuWlnRSDNQ b/files/K/A/0rd0+hMAxzMuWlnRSDNQ
new file mode 100644
index 000000000..032d0a6a7
Binary files /dev/null and b/files/K/A/0rd0+hMAxzMuWlnRSDNQ differ
diff --git a/files/K/L/Stsb4wdGitJvHmK5upng b/files/K/L/Stsb4wdGitJvHmK5upng
new file mode 100644
index 000000000..7c1f96da9
Binary files /dev/null and b/files/K/L/Stsb4wdGitJvHmK5upng differ
diff --git a/files/K/S/agTVwveve-SQrWl1ZfOg b/files/K/S/agTVwveve-SQrWl1ZfOg
new file mode 100644
index 000000000..67b9189e1
Binary files /dev/null and b/files/K/S/agTVwveve-SQrWl1ZfOg differ
diff --git a/files/K/Y/xjLMZlMZ9vOrVLEHKJxg b/files/K/Y/xjLMZlMZ9vOrVLEHKJxg
deleted file mode 100644
index 9ed2d0a41..000000000
Binary files a/files/K/Y/xjLMZlMZ9vOrVLEHKJxg and /dev/null differ
diff --git a/files/L/7/ylF0KR+fhK2DZo9efRVA b/files/L/7/ylF0KR+fhK2DZo9efRVA
index 0db4335a4..d45918700 100644
Binary files a/files/L/7/ylF0KR+fhK2DZo9efRVA and b/files/L/7/ylF0KR+fhK2DZo9efRVA differ
diff --git a/files/L/T/W88DmREidrVeiHAF1qmw b/files/L/T/W88DmREidrVeiHAF1qmw
new file mode 100644
index 000000000..6eb93fba3
Binary files /dev/null and b/files/L/T/W88DmREidrVeiHAF1qmw differ
diff --git a/files/L/X/qHuIyBxkKnTcVhX+4UTg b/files/L/X/qHuIyBxkKnTcVhX+4UTg
index feb8967b1..8def0b302 100644
Binary files a/files/L/X/qHuIyBxkKnTcVhX+4UTg and b/files/L/X/qHuIyBxkKnTcVhX+4UTg differ
diff --git a/files/L/Z/M1tyW8Rxbr-z6hn+d8gw b/files/L/Z/M1tyW8Rxbr-z6hn+d8gw
index 701b03705..30e602d0e 100644
Binary files a/files/L/Z/M1tyW8Rxbr-z6hn+d8gw and b/files/L/Z/M1tyW8Rxbr-z6hn+d8gw differ
diff --git a/files/L/Z/uplcU1zTlxA9g7KlMXWA b/files/L/Z/uplcU1zTlxA9g7KlMXWA
new file mode 100644
index 000000000..09c172d98
Binary files /dev/null and b/files/L/Z/uplcU1zTlxA9g7KlMXWA differ
diff --git a/files/N/L/oVuRqu5li7C+R-50gcfg b/files/N/L/oVuRqu5li7C+R-50gcfg
deleted file mode 100644
index 806226a10..000000000
Binary files a/files/N/L/oVuRqu5li7C+R-50gcfg and /dev/null differ
diff --git a/files/N/O/oDXogH4VOzsYfbmEHngg b/files/N/O/oDXogH4VOzsYfbmEHngg
index 46835f8c8..72ffb205c 100644
Binary files a/files/N/O/oDXogH4VOzsYfbmEHngg and b/files/N/O/oDXogH4VOzsYfbmEHngg differ
diff --git a/files/N/P/cB3NBJaYRXoBzlPDG00w b/files/N/P/cB3NBJaYRXoBzlPDG00w
index 466772f87..b87b41f28 100644
Binary files a/files/N/P/cB3NBJaYRXoBzlPDG00w and b/files/N/P/cB3NBJaYRXoBzlPDG00w differ
diff --git a/files/N/U/0TUmsiWWXi81SaLO-vCw b/files/N/U/0TUmsiWWXi81SaLO-vCw
new file mode 100644
index 000000000..203187e3c
Binary files /dev/null and b/files/N/U/0TUmsiWWXi81SaLO-vCw differ
diff --git a/files/O/H/wxhiv21RpPOAKuyg6aYQ b/files/O/H/wxhiv21RpPOAKuyg6aYQ
deleted file mode 100644
index e02c1dfcc..000000000
Binary files a/files/O/H/wxhiv21RpPOAKuyg6aYQ and /dev/null differ
diff --git a/files/O/K/NmOmNO3p5h7L1Cv6QCyw b/files/O/K/NmOmNO3p5h7L1Cv6QCyw
index 938398d95..74020732f 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
new file mode 100644
index 000000000..63650644b
Binary files /dev/null and b/files/O/L/2VVoPbca2+iXf34L6GpA differ
diff --git a/files/O/L/E6Aj-zzhQ7DF5jLkxnAw b/files/O/L/E6Aj-zzhQ7DF5jLkxnAw
index 92ba8a920..c6c9ba46d 100644
Binary files a/files/O/L/E6Aj-zzhQ7DF5jLkxnAw and b/files/O/L/E6Aj-zzhQ7DF5jLkxnAw differ
diff --git a/files/O/P/VKUMgyryHg5qnxCn-h0g b/files/O/P/VKUMgyryHg5qnxCn-h0g
index edf99ee1e..067d17e08 100644
Binary files a/files/O/P/VKUMgyryHg5qnxCn-h0g and b/files/O/P/VKUMgyryHg5qnxCn-h0g differ
diff --git a/files/O/Z/C4jK3BJgUt-N5Vk2YArw b/files/O/Z/C4jK3BJgUt-N5Vk2YArw
index 1b5d75436..7eb81b5b4 100644
Binary files a/files/O/Z/C4jK3BJgUt-N5Vk2YArw and b/files/O/Z/C4jK3BJgUt-N5Vk2YArw differ
diff --git a/files/P/U/3gHgJ3QePrmByKl3RLCw b/files/P/U/3gHgJ3QePrmByKl3RLCw
index 4ac6420e8..0c1ad7205 100644
Binary files a/files/P/U/3gHgJ3QePrmByKl3RLCw and b/files/P/U/3gHgJ3QePrmByKl3RLCw differ
diff --git a/files/P/W/lxK1JdbgtgJEYHlr1xfw b/files/P/W/lxK1JdbgtgJEYHlr1xfw
index f2799983c..56b3d9516 100644
Binary files a/files/P/W/lxK1JdbgtgJEYHlr1xfw and b/files/P/W/lxK1JdbgtgJEYHlr1xfw differ
diff --git a/files/Q/6/afD6rVJYJ2CYS6mlNirw b/files/Q/6/afD6rVJYJ2CYS6mlNirw
index fc966fa0a..70d9d7ab8 100644
Binary files a/files/Q/6/afD6rVJYJ2CYS6mlNirw and b/files/Q/6/afD6rVJYJ2CYS6mlNirw differ
diff --git a/files/Q/I/mJSGZXEGE4Xh89zx-xTA b/files/Q/I/mJSGZXEGE4Xh89zx-xTA
index a5348741d..0db146ba7 100644
Binary files a/files/Q/I/mJSGZXEGE4Xh89zx-xTA and b/files/Q/I/mJSGZXEGE4Xh89zx-xTA differ
diff --git a/files/Q/L/AceURt5XU6Q0g0c6y8hw b/files/Q/L/AceURt5XU6Q0g0c6y8hw
deleted file mode 100644
index 7d6967fb6..000000000
Binary files a/files/Q/L/AceURt5XU6Q0g0c6y8hw and /dev/null differ
diff --git a/files/R/1/AhKdr1gqaXCIasSPqx9w b/files/R/1/AhKdr1gqaXCIasSPqx9w
index 8fe02df39..f2ddbcca4 100644
Binary files a/files/R/1/AhKdr1gqaXCIasSPqx9w and b/files/R/1/AhKdr1gqaXCIasSPqx9w differ
diff --git a/files/R/R/GI+7hZ1thaklhglVcj2g b/files/R/R/GI+7hZ1thaklhglVcj2g
index e79a17211..2410e97a6 100644
Binary files a/files/R/R/GI+7hZ1thaklhglVcj2g and b/files/R/R/GI+7hZ1thaklhglVcj2g differ
diff --git a/files/R/U/+w581b+tml-CmMzhLSVA b/files/R/U/+w581b+tml-CmMzhLSVA
new file mode 100644
index 000000000..7c34e13b2
Binary files /dev/null and b/files/R/U/+w581b+tml-CmMzhLSVA differ
diff --git a/files/S/R/RN2eZZA1wBDWMALnD5MQ b/files/S/R/RN2eZZA1wBDWMALnD5MQ
index ccd471eba..3d932df72 100644
Binary files a/files/S/R/RN2eZZA1wBDWMALnD5MQ and b/files/S/R/RN2eZZA1wBDWMALnD5MQ differ
diff --git a/files/T/O/dRc17A7DH1O9sHuxixqA b/files/T/O/dRc17A7DH1O9sHuxixqA
deleted file mode 100644
index d6c712973..000000000
Binary files a/files/T/O/dRc17A7DH1O9sHuxixqA and /dev/null differ
diff --git a/files/T/P/69khEcflqCnlBabGDBmQ b/files/T/P/69khEcflqCnlBabGDBmQ
deleted file mode 100644
index 68128a444..000000000
Binary files a/files/T/P/69khEcflqCnlBabGDBmQ and /dev/null differ
diff --git a/files/U/2/rmwzTu01UCJBQPtjSu4A b/files/U/2/rmwzTu01UCJBQPtjSu4A
index f179cc10b..aeaf280ea 100644
Binary files a/files/U/2/rmwzTu01UCJBQPtjSu4A and b/files/U/2/rmwzTu01UCJBQPtjSu4A differ
diff --git a/files/U/B/YP5QXIhrYiwu-iJQjHfQ b/files/U/B/YP5QXIhrYiwu-iJQjHfQ
index d0145c59c..7fcc6f2ce 100644
Binary files a/files/U/B/YP5QXIhrYiwu-iJQjHfQ and b/files/U/B/YP5QXIhrYiwu-iJQjHfQ differ
diff --git a/files/U/F/1WtYZC1O9cy5oPwAY7XQ b/files/U/F/1WtYZC1O9cy5oPwAY7XQ
index 97ad881d4..a710e5108 100644
Binary files a/files/U/F/1WtYZC1O9cy5oPwAY7XQ and b/files/U/F/1WtYZC1O9cy5oPwAY7XQ differ
diff --git a/files/U/J/JwMkjE77AoI6w26d1sgA b/files/U/J/JwMkjE77AoI6w26d1sgA
index 3daa80df7..4509b00d7 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
index 923f82018..786bc3553 100644
Binary files a/files/U/L/tWKwtUMrty1YgiXYYdzA and b/files/U/L/tWKwtUMrty1YgiXYYdzA differ
diff --git a/files/V/1/rwNpFLpluH8wiTsLoRDw b/files/V/1/rwNpFLpluH8wiTsLoRDw
new file mode 100644
index 000000000..e1b3a764c
Binary files /dev/null and b/files/V/1/rwNpFLpluH8wiTsLoRDw differ
diff --git a/files/V/6/UqfusinvnQSMYR8OJD4A b/files/V/6/UqfusinvnQSMYR8OJD4A
index 30c0630d8..5c64baaa8 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 24fa3b7f6..1ed44cd80 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
index f6a0b8bc8..6fa00048f 100644
Binary files a/files/W/A/6X48IDMa202CFrLH8K3w and b/files/W/A/6X48IDMa202CFrLH8K3w differ
diff --git a/files/W/Y/0n9UfKEBf8E3VHC8ekEA b/files/W/Y/0n9UfKEBf8E3VHC8ekEA
index 3d55e00fa..99f2ddd7d 100644
Binary files a/files/W/Y/0n9UfKEBf8E3VHC8ekEA and b/files/W/Y/0n9UfKEBf8E3VHC8ekEA differ
diff --git a/files/X/E/4QUvsufJTJinVZZiFAjA b/files/X/E/4QUvsufJTJinVZZiFAjA
deleted file mode 100644
index 46cf425f1..000000000
Binary files a/files/X/E/4QUvsufJTJinVZZiFAjA and /dev/null differ
diff --git a/files/X/E/QfByA38nHhFeAb89mCGg b/files/X/E/QfByA38nHhFeAb89mCGg
index 37762cd60..35346ef66 100644
Binary files a/files/X/E/QfByA38nHhFeAb89mCGg and b/files/X/E/QfByA38nHhFeAb89mCGg differ
diff --git a/files/X/F/EMJTqXnNx40cGZ3fpoug b/files/X/F/EMJTqXnNx40cGZ3fpoug
index f9e2c6557..f9a70a3fd 100644
Binary files a/files/X/F/EMJTqXnNx40cGZ3fpoug and b/files/X/F/EMJTqXnNx40cGZ3fpoug differ
diff --git a/files/X/G/Jecbvu+fgXXGa5RdRzaQ b/files/X/G/Jecbvu+fgXXGa5RdRzaQ
index 5e974a769..468268bc5 100644
Binary files a/files/X/G/Jecbvu+fgXXGa5RdRzaQ and b/files/X/G/Jecbvu+fgXXGa5RdRzaQ differ
diff --git a/files/Y/K/bsAGuZPjAy62MiPnlvYg b/files/Y/K/bsAGuZPjAy62MiPnlvYg
deleted file mode 100644
index 99484d6ca..000000000
Binary files a/files/Y/K/bsAGuZPjAy62MiPnlvYg and /dev/null differ
diff --git a/files/Z/5/n9gAR3guIFx-jlh-tzBQ b/files/Z/5/n9gAR3guIFx-jlh-tzBQ
deleted file mode 100644
index 1f0bfc4e0..000000000
Binary files a/files/Z/5/n9gAR3guIFx-jlh-tzBQ and /dev/null differ
diff --git a/files/Z/T/pkfHm5WAHij9wIcmZKcQ b/files/Z/T/pkfHm5WAHij9wIcmZKcQ
index 489013dad..1a7ceb89b 100644
Binary files a/files/Z/T/pkfHm5WAHij9wIcmZKcQ and b/files/Z/T/pkfHm5WAHij9wIcmZKcQ differ
diff --git a/files/Z/W/urTlDp5s1eB9768DzN0w b/files/Z/W/urTlDp5s1eB9768DzN0w
index 286371103..22fcb09fd 100644
Binary files a/files/Z/W/urTlDp5s1eB9768DzN0w and b/files/Z/W/urTlDp5s1eB9768DzN0w differ
diff --git a/files/Z/Y/anqhQGjjMdO1w6SkylxA b/files/Z/Y/anqhQGjjMdO1w6SkylxA
index aeb6b4ec1..a39da8775 100644
Binary files a/files/Z/Y/anqhQGjjMdO1w6SkylxA and b/files/Z/Y/anqhQGjjMdO1w6SkylxA differ
diff --git a/files/src-common-formatinformation.html b/files/src-common-formatinformation.html
deleted file mode 100644
index 3e7503907..000000000
--- a/files/src-common-formatinformation.html
+++ /dev/null
@@ -1,206 +0,0 @@
-
-
-
-
- Documentation
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- FormatInformation.php
-
- Class FormatInformation
-
-
-
-
- Tags
-
-
-
-
- created
-
-
-
-
-
-
-
- author
-
-
-
-
-
-
-
- author
-
-
-
-
-
-
-
- copyright
-
-
-
-
-
-
-
- license
-
-
-
-
-
-
-
-
-
-
-
-
- Interfaces, Classes, Traits and Enums
-
-
-
-
-
- FormatInformation
- Encapsulates a QR Code's format information, including the data mask used and error correction level.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/files/src-common-maskpattern.html b/files/src-common-maskpattern.html
index 42add0a11..c9aee495b 100644
--- a/files/src-common-maskpattern.html
+++ b/files/src-common-maskpattern.html
@@ -121,7 +121,16 @@
-
+
+ author
+
+
+
+
@@ -130,7 +139,7 @@
-
@@ -139,7 +148,7 @@
-
diff --git a/files/src-decoder-bitmatrix.html b/files/src-decoder-bitmatrix.html
index 286d37556..0fdf436ae 100644
--- a/files/src-decoder-bitmatrix.html
+++ b/files/src-decoder-bitmatrix.html
@@ -165,7 +165,8 @@
BitMatrix
-
+ Holds a numerical representation of the final QR Code;
+maps the ECC coded binary data and applies the mask pattern
diff --git a/indices/files.html b/indices/files.html
index 1c807dfc6..146210792 100644
--- a/indices/files.html
+++ b/indices/files.html
@@ -127,7 +127,6 @@
G
diff --git a/js/searchIndex.js b/js/searchIndex.js
index 6483b0821..2a614a1e8 100644
--- a/js/searchIndex.js
+++ b/js/searchIndex.js
@@ -305,46 +305,6 @@ Search.appendIndex(
"name": "charsetID",
"summary": "The\u0020current\u0020ECI\u0020character\u0020set\u0020ID",
"url": "classes/chillerlan-QRCode-Common-ECICharset.html#property_charsetID"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation",
- "name": "FormatInformation",
- "summary": "Encapsulates\u0020a\u0020QR\u0020Code\u0027s\u0020format\u0020information,\u0020including\u0020the\u0020data\u0020mask\u0020used\u0020and\u0020error\u0020correction\u0020level.",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003A__construct\u0028\u0029",
- "name": "__construct",
- "summary": "Receives\u0020the\u0020format\u0020information\u0020from\u0020a\u0020parsed\u0020QR\u0020Code,\u0020detects\u0020ECC\u0020level\u0020and\u0020mask\u0020pattern",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#method___construct"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003AgetErrorCorrectionLevel\u0028\u0029",
- "name": "getErrorCorrectionLevel",
- "summary": "Returns\u0020and\u0020EccLevel\u0020instance\u0020ith\u0020the\u0020detected\u0020ECC\u0020level\u0020set",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#method_getErrorCorrectionLevel"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003AgetMaskPattern\u0028\u0029",
- "name": "getMaskPattern",
- "summary": "Returns\u0020a\u0020MaskPattern\u0020instance\u0020with\u0020the\u0020detected\u0020mask\u0020pattern\u0020set",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#method_getMaskPattern"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003AFORMAT_INFO_MASK_QR",
- "name": "FORMAT_INFO_MASK_QR",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#constant_FORMAT_INFO_MASK_QR"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003ADECODE_LOOKUP",
- "name": "DECODE_LOOKUP",
- "summary": "See\u0020ISO\u002018004\u003A2006,\u0020Annex\u0020C,\u0020Table\u0020C.1",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#constant_DECODE_LOOKUP"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003A\u0024errorCorrectionLevel",
- "name": "errorCorrectionLevel",
- "summary": "The\u0020current\u0020ECC\u0020level\u0020value",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#property_errorCorrectionLevel"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Common\\FormatInformation\u003A\u003A\u0024maskPattern",
- "name": "maskPattern",
- "summary": "The\u0020current\u0020mask\u0020pattern\u0020\u00280\u002D7\u0029",
- "url": "classes/chillerlan-QRCode-Common-FormatInformation.html#property_maskPattern"
}, {
"fqsen": "\\chillerlan\\QRCode\\Common\\GenericGFPoly",
"name": "GenericGFPoly",
@@ -1120,11 +1080,6 @@ Search.appendIndex(
"name": "initFunctionalPatterns",
"summary": "shortcut\u0020to\u0020initialize\u0020the\u0020functional\u0020patterns",
"url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_initFunctionalPatterns"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003AinitFormatInfo\u0028\u0029",
- "name": "initFormatInfo",
- "summary": "shortcut\u0020to\u0020set\u0020format\u0020and\u0020version\u0020info",
- "url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_initFormatInfo"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003A\u0024matrix",
"name": "matrix",
@@ -1226,14 +1181,14 @@ Search.appendIndex(
"summary": "Clears\u0020a\u0020space\u0020of\u0020\u0024width\u0020\u002A\u0020\u0024height\u0020in\u0020order\u0020to\u0020add\u0020a\u0020logo\u0020or\u0020text.",
"url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_setLogoSpace"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003AmapData\u0028\u0029",
- "name": "mapData",
- "summary": "Maps\u0020the\u0020binary\u0020\u0024data\u0020array\u0020from\u0020QRData\u003A\u003AmaskECC\u0028\u0029\u0020on\u0020the\u0020matrix,\nmasking\u0020the\u0020data\u0020using\u0020\u0024maskPattern\u0020\u0028ISO\/IEC\u002018004\u003A2000\u0020Section\u00208.8\u0029",
- "url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_mapData"
+ "fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003AwriteCodewords\u0028\u0029",
+ "name": "writeCodewords",
+ "summary": "Maps\u0020the\u0020interleaved\u0020binary\u0020\u0024data\u0020on\u0020the\u0020matrix",
+ "url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_writeCodewords"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003Amask\u0028\u0029",
"name": "mask",
- "summary": "Applies\u0020the\u0020mask\u0020pattern",
+ "summary": "Applies\/reverses\u0020the\u0020mask\u0020pattern",
"url": "classes/chillerlan-QRCode-Data-QRMatrix.html#method_mask"
}, {
"fqsen": "\\chillerlan\\QRCode\\Data\\QRMatrix\u003A\u003AM_NULL",
@@ -1390,76 +1345,31 @@ Search.appendIndex(
"name": "source",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-Binarizer.html#property_source"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\Binarizer\u003A\u003A\u0024luminances",
+ "name": "luminances",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Decoder-Binarizer.html#property_luminances"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix",
"name": "BitMatrix",
- "summary": "",
+ "summary": "Holds\u0020a\u0020numerical\u0020representation\u0020of\u0020the\u0020final\u0020QR\u0020Code\u003B\nmaps\u0020the\u0020ECC\u0020coded\u0020binary\u0020data\u0020and\u0020applies\u0020the\u0020mask\u0020pattern",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A__construct\u0028\u0029",
"name": "__construct",
- "summary": "",
+ "summary": "QRMatrix\u0020constructor.",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method___construct"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003Aset\u0028\u0029",
- "name": "set",
- "summary": "Sets\u0020the\u0020given\u0020bit\u0020to\u0020true.",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_set"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003Aflip\u0028\u0029",
- "name": "flip",
- "summary": "Flips\u0020the\u0020given\u0020bit.\u00201\u0020\u003C\u003C\u0020\u00280xf9\u0020\u0026\u00200x1f\u0029",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_flip"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AsetRegion\u0028\u0029",
- "name": "setRegion",
- "summary": "Sets\u0020a\u0020square\u0020region\u0020of\u0020the\u0020bit\u0020matrix\u0020to\u0020true.",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_setRegion"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AgetDimension\u0028\u0029",
- "name": "getDimension",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_getDimension"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AgetFormatInfo\u0028\u0029",
- "name": "getFormatInfo",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_getFormatInfo"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AgetVersion\u0028\u0029",
- "name": "getVersion",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_getVersion"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003Aget\u0028\u0029",
- "name": "get",
- "summary": "Gets\u0020the\u0020requested\u0020bit,\u0020where\u0020true\u0020means\u0020black.",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_get"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AbuildFunctionPattern\u0028\u0029",
- "name": "buildFunctionPattern",
- "summary": "See\u0020ISO\u002018004\u003A2006\u0020Annex\u0020E",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_buildFunctionPattern"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024mirror",
- "name": "mirror",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_mirror"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003Aunmask\u0028\u0029",
- "name": "unmask",
- "summary": "Implementations\u0020of\u0020this\u0020method\u0020reverse\u0020the\u0020data\u0020masking\u0020process\u0020applied\u0020to\u0020a\u0020QR\u0020Code\u0020and\nmake\u0020its\u0020bits\u0020ready\u0020to\u0020read.",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_unmask"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AsetMirror\u0028\u0029",
"name": "setMirror",
"summary": "Prepare\u0020the\u0020parser\u0020for\u0020a\u0020mirrored\u0020operation.",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_setMirror"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AcopyBit\u0028\u0029",
- "name": "copyBit",
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024mirror",
+ "name": "mirror",
"summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_copyBit"
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_mirror"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AreadCodewords\u0028\u0029",
"name": "readCodewords",
@@ -1470,6 +1380,11 @@ Search.appendIndex(
"name": "readFormatInformation",
"summary": "Reads\u0020format\u0020information\u0020from\u0020one\u0020of\u0020its\u0020two\u0020locations\u0020within\u0020the\u0020QR\u0020Code.",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_readFormatInformation"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AcopyVersionBit\u0028\u0029",
+ "name": "copyVersionBit",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_copyVersionBit"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AdoDecodeFormatInformation\u0028\u0029",
"name": "doDecodeFormatInformation",
@@ -1496,30 +1411,25 @@ Search.appendIndex(
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_numBitsDiffering"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024dimension",
- "name": "dimension",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_dimension"
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AsetQuietZone\u0028\u0029",
+ "name": "setQuietZone",
+ "summary": "Draws\u0020the\u0020\u0022quiet\u0020zone\u0022\u0020of\u0020\u0024size\u0020around\u0020the\u0020matrix",
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_setQuietZone"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024rowSize",
- "name": "rowSize",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_rowSize"
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AsetLogoSpace\u0028\u0029",
+ "name": "setLogoSpace",
+ "summary": "Clears\u0020a\u0020space\u0020of\u0020\u0024width\u0020\u002A\u0020\u0024height\u0020in\u0020order\u0020to\u0020add\u0020a\u0020logo\u0020or\u0020text.",
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#method_setLogoSpace"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024bits",
- "name": "bits",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_bits"
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003ADECODE_LOOKUP",
+ "name": "DECODE_LOOKUP",
+ "summary": "See\u0020ISO\u002018004\u003A2006,\u0020Annex\u0020C,\u0020Table\u0020C.1",
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#constant_DECODE_LOOKUP"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024version",
- "name": "version",
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003AFORMAT_INFO_MASK_QR",
+ "name": "FORMAT_INFO_MASK_QR",
"summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_version"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\BitMatrix\u003A\u003A\u0024formatInfo",
- "name": "formatInfo",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#property_formatInfo"
+ "url": "classes/chillerlan-QRCode-Decoder-BitMatrix.html#constant_FORMAT_INFO_MASK_QR"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder",
"name": "Decoder",
@@ -1550,16 +1460,16 @@ Search.appendIndex(
"name": "version",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-Decoder.html#property_version"
- }, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003A\u0024formatInfo",
- "name": "formatInfo",
- "summary": "",
- "url": "classes/chillerlan-QRCode-Decoder-Decoder.html#property_formatInfo"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003A\u0024eccLevel",
"name": "eccLevel",
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-Decoder.html#property_eccLevel"
+ }, {
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\Decoder\u003A\u003A\u0024maskPattern",
+ "name": "maskPattern",
+ "summary": "",
+ "url": "classes/chillerlan-QRCode-Decoder-Decoder.html#property_maskPattern"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\DecoderResult",
"name": "DecoderResult",
@@ -1691,10 +1601,10 @@ Search.appendIndex(
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html#method___construct"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceAbstract\u003A\u003AgetMatrix\u0028\u0029",
- "name": "getMatrix",
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceAbstract\u003A\u003AgetLuminances\u0028\u0029",
+ "name": "getLuminances",
"summary": "Fetches\u0020luminance\u0020data\u0020for\u0020the\u0020underlying\u0020bitmap.\u0020Values\u0020should\u0020be\u0020fetched\u0020using\u003A\n\u0060int\u0020luminance\u0020\u003D\u0020array\u005By\u0020\u002A\u0020width\u0020\u002B\u0020x\u005D\u0020\u0026\u00200xff\u0060",
- "url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html#method_getMatrix"
+ "url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html#method_getLuminances"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceAbstract\u003A\u003AgetWidth\u0028\u0029",
"name": "getWidth",
@@ -1708,7 +1618,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceAbstract\u003A\u003AgetRow\u0028\u0029",
"name": "getRow",
- "summary": "Fetches\u0020one\u0020row\u0020of\u0020luminance\u0020data\u0020from\u0020the\u0020underlying\u0020platform\u0027s\u0020bitmap.\u0020Values\u0020range\u0020from\n0\u0020\u0028black\u0029\u0020to\u0020255\u0020\u0028white\u0029.\u0020Because\u0020Java\u0020does\u0020not\u0020have\u0020an\u0020unsigned\u0020byte\u0020type,\u0020callers\u0020will\u0020have\nto\u0020bitwise\u0020and\u0020with\u00200xff\u0020for\u0020each\u0020value.\u0020It\u0020is\u0020preferable\u0020for\u0020implementations\u0020of\u0020this\u0020method\nto\u0020only\u0020fetch\u0020this\u0020row\u0020rather\u0020than\u0020the\u0020whole\u0020image,\u0020since\u0020no\u00202D\u0020Readers\u0020may\u0020be\u0020installed\u0020and\ngetMatrix\u0028\u0029\u0020may\u0020never\u0020be\u0020called.",
+ "summary": "Fetches\u0020one\u0020row\u0020of\u0020luminance\u0020data\u0020from\u0020the\u0020underlying\u0020platform\u0027s\u0020bitmap.\u0020Values\u0020range\u0020from\n0\u0020\u0028black\u0029\u0020to\u0020255\u0020\u0028white\u0029.\u0020Because\u0020Java\u0020does\u0020not\u0020have\u0020an\u0020unsigned\u0020byte\u0020type,\u0020callers\u0020will\u0020have\nto\u0020bitwise\u0020and\u0020with\u00200xff\u0020for\u0020each\u0020value.\u0020It\u0020is\u0020preferable\u0020for\u0020implementations\u0020of\u0020this\u0020method\nto\u0020only\u0020fetch\u0020this\u0020row\u0020rather\u0020than\u0020the\u0020whole\u0020image,\u0020since\u0020no\u00202D\u0020Readers\u0020may\u0020be\u0020installed\u0020and\ngetLuminances\u0028\u0029\u0020may\u0020never\u0020be\u0020called.",
"url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceAbstract.html#method_getRow"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceAbstract\u003A\u003AsetLuminancePixel\u0028\u0029",
@@ -1746,10 +1656,10 @@ Search.appendIndex(
"summary": "",
"url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceInterface\u003A\u003AgetMatrix\u0028\u0029",
- "name": "getMatrix",
+ "fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceInterface\u003A\u003AgetLuminances\u0028\u0029",
+ "name": "getLuminances",
"summary": "Fetches\u0020luminance\u0020data\u0020for\u0020the\u0020underlying\u0020bitmap.\u0020Values\u0020should\u0020be\u0020fetched\u0020using\u003A\n\u0060int\u0020luminance\u0020\u003D\u0020array\u005By\u0020\u002A\u0020width\u0020\u002B\u0020x\u005D\u0020\u0026\u00200xff\u0060",
- "url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html#method_getMatrix"
+ "url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html#method_getLuminances"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceInterface\u003A\u003AgetWidth\u0028\u0029",
"name": "getWidth",
@@ -1763,7 +1673,7 @@ Search.appendIndex(
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceInterface\u003A\u003AgetRow\u0028\u0029",
"name": "getRow",
- "summary": "Fetches\u0020one\u0020row\u0020of\u0020luminance\u0020data\u0020from\u0020the\u0020underlying\u0020platform\u0027s\u0020bitmap.\u0020Values\u0020range\u0020from\n0\u0020\u0028black\u0029\u0020to\u0020255\u0020\u0028white\u0029.\u0020Because\u0020Java\u0020does\u0020not\u0020have\u0020an\u0020unsigned\u0020byte\u0020type,\u0020callers\u0020will\u0020have\nto\u0020bitwise\u0020and\u0020with\u00200xff\u0020for\u0020each\u0020value.\u0020It\u0020is\u0020preferable\u0020for\u0020implementations\u0020of\u0020this\u0020method\nto\u0020only\u0020fetch\u0020this\u0020row\u0020rather\u0020than\u0020the\u0020whole\u0020image,\u0020since\u0020no\u00202D\u0020Readers\u0020may\u0020be\u0020installed\u0020and\ngetMatrix\u0028\u0029\u0020may\u0020never\u0020be\u0020called.",
+ "summary": "Fetches\u0020one\u0020row\u0020of\u0020luminance\u0020data\u0020from\u0020the\u0020underlying\u0020platform\u0027s\u0020bitmap.\u0020Values\u0020range\u0020from\n0\u0020\u0028black\u0029\u0020to\u0020255\u0020\u0028white\u0029.\u0020Because\u0020Java\u0020does\u0020not\u0020have\u0020an\u0020unsigned\u0020byte\u0020type,\u0020callers\u0020will\u0020have\nto\u0020bitwise\u0020and\u0020with\u00200xff\u0020for\u0020each\u0020value.\u0020It\u0020is\u0020preferable\u0020for\u0020implementations\u0020of\u0020this\u0020method\nto\u0020only\u0020fetch\u0020this\u0020row\u0020rather\u0020than\u0020the\u0020whole\u0020image,\u0020since\u0020no\u00202D\u0020Readers\u0020may\u0020be\u0020installed\u0020and\ngetLuminances\u0028\u0029\u0020may\u0020never\u0020be\u0020called.",
"url": "classes/chillerlan-QRCode-Decoder-LuminanceSourceInterface.html#method_getRow"
}, {
"fqsen": "\\chillerlan\\QRCode\\Decoder\\LuminanceSourceInterface\u003A\u003AfromFile\u0028\u0029",
@@ -1826,10 +1736,10 @@ Search.appendIndex(
"summary": "After\u0020a\u0020horizontal\u0020scan\u0020finds\u0020a\u0020potential\u0020alignment\u0020pattern,\u0020this\u0020method\n\u0022cross\u002Dchecks\u0022\u0020by\u0020scanning\u0020down\u0020vertically\u0020through\u0020the\u0020center\u0020of\u0020the\u0020possible\nalignment\u0020pattern\u0020to\u0020see\u0020if\u0020the\u0020same\u0020proportion\u0020is\u0020detected.",
"url": "classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html#method_crossCheckVertical"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Detector\\AlignmentPatternFinder\u003A\u003A\u0024bitMatrix",
- "name": "bitMatrix",
+ "fqsen": "\\chillerlan\\QRCode\\Detector\\AlignmentPatternFinder\u003A\u003A\u0024matrix",
+ "name": "matrix",
"summary": "",
- "url": "classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html#property_bitMatrix"
+ "url": "classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html#property_matrix"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\AlignmentPatternFinder\u003A\u003A\u0024moduleSize",
"name": "moduleSize",
@@ -1891,10 +1801,10 @@ Search.appendIndex(
"summary": "",
"url": "classes/chillerlan-QRCode-Detector-Detector.html#method_createTransform"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Detector\\Detector\u003A\u003A\u0024bitMatrix",
- "name": "bitMatrix",
+ "fqsen": "\\chillerlan\\QRCode\\Detector\\Detector\u003A\u003A\u0024matrix",
+ "name": "matrix",
"summary": "",
- "url": "classes/chillerlan-QRCode-Detector-Detector.html#property_bitMatrix"
+ "url": "classes/chillerlan-QRCode-Detector-Detector.html#property_matrix"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPattern",
"name": "FinderPattern",
@@ -2046,10 +1956,10 @@ Search.appendIndex(
"summary": "",
"url": "classes/chillerlan-QRCode-Detector-FinderPatternFinder.html#constant_CENTER_QUORUM"
}, {
- "fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003A\u0024bitMatrix",
- "name": "bitMatrix",
+ "fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003A\u0024matrix",
+ "name": "matrix",
"summary": "",
- "url": "classes/chillerlan-QRCode-Detector-FinderPatternFinder.html#property_bitMatrix"
+ "url": "classes/chillerlan-QRCode-Detector-FinderPatternFinder.html#property_matrix"
}, {
"fqsen": "\\chillerlan\\QRCode\\Detector\\FinderPatternFinder\u003A\u003A\u0024possibleCenters",
"name": "possibleCenters",
diff --git a/namespaces/chillerlan-qrcode-common.html b/namespaces/chillerlan-qrcode-common.html
index 2e1fa1056..f04d084e4 100644
--- a/namespaces/chillerlan-qrcode-common.html
+++ b/namespaces/chillerlan-qrcode-common.html
@@ -115,8 +115,6 @@
This class encapsulates the four error correction levels defined by the QR code standard.
ECICharset
- FormatInformation
- Encapsulates a QR Code's format information, including the data mask used and error correction level.
GenericGFPoly
Represents a polynomial whose coefficients are elements of a GF.
GF256
diff --git a/namespaces/chillerlan-qrcode-decoder.html b/namespaces/chillerlan-qrcode-decoder.html
index dc0dfe43f..58f115eb1 100644
--- a/namespaces/chillerlan-qrcode-decoder.html
+++ b/namespaces/chillerlan-qrcode-decoder.html
@@ -117,7 +117,8 @@ 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.
BitMatrix
-
+ Holds a numerical representation of the final QR Code;
+maps the ECC coded binary data and applies the mask pattern
Decoder
The main class which implements QR Code decoding -- as opposed to locating and extracting
the QR Code from an image.
diff --git a/packages/Application.html b/packages/Application.html
index 75b9a7363..f77dc7797 100644
--- a/packages/Application.html
+++ b/packages/Application.html
@@ -119,8 +119,6 @@
This class encapsulates the four error correction levels defined by the QR code standard.
ECICharset
- FormatInformation
- Encapsulates a QR Code's format information, including the data mask used and error correction level.
GenericGFPoly
Represents a polynomial whose coefficients are elements of a GF.
GF256
@@ -162,7 +160,8 @@ 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.
BitMatrix
-
+ Holds a numerical representation of the final QR Code;
+maps the ECC coded binary data and applies the mask pattern
Decoder
The main class which implements QR Code decoding -- as opposed to locating and extracting
the QR Code from an image.