diff options
Diffstat (limited to 'xfa/src/fxbarcode/common')
28 files changed, 61 insertions, 15 deletions
diff --git a/xfa/src/fxbarcode/common/BC_CommonBitArray.cpp b/xfa/src/fxbarcode/common/BC_CommonBitArray.cpp index 7801746701..43f1758720 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitArray.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonBitArray.cpp @@ -20,8 +20,9 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonBitArray.h" +#include "xfa/src/fxbarcode/utils.h" + CBC_CommonBitArray::CBC_CommonBitArray(CBC_CommonBitArray* array) { m_size = array->GetSize(); m_bits.Copy(array->GetBits()); diff --git a/xfa/src/fxbarcode/common/BC_CommonBitArray.h b/xfa/src/fxbarcode/common/BC_CommonBitArray.h index c2364c2bc8..bf2b3559b7 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitArray.h +++ b/xfa/src/fxbarcode/common/BC_CommonBitArray.h @@ -7,6 +7,8 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITARRAY_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITARRAY_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_CommonBitArray { public: CBC_CommonBitArray(CBC_CommonBitArray* array); diff --git a/xfa/src/fxbarcode/common/BC_CommonBitMatrix.cpp b/xfa/src/fxbarcode/common/BC_CommonBitMatrix.cpp index aa4cb2c243..e346967a27 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitMatrix.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonBitMatrix.cpp @@ -20,9 +20,10 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonBitArray.h" #include "xfa/src/fxbarcode/common/BC_CommonBitMatrix.h" +#include "xfa/src/fxbarcode/utils.h" + CBC_CommonBitMatrix::CBC_CommonBitMatrix() { m_width = 0; m_height = 0; diff --git a/xfa/src/fxbarcode/common/BC_CommonBitMatrix.h b/xfa/src/fxbarcode/common/BC_CommonBitMatrix.h index 75e0b43502..86838a1d91 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitMatrix.h +++ b/xfa/src/fxbarcode/common/BC_CommonBitMatrix.h @@ -7,7 +7,10 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITMATRIX_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITMATRIX_H_ +#include "core/include/fxcrt/fx_system.h" + class CBC_CommonBitArray; + class CBC_CommonBitMatrix { public: CBC_CommonBitMatrix(); diff --git a/xfa/src/fxbarcode/common/BC_CommonBitSource.cpp b/xfa/src/fxbarcode/common/BC_CommonBitSource.cpp index 19bfe3eab7..dc10002f84 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitSource.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonBitSource.cpp @@ -20,8 +20,8 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonBitSource.h" + CBC_CommonBitSource::CBC_CommonBitSource(CFX_ByteArray* bytes) { m_bytes.Copy((*bytes)); m_bitOffset = 0; diff --git a/xfa/src/fxbarcode/common/BC_CommonBitSource.h b/xfa/src/fxbarcode/common/BC_CommonBitSource.h index 546e5e9d5c..0e2a4bfb58 100644 --- a/xfa/src/fxbarcode/common/BC_CommonBitSource.h +++ b/xfa/src/fxbarcode/common/BC_CommonBitSource.h @@ -7,6 +7,9 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITSOURCE_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONBITSOURCE_H_ +#include "core/include/fxcrt/fx_basic.h" +#include "xfa/src/fxbarcode/utils.h" + class CBC_CommonBitSource { public: CBC_CommonBitSource(CFX_ByteArray* bytes); diff --git a/xfa/src/fxbarcode/common/BC_CommonByteArray.cpp b/xfa/src/fxbarcode/common/BC_CommonByteArray.cpp index 7917dcc198..e085ffcec2 100644 --- a/xfa/src/fxbarcode/common/BC_CommonByteArray.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonByteArray.cpp @@ -22,8 +22,8 @@ #include <algorithm> -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonByteArray.h" + CBC_CommonByteArray::CBC_CommonByteArray() { m_bytes = NULL; m_size = 0; diff --git a/xfa/src/fxbarcode/common/BC_CommonByteArray.h b/xfa/src/fxbarcode/common/BC_CommonByteArray.h index 1653596e57..c8fb05d50a 100644 --- a/xfa/src/fxbarcode/common/BC_CommonByteArray.h +++ b/xfa/src/fxbarcode/common/BC_CommonByteArray.h @@ -7,6 +7,8 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONBYTEARRAY_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONBYTEARRAY_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_CommonByteArray { private: int32_t m_size; diff --git a/xfa/src/fxbarcode/common/BC_CommonByteMatrix.cpp b/xfa/src/fxbarcode/common/BC_CommonByteMatrix.cpp index 302dd99e55..656071fa31 100644 --- a/xfa/src/fxbarcode/common/BC_CommonByteMatrix.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonByteMatrix.cpp @@ -20,8 +20,9 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" +#include "core/include/fxcrt/fx_memory.h" #include "xfa/src/fxbarcode/common/BC_CommonByteMatrix.h" + CBC_CommonByteMatrix::CBC_CommonByteMatrix(int32_t width, int32_t height) { m_height = height; m_width = width; diff --git a/xfa/src/fxbarcode/common/BC_CommonByteMatrix.h b/xfa/src/fxbarcode/common/BC_CommonByteMatrix.h index 371c185659..d9af45d2f3 100644 --- a/xfa/src/fxbarcode/common/BC_CommonByteMatrix.h +++ b/xfa/src/fxbarcode/common/BC_CommonByteMatrix.h @@ -7,6 +7,10 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONBYTEMATRIX_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONBYTEMATRIX_H_ +#include <stdint.h> + +#include "core/include/fxcrt/fx_system.h" + class CBC_CommonByteMatrix { public: CBC_CommonByteMatrix(int32_t width, int32_t height); diff --git a/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.cpp b/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.cpp index 787324deee..58347c37bd 100644 --- a/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.cpp @@ -20,9 +20,9 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h" #include "xfa/src/fxbarcode/common/BC_CommonECI.h" + void CBC_CommonCharacterSetECI::initialize() {} CBC_CommonCharacterSetECI::CBC_CommonCharacterSetECI( int32_t value, diff --git a/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h b/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h index 5575147fbe..c593b94f7a 100644 --- a/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h +++ b/xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h @@ -7,6 +7,7 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONCHARACTERSETECI_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONCHARACTERSETECI_H_ +#include "core/include/fxcrt/fx_string.h" #include "xfa/src/fxbarcode/common/BC_CommonECI.h" class CBC_CommonCharacterSetECI : public CBC_CommonECI { diff --git a/xfa/src/fxbarcode/common/BC_CommonDecoderResult.cpp b/xfa/src/fxbarcode/common/BC_CommonDecoderResult.cpp index 9df2c31c21..5342cfcca7 100644 --- a/xfa/src/fxbarcode/common/BC_CommonDecoderResult.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonDecoderResult.cpp @@ -20,10 +20,12 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" +#include "core/include/fxcrt/fx_basic.h" #include "xfa/src/fxbarcode/common/BC_CommonDecoderResult.h" #include "xfa/src/fxbarcode/pdf417/BC_PDF417ResultMetadata.h" #include "xfa/src/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.h" +#include "xfa/src/fxbarcode/utils.h" + CBC_CommonDecoderResult::CBC_CommonDecoderResult() {} void CBC_CommonDecoderResult::Init(const CFX_ByteArray& rawBytes, const CFX_ByteString& text, diff --git a/xfa/src/fxbarcode/common/BC_CommonDecoderResult.h b/xfa/src/fxbarcode/common/BC_CommonDecoderResult.h index 219a9f3a87..185f38d082 100644 --- a/xfa/src/fxbarcode/common/BC_CommonDecoderResult.h +++ b/xfa/src/fxbarcode/common/BC_CommonDecoderResult.h @@ -7,8 +7,11 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONDECODERRESULT_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONDECODERRESULT_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_QRCoderErrorCorrectionLevel; class CBC_PDF417ResultMetadata; + class CBC_CommonDecoderResult { public: CBC_CommonDecoderResult(); diff --git a/xfa/src/fxbarcode/common/BC_CommonECI.cpp b/xfa/src/fxbarcode/common/BC_CommonECI.cpp index b6be150eb4..146c9e24ba 100644 --- a/xfa/src/fxbarcode/common/BC_CommonECI.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonECI.cpp @@ -20,9 +20,10 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonCharacterSetECI.h" #include "xfa/src/fxbarcode/common/BC_CommonECI.h" +#include "xfa/src/fxbarcode/utils.h" + CBC_CommonECI::CBC_CommonECI(int32_t value) { m_value = value; } diff --git a/xfa/src/fxbarcode/common/BC_CommonECI.h b/xfa/src/fxbarcode/common/BC_CommonECI.h index 3f46b3560c..e0dc797fbf 100644 --- a/xfa/src/fxbarcode/common/BC_CommonECI.h +++ b/xfa/src/fxbarcode/common/BC_CommonECI.h @@ -7,6 +7,8 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONECI_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONECI_H_ +#include <stdint.h> + class CBC_CommonECI { public: CBC_CommonECI(int32_t value); diff --git a/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.cpp b/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.cpp index 3f8bc44ae3..c0e982cb63 100644 --- a/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.cpp +++ b/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.cpp @@ -20,8 +20,10 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" +#include "core/include/fxcrt/fx_basic.h" #include "xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.h" +#include "xfa/src/fxbarcode/utils.h" + CBC_CommonPerspectiveTransform::CBC_CommonPerspectiveTransform(FX_FLOAT a11, FX_FLOAT a21, FX_FLOAT a31, diff --git a/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.h b/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.h index 70e7bfb1ae..dfe0ce1f2d 100644 --- a/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.h +++ b/xfa/src/fxbarcode/common/BC_CommonPerspectiveTransform.h @@ -7,6 +7,8 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_COMMONPERSPECTIVETRANSFORM_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_COMMONPERSPECTIVETRANSFORM_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_CommonPerspectiveTransform { public: CBC_CommonPerspectiveTransform(FX_FLOAT a11, diff --git a/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp b/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp index 567b357545..6c3920483c 100644 --- a/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp +++ b/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp @@ -22,13 +22,15 @@ #include "xfa/src/fxbarcode/BC_Binarizer.h" #include "xfa/src/fxbarcode/BC_LuminanceSource.h" -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonBitArray.h" #include "xfa/src/fxbarcode/common/BC_CommonBitMatrix.h" #include "xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.h" +#include "xfa/src/fxbarcode/utils.h" + const int32_t LUMINANCE_BITS = 5; const int32_t LUMINANCE_SHIFT = 8 - LUMINANCE_BITS; const int32_t LUMINANCE_BUCKETS = 1 << LUMINANCE_BITS; + CBC_GlobalHistogramBinarizer::CBC_GlobalHistogramBinarizer( CBC_LuminanceSource* source) : CBC_Binarizer(source) {} diff --git a/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.cpp b/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.cpp index 13b852c1f7..05d079c9c4 100644 --- a/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.cpp +++ b/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.cpp @@ -21,11 +21,13 @@ */ #include "xfa/src/fxbarcode/BC_ResultPoint.h" -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/BC_CommonBitMatrix.h" #include "xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.h" +#include "xfa/src/fxbarcode/utils.h" + const int32_t CBC_WhiteRectangleDetector::INIT_SIZE = 30; const int32_t CBC_WhiteRectangleDetector::CORR = 1; + CBC_WhiteRectangleDetector::CBC_WhiteRectangleDetector( CBC_CommonBitMatrix* image) { m_image = image; diff --git a/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.h b/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.h index 32ae819a3f..ccd6a84a0d 100644 --- a/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.h +++ b/xfa/src/fxbarcode/common/BC_WhiteRectangleDetector.h @@ -7,8 +7,11 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_BC_WHITERECTANGLEDETECTOR_H_ #define XFA_SRC_FXBARCODE_COMMON_BC_WHITERECTANGLEDETECTOR_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_CommonBitMatrix; class CBC_ResultPoint; + class CBC_WhiteRectangleDetector { public: CBC_WhiteRectangleDetector(CBC_CommonBitMatrix* image); diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp index 26bc9e4c7b..78c5bdc5e2 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp @@ -20,10 +20,10 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.h" + CBC_ReedSolomonEncoder::CBC_ReedSolomonEncoder(CBC_ReedSolomonGF256* field) { m_field = field; } diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.h b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.h index 339f40ae84..71eacc5e76 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.h +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomon.h @@ -7,8 +7,11 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMON_H_ #define XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMON_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_ReedSolomonGF256; class CBC_ReedSolomonGF256Poly; + class CBC_ReedSolomonEncoder { private: CBC_ReedSolomonGF256* m_field; diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.cpp b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.cpp index 22819c9342..86c8a60c39 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.cpp +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.cpp @@ -20,10 +20,10 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.h" + CBC_ReedSolomonDecoder::CBC_ReedSolomonDecoder(CBC_ReedSolomonGF256* field) { m_field = field; } diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.h b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.h index cb8eefca61..092033ca39 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.h +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonDecoder.h @@ -7,8 +7,11 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMONDECODER_H_ #define XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMONDECODER_H_ +#include "core/include/fxcrt/fx_basic.h" + class CBC_ReedSolomonGF256; class CBC_ReedSolomonGF256Poly; + class CBC_ReedSolomonDecoder { private: CBC_ReedSolomonGF256* m_field; diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.cpp b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.cpp index 2e059acf37..993b9c526a 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.cpp +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.cpp @@ -20,9 +20,9 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.h" + CBC_ReedSolomonGF256* CBC_ReedSolomonGF256::QRCodeFild = NULL; CBC_ReedSolomonGF256* CBC_ReedSolomonGF256::DataMatrixField = NULL; void CBC_ReedSolomonGF256::Initialize() { diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h index d635694c10..b351a03079 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h @@ -7,6 +7,9 @@ #ifndef XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMONGF256_H_ #define XFA_SRC_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMONGF256_H_ +#include "core/include/fxcrt/fx_basic.h" +#include "xfa/src/fxbarcode/utils.h" + class CBC_ReedSolomonGF256Poly; class CBC_ReedSolomonGF256 { public: diff --git a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.cpp b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.cpp index cbcc13e369..baafde023a 100644 --- a/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.cpp +++ b/xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.cpp @@ -20,9 +20,9 @@ * limitations under the License. */ -#include "xfa/src/fxbarcode/barcode.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256.h" #include "xfa/src/fxbarcode/common/reedsolomon/BC_ReedSolomonGF256Poly.h" + CBC_ReedSolomonGF256Poly::CBC_ReedSolomonGF256Poly(CBC_ReedSolomonGF256* field, int32_t coefficients) { if (field == NULL) { |