From f03f95325a37f33ca1049088409473162ef1eeba Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Wed, 16 May 2007 10:27:36 +0000 Subject: [PATCH] Upgraded OpenDocumentMetadataExtracter to new infrastructure. Added more OpenDocument test documents. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5690 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../AbstractMappingMetadataExtracter.java | 90 ++++++++++++++---- .../AbstractMetadataExtracterTest.java | 13 ++- .../content/metadata/MetadataExtracter.java | 1 + .../metadata/OfficeMetadataExtracter.java | 63 +++++++++--- .../metadata/OfficeMetadataExtracterTest.java | 8 +- .../OpenDocumentMetadataExtracter.java | 78 ++++++++++++--- .../OpenDocumentMetadataExtracter.properties | 21 ++++ .../OpenDocumentMetadataExtracterTest.java | 48 ++++++++++ source/test-resources/quick/quick.odf | Bin 4723 -> 3926 bytes source/test-resources/quick/quick.odg | Bin 40767 -> 43270 bytes source/test-resources/quick/quick.otg | Bin 0 -> 43284 bytes source/test-resources/quick/quick.otp | Bin 0 -> 10381 bytes source/test-resources/quick/quick.ots | Bin 0 -> 9834 bytes source/test-resources/quick/quick.ott | Bin 0 -> 7568 bytes 14 files changed, 273 insertions(+), 49 deletions(-) create mode 100644 source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.properties create mode 100644 source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracterTest.java create mode 100644 source/test-resources/quick/quick.otg create mode 100644 source/test-resources/quick/quick.otp create mode 100644 source/test-resources/quick/quick.ots create mode 100644 source/test-resources/quick/quick.ott diff --git a/source/java/org/alfresco/repo/content/metadata/AbstractMappingMetadataExtracter.java b/source/java/org/alfresco/repo/content/metadata/AbstractMappingMetadataExtracter.java index ed80676a2a..dd91e4d116 100644 --- a/source/java/org/alfresco/repo/content/metadata/AbstractMappingMetadataExtracter.java +++ b/source/java/org/alfresco/repo/content/metadata/AbstractMappingMetadataExtracter.java @@ -26,6 +26,7 @@ package org.alfresco.repo.content.metadata; import java.io.InputStream; import java.io.Serializable; +import java.lang.reflect.Array; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -62,7 +63,7 @@ import org.apache.commons.logging.LogFactory; *
  • * Implement the {@link extractInternal} method. This now returns a raw map of extracted * values keyed by document-specific property names. The trimPut method has - * been replaced with an equivalent {@link #putSafeRawValue(String, Object, Map)}. + * been replaced with an equivalent {@link #putRawValue(String, Serializable, Map)}. *
  • *
  • * Provide the default mapping of the document-specific properties to system-specific @@ -241,6 +242,28 @@ abstract public class AbstractMappingMetadataExtracter implements MetadataExtrac mapping = readMappingProperties(mappingProperties); } + /** + * Helper method for derived classes to obtain the mappings that will be applied to raw + * values. This should be called after initialization in order to guarantee the complete + * map is given. + *

    + * Normally, the list of properties that can be extracted from a document is fixed and + * well-known - in that case, just extract everything. But Some implementations may have + * an extra, indeterminate set of values available for extraction. If the extraction of + * these runtime parameters is expensive, then the keys provided by the return value can + * be used to extract values from the documents. The metadata extraction becomes fully + * configuration-driven, i.e. declaring further mappings will result in more values being + * extracted from the documents. + */ + protected final Map> getMapping() + { + if (!initialized) + { + throw new UnsupportedOperationException("The complete mapping is only available after initialization."); + } + return Collections.unmodifiableMap(mapping); + } + /** * A utility method to read mapping properties from a resource file and convert to the map form. * @@ -566,17 +589,26 @@ abstract public class AbstractMappingMetadataExtracter implements MetadataExtrac } return systemProperties; } - + /** - * Examines a value or string for nulls and adds it to the map (if non-empty). If the value - * is non-Serializable, then the toString representation used directly. + * Adds a value to the map if it is non-trivial. A value is trivial if + *

    + * String values are trimmed before being put into the map. + * Otherwise, it is up to the extracter to ensure that the value is a Serializable. + * It is not appropriate to implicitly convert values in order to make them Serializable + * - the best conversion method will depend on the value's specific meaning. * - * @param key the destination map key - * @param value the value to check and put. - * @param destination map to put values into - * @return Returns true if set, false otherwise + * @param key the destination key + * @param value the serializable value + * @param destination the map to put values into + * @return Returns true if set, otherwise false */ - protected boolean putSafeRawValue(String key, Object value, Map destination) + protected boolean putRawValue(String key, Serializable value, Map destination) { if (value == null) { @@ -584,25 +616,47 @@ abstract public class AbstractMappingMetadataExtracter implements MetadataExtrac } if (value instanceof String) { - String svalue = ((String) value).trim(); - if (svalue.length() > 0) + String valueStr = ((String) value).trim(); + if (valueStr.length() == 0) { - destination.put(key, svalue); - return true; + return false; + } + else + { + // Keep the trimmed value + value = valueStr; } - return false; } - else if (value instanceof Serializable) + else if (value instanceof Collection) { - destination.put(key, (Serializable) value); + Collection valueCollection = (Collection) value; + if (valueCollection.isEmpty()) + { + return false; + } } - else + else if (value.getClass().isArray()) { - destination.put(key, value.toString()); + if (Array.getLength(value) == 0) + { + return false; + } } + // It passed all the tests + destination.put(key, value); return true; } + /** + * Helper method to fetch a clean map into which raw values can be dumped. + * + * @return Returns an empty map + */ + protected final Map newRawMap() + { + return new HashMap(17); + } + /** * This method provides a best guess of where to store the values extracted * from the documents. The list of properties mapped by default need not diff --git a/source/java/org/alfresco/repo/content/metadata/AbstractMetadataExtracterTest.java b/source/java/org/alfresco/repo/content/metadata/AbstractMetadataExtracterTest.java index 526e3ef48c..249c5fc709 100644 --- a/source/java/org/alfresco/repo/content/metadata/AbstractMetadataExtracterTest.java +++ b/source/java/org/alfresco/repo/content/metadata/AbstractMetadataExtracterTest.java @@ -86,9 +86,16 @@ public abstract class AbstractMetadataExtracterTest extends TestCase protected void testExtractFromMimetype(String mimetype) throws Exception { - Map properties = extractFromMimetype(mimetype); - // check - testCommonMetadata(mimetype, properties); + try + { + Map properties = extractFromMimetype(mimetype); + // check + testCommonMetadata(mimetype, properties); + } + catch (FileNotFoundException e) + { + // The test file is not there. We won't fail it. + } } protected Map extractFromMimetype(String mimetype) throws Exception diff --git a/source/java/org/alfresco/repo/content/metadata/MetadataExtracter.java b/source/java/org/alfresco/repo/content/metadata/MetadataExtracter.java index 8759f2f078..96a0e35afb 100644 --- a/source/java/org/alfresco/repo/content/metadata/MetadataExtracter.java +++ b/source/java/org/alfresco/repo/content/metadata/MetadataExtracter.java @@ -45,6 +45,7 @@ public interface MetadataExtracter * written into the property map or not. * * @author Derek Hulley + * @author Jesper Steen Møller */ public enum OverwritePolicy { diff --git a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java index 4f2b36f091..9b878b7917 100644 --- a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java +++ b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java @@ -28,7 +28,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.Serializable; import java.util.Arrays; -import java.util.HashMap; import java.util.HashSet; import java.util.Map; @@ -43,18 +42,46 @@ import org.apache.poi.poifs.eventfilesystem.POIFSReaderEvent; import org.apache.poi.poifs.eventfilesystem.POIFSReaderListener; /** - * Office file format Metadata Extracter + * Office file format Metadata Extracter. This extracter uses the POI library to extract + * the following: + *
    + *   author:             --      cm:author
    + *   title:              --      cm:title
    + *   subject:            --      cm:description
    + *   createDateTime:     --      cm:created
    + *   lastSaveDateTime:   --      cm:modified
    + *   comments:
    + *   editTime:
    + *   format:
    + *   keywords:
    + *   lastAuthor:
    + *   lastPrinted:
    + *   osVersion:
    + *   thumbnail:
    + *   pageCount:
    + *   wordCount:
    + * 
    * * @author Jesper Steen Møller * @author Derek Hulley */ public class OfficeMetadataExtracter extends AbstractMappingMetadataExtracter { - public static final String PROP_AUTHOR = "author"; - public static final String PROP_TITLE = "title"; - public static final String PROP_SUBJECT = "subject"; - public static final String PROP_CREATE_DATETIME = "createDateTime"; - public static final String PROP_LAST_SAVE_DATETIME = "lastSaveDateTime"; + public static final String KEY_AUTHOR = "author"; + public static final String KEY_TITLE = "title"; + public static final String KEY_SUBJECT = "subject"; + public static final String KEY_CREATE_DATETIME = "createDateTime"; + public static final String KEY_LAST_SAVE_DATETIME = "lastSaveDateTime"; + public static final String KEY_COMMENTS = "comments"; + public static final String KEY_EDIT_TIME = "editTime"; + public static final String KEY_FORMAT = "format"; + public static final String KEY_KEYWORDS = "keywords"; + public static final String KEY_LAST_AUTHOR = "lastAuthor"; + public static final String KEY_LAST_PRINTED = "lastPrinted"; + public static final String KEY_OS_VERSION = "osVersion"; + public static final String KEY_THUMBNAIL = "thumbnail"; + public static final String KEY_PAGE_COUNT = "pageCount"; + public static final String KEY_WORD_COUNT = "wordCount"; public static String[] SUPPORTED_MIMETYPES = new String[] { MimetypeMap.MIMETYPE_WORD, @@ -69,7 +96,7 @@ public class OfficeMetadataExtracter extends AbstractMappingMetadataExtracter @Override protected Map extractRaw(ContentReader reader) throws Throwable { - final Map rawProperties = new HashMap(17); + final Map rawProperties = newRawMap(); POIFSReaderListener readerListener = new POIFSReaderListener() { @@ -82,11 +109,21 @@ public class OfficeMetadataExtracter extends AbstractMappingMetadataExtracter { SummaryInformation si = (SummaryInformation) ps; - putSafeRawValue(PROP_AUTHOR, si.getAuthor(), rawProperties); - putSafeRawValue(PROP_TITLE, si.getTitle(), rawProperties); - putSafeRawValue(PROP_SUBJECT, si.getSubject(), rawProperties); - putSafeRawValue(PROP_CREATE_DATETIME, si.getCreateDateTime(), rawProperties); - putSafeRawValue(PROP_LAST_SAVE_DATETIME, si.getLastSaveDateTime(), rawProperties); + putRawValue(KEY_AUTHOR, si.getAuthor(), rawProperties); + putRawValue(KEY_TITLE, si.getTitle(), rawProperties); + putRawValue(KEY_SUBJECT, si.getSubject(), rawProperties); + putRawValue(KEY_CREATE_DATETIME, si.getCreateDateTime(), rawProperties); + putRawValue(KEY_LAST_SAVE_DATETIME, si.getLastSaveDateTime(), rawProperties); + putRawValue(KEY_COMMENTS, si.getComments(), rawProperties); + putRawValue(KEY_EDIT_TIME, si.getEditTime(), rawProperties); + putRawValue(KEY_FORMAT, si.getFormat(), rawProperties); + putRawValue(KEY_KEYWORDS, si.getKeywords(), rawProperties); + putRawValue(KEY_LAST_AUTHOR, si.getLastAuthor(), rawProperties); + putRawValue(KEY_LAST_PRINTED, si.getLastPrinted(), rawProperties); + putRawValue(KEY_OS_VERSION, si.getOSVersion(), rawProperties); + putRawValue(KEY_THUMBNAIL, si.getThumbnail(), rawProperties); + putRawValue(KEY_PAGE_COUNT, si.getPageCount(), rawProperties); + putRawValue(KEY_WORD_COUNT, si.getWordCount(), rawProperties); } } catch (Exception ex) diff --git a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracterTest.java b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracterTest.java index f31ab28116..70bd2dd344 100644 --- a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracterTest.java +++ b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracterTest.java @@ -2,7 +2,7 @@ package org.alfresco.repo.content.metadata; /** - * @see org.alfresco.repo.content.transform.OfficeMetadataExtracter + * @see OfficeMetadataExtracter * * @author Jesper Steen Møller */ @@ -26,12 +26,12 @@ public class OfficeMetadataExtracterTest extends AbstractMetadataExtracterTest return extracter; } - public void testReliability() throws Exception + public void testSupports() throws Exception { for (String mimetype : OfficeMetadataExtracter.SUPPORTED_MIMETYPES) { - double reliability = extracter.getReliability(mimetype); - assertTrue("Expected above zero reliability", reliability > 0.0); + boolean supports = extracter.isSupported(mimetype); + assertTrue("Mimetype should be supported: " + mimetype, supports); } } diff --git a/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.java b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.java index bf88f49bb3..039fc249c0 100644 --- a/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.java +++ b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.java @@ -29,9 +29,10 @@ import java.io.InputStream; import java.io.Serializable; import java.util.Arrays; import java.util.HashSet; +import java.util.Hashtable; import java.util.Map; +import java.util.Set; -import org.alfresco.model.ContentModel; import org.alfresco.repo.content.MimetypeMap; import org.alfresco.service.cmr.repository.ContentReader; import org.alfresco.service.namespace.QName; @@ -43,12 +44,39 @@ import com.catcode.odf.OpenDocumentMetadata; * Metadata extractor for the * {@link org.alfresco.repo.content.MimetypeMap#MIMETYPE_OPENDOCUMENT_TEXT MIMETYPE_OPENDOCUMENT_XXX} * mimetypes. + *
    + *   creationDate:           --      cm:created
    + *   creator:                --      cm:author
    + *   date:
    + *   description:            --      cm:description
    + *   generator:
    + *   initialCreator:
    + *   keyword:
    + *   language:
    + *   printDate:
    + *   printedBy:
    + *   subject:
    + *   title:                  --      cm:title
    + * 
    * * @author Antti Jokipii */ -public class OpenDocumentMetadataExtracter extends AbstractMetadataExtracter +public class OpenDocumentMetadataExtracter extends AbstractMappingMetadataExtracter { - private static String[] mimeTypes = new String[] { + private static final String KEY_CREATION_DATE = "creationDate"; + private static final String KEY_CREATOR = "creator"; + private static final String KEY_DATE = "date"; + private static final String KEY_DESCRIPTION = "description"; + private static final String KEY_GENERATOR = "generator"; + private static final String KEY_INITIAL_CREATOR = "initialCreator"; + private static final String KEY_KEYWORD = "keyword"; + private static final String KEY_LANGUAGE = "language"; + private static final String KEY_PRINT_DATE = "printDate"; + private static final String KEY_PRINTED_BY = "printedBy"; + private static final String KEY_SUBJECT = "subject"; + private static final String KEY_TITLE = "title"; + + public static String[] SUPPORTED_MIMETYPES = new String[] { MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT, MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT_TEMPLATE, MimetypeMap.MIMETYPE_OPENDOCUMENT_GRAPHICS, @@ -65,15 +93,18 @@ public class OpenDocumentMetadataExtracter extends AbstractMetadataExtracter MimetypeMap.MIMETYPE_OPENDOCUMENT_FORMULA_TEMPLATE, MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT_MASTER, MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT_WEB, - MimetypeMap.MIMETYPE_OPENDOCUMENT_DATABASE, }; + MimetypeMap.MIMETYPE_OPENDOCUMENT_DATABASE }; public OpenDocumentMetadataExtracter() { - super(new HashSet(Arrays.asList(mimeTypes)), 1.00, 1000); + super(new HashSet(Arrays.asList(SUPPORTED_MIMETYPES))); } - public void extractInternal(ContentReader reader, Map destination) throws Throwable + @Override + public Map extractRaw(ContentReader reader) throws Throwable { + Map rawProperties = newRawMap(); + ODFMetaFileAnalyzer analyzer = new ODFMetaFileAnalyzer(); InputStream is = null; try @@ -84,11 +115,34 @@ public class OpenDocumentMetadataExtracter extends AbstractMetadataExtracter if (docInfo != null) { - // set the metadata - destination.put(ContentModel.PROP_AUTHOR, docInfo.getCreator()); - destination.put(ContentModel.PROP_TITLE, docInfo.getTitle()); - destination.put(ContentModel.PROP_DESCRIPTION, docInfo.getDescription()); - destination.put(ContentModel.PROP_CREATED, docInfo.getCreationDate()); + putRawValue(KEY_CREATION_DATE, docInfo.getCreationDate(), rawProperties); + putRawValue(KEY_CREATOR, docInfo.getCreator(), rawProperties); + putRawValue(KEY_DATE, docInfo.getDate(), rawProperties); + putRawValue(KEY_DESCRIPTION, docInfo.getDescription(), rawProperties); + putRawValue(KEY_GENERATOR, docInfo.getGenerator(), rawProperties); + putRawValue(KEY_INITIAL_CREATOR, docInfo.getInitialCreator(), rawProperties); + putRawValue(KEY_KEYWORD, docInfo.getKeyword(), rawProperties); + putRawValue(KEY_LANGUAGE, docInfo.getLanguage(), rawProperties); + putRawValue(KEY_PRINT_DATE, docInfo.getPrintDate(), rawProperties); + putRawValue(KEY_PRINTED_BY, docInfo.getPrintedBy(), rawProperties); + putRawValue(KEY_SUBJECT, docInfo.getSubject(), rawProperties); + putRawValue(KEY_TITLE, docInfo.getTitle(), rawProperties); + + // Handle user-defined properties dynamically + Map> mapping = super.getMapping(); + Hashtable userDefinedProperties = docInfo.getUserDefined(); + // Extract those user properties for which there is a mapping + for (String key : mapping.keySet()) + { + if (userDefinedProperties.containsKey(key)) + { + Object value = userDefinedProperties.get(key); + if (value != null && value instanceof Serializable) + { + putRawValue(key, (Serializable) value, rawProperties); + } + } + } } } finally @@ -98,5 +152,7 @@ public class OpenDocumentMetadataExtracter extends AbstractMetadataExtracter try { is.close(); } catch (IOException e) {} } } + // Done + return rawProperties; } } \ No newline at end of file diff --git a/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.properties b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.properties new file mode 100644 index 0000000000..a74de9d296 --- /dev/null +++ b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracter.properties @@ -0,0 +1,21 @@ +# +# OpenDocumentMetadataExtracter - default mapping +# +# author: Derek Hulley + +# Namespaces +namespace.prefix.cm=http://www.alfresco.org/model/content/1.0 + +# Mappings +creationDate=cm:created +creator=cm:author +date= +description= +generator= +initialCreator= +keyword= +language= +printDate= +printedBy= +subject=cm:description +title=cm:title diff --git a/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracterTest.java b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracterTest.java new file mode 100644 index 0000000000..5aa9fc4a29 --- /dev/null +++ b/source/java/org/alfresco/repo/content/metadata/OpenDocumentMetadataExtracterTest.java @@ -0,0 +1,48 @@ +package org.alfresco.repo.content.metadata; + + +/** + * @see OpenDocumentMetadataExtracter + * + * @author Derek Hulley + */ +public class OpenDocumentMetadataExtracterTest extends AbstractMetadataExtracterTest +{ + private OpenDocumentMetadataExtracter extracter; + + @Override + public void setUp() throws Exception + { + super.setUp(); + extracter = new OpenDocumentMetadataExtracter(); + extracter.register(); + } + + /** + * @return Returns the same transformer regardless - it is allowed + */ + protected MetadataExtracter getExtracter() + { + return extracter; + } + + public void testSupports() throws Exception + { + for (String mimetype : OpenDocumentMetadataExtracter.SUPPORTED_MIMETYPES) + { + boolean supports = extracter.isSupported(mimetype); + assertTrue("Mimetype should be supported: " + mimetype, supports); + } + } + + /** + * Test all the supported mimetypes + */ + public void testSupportedMimetypes() throws Exception + { + for (String mimetype : OpenDocumentMetadataExtracter.SUPPORTED_MIMETYPES) + { + testExtractFromMimetype(mimetype); + } + } +} diff --git a/source/test-resources/quick/quick.odf b/source/test-resources/quick/quick.odf index 963f9f77c659c3300c88d9e27eed5efcb735f3a0..a8987b6aad86c6c94e89b539175c03cde9729fcc 100644 GIT binary patch literal 3926 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 literal 4723 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 z zk2hx}wq5yhCFNXP`V)629FjOlMww``M0cj>#ANhGfX|7RTfrn;n_Hu9SvLg>>FG>L`sKp=yBT+oJ1h0QF#}D}ko79;v;Z3kvfU@0~v|HAP zOpv#AgQZOLvjEw<%f-@tS2B+t@EOimVmb#4jCdgVg1Ug^`!< zPp+hb%XRHO;H; z(Z?Fay-xS=W!h=}@pT_>mbxW347KbM^eI|ZnA7nB_)k+q!*obDLhsre?lo&T;lceC z7<@%R%+u4`#SToRUXV%=X6Ke?nV&%MTt2l;7T7 zr=^wHvD17-G@X}ps`5Fw-^b2tIuj^)TCYFG41)C{?77-`L#jC_pP6u; zdSY7;M>A&@=Z%~T;!OE^=9FTV!;Ze>#Jm~w=?_uWMbcsDd)v*vF15*cdG%iC?E{3= z#w0!Ze0)lzZ(OT4RJ#A8!?E2{FKxX|ZLM1CnGxm&!_*#E`=I?}&-axY7{=<+;_u{k zCCG>CM(O7sM_(*Bz!S9ZNq%y1g?K`b?(@MgT2cKTPheeZ(#lbxhY8YIqFCfBgXpFy zxm)q#)yYWN!mICFAM{tigo`D+ZF4W|oeq%Y8gICL#y=IT^mY%R) zSx;D*wg>?Jxo|-@_a^#T#z30>$+ZarV3a3*6O!Kj?_$LU_s@fGa{|pMSNx`6dUsRt z;%~Ko=hwd(*|yMYF7#B8ad!UX`l)X73Cu_-ev>i%O#Y_?<8LXO-IZ}#|0ZS5KhN&J hIX9c1;m*IwjOQPm8)?eQ#(=TYe>wD(t5`Ske*mIQvxfix diff --git a/source/test-resources/quick/quick.odg b/source/test-resources/quick/quick.odg index a383a283aabac8a8cd6760923b94b0a48f496e4a..3ab30c124f620553fac8ac9173f3031223d13013 100644 GIT binary patch delta 10409 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�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 literal 0 HcmV?d00001 diff --git a/source/test-resources/quick/quick.ots b/source/test-resources/quick/quick.ots new file mode 100644 index 0000000000000000000000000000000000000000..0d0f6bac1e3062a4a65957ea286fa5569057b89b GIT binary patch literal 9834 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 AC;$Ke literal 0 HcmV?d00001