<commit_before><FindbugsPlugin>
  <Detector class="edu.umd.cs.findbugs.detect.DontCatchIllegalMonitorStateException" 
	speed="fast" disable="false"
    reports="IMSE_DONT_CATCH_IMSE" />
  <Detector class="edu.umd.cs.findbugs.detect.FindFloatMath" speed="moderate" 
	disable="true"
    reports="FL_MATH_USING_FLOAT_PRECISION" />
  <Detector class="edu.umd.cs.findbugs.detect.CloneIdiom" speed="fast" disable="true"
    reports="CN_IDIOM" />
  <Detector class="edu.umd.cs.findbugs.detect.FindFieldSelfAssignment" speed="fast"
    reports="SA_FIELD_SELF_ASSIGNMENT"/>
  <Detector class="edu.umd.cs.findbugs.detect.DroppedException" speed="fast"
    reports="DE_MIGHT_DROP,DE_MIGHT_IGNORE"/>
  <Detector class="edu.umd.cs.findbugs.detect.DumbMethods" speed="fast"
    reports="DM_STRING_CTOR,DM_STRING_VOID_CTOR,DM_GC,DM_BOOLEAN_CTOR"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindDoubleCheck" speed="fast"
    reports="DC_DOUBLECHECK"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindFinalizeInvocations" speed="fast"
    reports="FI_PUBLIC_SHOULD_BE_PROTECTED,FI_EMPTY,FI_NULLIFY_SUPER,FI_USELESS,FI_MISSING_SUPER_CALL,FI_EXPLICIT_INVOCATION"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindHEmismatch" speed="fast"
    reports="EQ_SELF_USE_OBJECT,EQ_SELF_NO_OBJECT,CO_SELF_NO_OBJECT,HE_HASHCODE_USE_OBJECT_EQUALS,HE_HASHCODE_NO_EQUALS,HE_EQUALS_USE_HASHCODE,HE_EQUALS_NO_HASHCODE"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindNakedNotify" speed="fast"
    reports="NN_NAKED_NOTIFY"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindReturnRef" speed="fast"
    reports="MS_EXPOSE_REP,EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindRunInvocations" speed="fast"
    reports="RU_INVOKE_RUN"/>
  <Detector class="edu.umd.cs.findbugs.detect.SwitchFallthrough" speed="fast"
	  disabled="true"
    reports="SF_SWITCH_FALLTHROUGH"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindSpinLoop" speed="fast"
    reports="SP_SPIN_ON_FIELD"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindNonShortCircuit" speed="fast"
    reports="NS_NON_SHORT_CIRCUIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindTwoLockWait" speed="slow"
    reports="2LW_TWO_LOCK_WAIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUnconditionalWait" speed="fast"
    reports="UW_UNCOND_WAIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUninitializedGet" speed="fast"
    reports="UR_UNINIT_READ"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUnsyncGet" speed="fast"
    reports="UG_SYNC_SET_UNSYNC_GET"/>
  <Detector class="edu.umd.cs.findbugs.detect.InitializationChain" speed="fast"
    reports="SI_INSTANCE_BEFORE_FINALS_ASSIGNED,IC_INIT_CIRCULARITY"/>
  <Detector class="edu.umd.cs.findbugs.detect.IteratorIdioms" speed="fast"
    reports="IT_NO_SUCH_ELEMENT"/>
  <Detector class="edu.umd.cs.findbugs.detect.LockedFields" speed="fast" disabled="true"
    reports="IS_INCONSISTENT_SYNC"/>
  <Detector class="edu.umd.cs.findbugs.detect.PreferZeroLengthArrays" speed="fast"
    reports="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/>
  <Detector class="edu.umd.cs.findbugs.detect.EqStringTest" speed="fast" disabled="true"
    reports="ES_COMPARING_STRINGS_WITH_EQ"/>
  <Detector class="edu.umd.cs.findbugs.detect.MutableLock" speed="fast"
    reports="ML_SYNC_ON_UPDATED_FIELD" />
  <Detector class="edu.umd.cs.findbugs.detect.MutableStaticFields" speed="fast"
    reports="MS_OOI_PKGPROTECT,MS_FINAL_PKGPROTECT,MS_SHOULD_BE_FINAL,MS_PKGPROTECT,MS_MUTABLE_HASHTABLE,MS_MUTABLE_ARRAY,MS_CANNOT_BE_FINAL"/>
  <Detector class="edu.umd.cs.findbugs.detect.Naming" speed="fast"
    reports="NM_VERY_CONFUSING,NM_CONFUSING,NM_CONFUSING_METHOD_NAME,NM_LCASE_HASHCODE,NM_LCASE_TOSTRING" />
  <Detector class="edu.umd.cs.findbugs.detect.ReadReturnShouldBeChecked" speed="fast"
    reports="RR_NOT_CHECKED" />
  <Detector class="edu.umd.cs.findbugs.detect.SerializableIdiom" speed="fast"
    reports="SE_NO_SERIALVERSIONID,WS_WRITEOBJECT_SYNC,RS_READOBJECT_SYNC,SE_BAD_FIELD,SE_NONLONG_SERIALVERSIONID,SE_NONSTATIC_SERIALVERSIONID,SE_NONFINAL_SERIALVERSIONID" />
  <Detector class="edu.umd.cs.findbugs.detect.StartInConstructor" speed="fast"
    reports="SC_START_IN_CTOR" />
  <Detector class="edu.umd.cs.findbugs.detect.UnreadFields" speed="fast"
    reports="UWF_UNWRITTEN_FIELD,SS_SHOULD_BE_STATIC,UUF_UNUSED_FIELD,URF_UNREAD_FIELD,SIC_INNER_SHOULD_BE_STATIC" />
  <Detector class="edu.umd.cs.findbugs.detect.WaitInLoop" speed="fast"
    reports="WA_NOT_IN_LOOP,NO_NOTIFY_NOT_NOTIFYALL" />
  <Detector class="edu.umd.cs.findbugs.detect.BCPDoubleCheck" speed="moderate" disabled="true"
    reports="BCPDC_DOUBLECHECK" />
  <Detector class="edu.umd.cs.findbugs.detect.BCPMethodReturnCheck" speed="slow"
    reports="RV_RETURN_VALUE_IGNORED" />
  <Detector class="edu.umd.cs.findbugs.detect.FindNullDeref" speed="moderate"
    reports="NP_ALWAYS_NULL_EXCEPTION,NP_ALWAYS_NULL,NP_NULL_ON_SOME_PATH_EXCEPTION,NP_NULL_ON_SOME_PATH,RCN_REDUNDANT_COMPARISON_TO_NULL" />
  <Detector class="edu.umd.cs.findbugs.detect.FindOpenStream" speed="moderate"
    reports="OS_OPEN_STREAM,OS_OPEN_STREAM_EXCEPTION_PATH,ODR_OPEN_DATABASE_RESOURCE,ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH" />
  <Detector class="edu.umd.cs.findbugs.detect.FindUselessControlFlow" speed="fast"
    reports="UCF_USELESS_CONTROL_FLOW" />
  <Detector class="edu.umd.cs.findbugs.detect.FindUnreleasedLock" speed="moderate" disabled="true"
    reports="UL_UNRELEASED_LOCK,UL_UNRELEASED_LOCK_EXCEPTION_PATH" />
  <Detector class="edu.umd.cs.findbugs.detect.FindRefComparison" speed="moderate"
    reports="ES_COMPARING_STRINGS_WITH_EQ,RC_REF_COMPARISON" />
  <Detector class="edu.umd.cs.findbugs.detect.FindMismatchedWaitOrNotify" speed="moderate"
    reports="MWN_MISMATCHED_WAIT,MWN_MISMATCHED_NOTIFY" />
  <Detector class="edu.umd.cs.findbugs.detect.FindInconsistentSync2" speed="slow"
    reports="IS2_INCONSISTENT_SYNC" />
  <Detector class="edu.umd.cs.findbugs.detect.FindLocalSelfAssignment" speed="fast"
    reports="SA_LOCAL_SELF_ASSIGNMENT" />
  <Detector class="edu.umd.cs.findbugs.detect.LazyInit" speed="moderate"
    reports="LI_LAZY_INIT_STATIC"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindJSR166LockMonitorenter" speed="moderate" 
    reports="JLM_JSR166_LOCK_MONITORENTER"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUncalledPrivateMethods" speed="fast"
    reports="UPM_UNCALLED_PRIVATE_METHOD"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindBugsSummaryStats" speed="fast" />

  <BugPattern abbrev="IMSE" type="IMSE_DONT_CATCH_IMSE" category="CORRECTNESS" />
  <BugPattern abbrev="FL" type="FL_MATH_USING_FLOAT_PRECISION" category="CORRECTNESS" />
  <BugPattern abbrev="CN" type="CN_IDIOM" category="CORRECTNESS" />
  <BugPattern abbrev="DE" type="DE_MIGHT_DROP" category="CORRECTNESS" />
  <BugPattern abbrev="DE" type="DE_MIGHT_IGNORE" category="CORRECTNESS" />
  <BugPattern abbrev="Dm" type="DM_STRING_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_STRING_VOID_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_GC" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_BOOLEAN_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="DC" type="DC_DOUBLECHECK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_PUBLIC_SHOULD_BE_PROTECTED" category="MALICIOUS_CODE" />
  <BugPattern abbrev="FI" type="FI_EMPTY" category="PERFORMANCE" />
  <BugPattern abbrev="FI" type="FI_NULLIFY_SUPER" category="CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_USELESS" category="PERFORMANCE" />
  <BugPattern abbrev="FI" type="FI_MISSING_SUPER_CALL" category="CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_EXPLICIT_INVOCATION" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_SELF_USE_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_SELF_NO_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="Co" type="CO_SELF_NO_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="ES" type="ES_COMPARING_STRINGS_WITH_EQ" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_HASHCODE_USE_OBJECT_EQUALS" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_HASHCODE_NO_EQUALS" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_EQUALS_USE_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_EQUALS_NO_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_ABSTRACT_SELF" category="CORRECTNESS" />
  <BugPattern abbrev="Co" type="CO_ABSTRACT_SELF" category="CORRECTNESS" />
  <BugPattern abbrev="IS2" type="IS2_INCONSISTENT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="NN" type="NN_NAKED_NOTIFY" category="MT_CORRECTNESS" />
  <BugPattern abbrev="MS" type="MS_EXPOSE_REP" category="MALICIOUS_CODE" />
  <BugPattern abbrev="EI" type="EI_EXPOSE_REP" category="MALICIOUS_CODE" />
  <BugPattern abbrev="EI2" type="EI_EXPOSE_REP2" category="MALICIOUS_CODE" />
  <BugPattern abbrev="Ru" type="RU_INVOKE_RUN" category="MT_CORRECTNESS" />
  <BugPattern abbrev="SP" type="SP_SPIN_ON_FIELD" category="MT_CORRECTNESS" />
  <BugPattern abbrev="NS" type="NS_NON_SHORT_CIRCUIT" category="CORRECTNESS" />
  <BugPattern abbrev="2LW" type="2LW_TWO_LOCK_WAIT" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UW" type="UW_UNCOND_WAIT" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UR" type="UR_UNINIT_READ" category="CORRECTNESS" />
  <BugPattern abbrev="UG" type="UG_SYNC_SET_UNSYNC_GET" category="MT_CORRECTNESS" />
  <BugPattern abbrev="IC" type="IC_INIT_CIRCULARITY" category="CORRECTNESS" />
  <BugPattern abbrev="SI" type="SI_INSTANCE_BEFORE_FINALS_ASSIGNED" category="CORRECTNESS" />
  <BugPattern abbrev="It" type="IT_NO_SUCH_ELEMENT" category="CORRECTNESS" />
  <BugPattern abbrev="IS" type="IS_INCONSISTENT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="ML" type="ML_SYNC_ON_UPDATED_FIELD" category="MT_CORRECTNESS" />
  <BugPattern abbrev="MS" type="MS_OOI_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_FINAL_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_SHOULD_BE_FINAL" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_MUTABLE_HASHTABLE" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_MUTABLE_ARRAY" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_CANNOT_BE_FINAL" category="MALICIOUS_CODE" />
  <BugPattern abbrev="Nm" type="NM_VERY_CONFUSING" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_CONFUSING" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_CONFUSING_METHOD_NAME" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_LCASE_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_LCASE_TOSTRING" category="CORRECTNESS" />
  <BugPattern abbrev="RR" type="RR_NOT_CHECKED" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NO_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="WS" type="WS_WRITEOBJECT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RS" type="RS_READOBJECT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONFINAL_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONSTATIC_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONLONG_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_BAD_FIELD" category="CORRECTNESS" experimental="true" />
  <BugPattern abbrev="SC" type="SC_START_IN_CTOR" category="MT_CORRECTNESS" />
  <BugPattern abbrev="SS" type="SS_SHOULD_BE_STATIC" category="CORRECTNESS" />
  <BugPattern abbrev="UuF" type="UUF_UNUSED_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="UrF" type="URF_UNREAD_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="UwF" type="UWF_UNWRITTEN_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="SIC" type="SIC_INNER_SHOULD_BE_STATIC" category="PERFORMANCE" />
  <BugPattern abbrev="Wa" type="WA_NOT_IN_LOOP" category="MT_CORRECTNESS" />
  <BugPattern abbrev="No" type="NO_NOTIFY_NOT_NOTIFYALL" category="MT_CORRECTNESS" />
  <BugPattern abbrev="BcpDC" type="BCPDC_DOUBLECHECK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RV" type="RV_RETURN_VALUE_IGNORED" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_ALWAYS_NULL" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_ALWAYS_NULL_EXCEPTION" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_NULL_ON_SOME_PATH" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_NULL_ON_SOME_PATH_EXCEPTION" category="CORRECTNESS" />
  <BugPattern abbrev="OS" type="OS_OPEN_STREAM" category="CORRECTNESS" />
  <BugPattern abbrev="OS" type="OS_OPEN_STREAM_EXCEPTION_PATH" category="CORRECTNESS" />
  <BugPattern abbrev="PZLA" type="PZLA_PREFER_ZERO_LENGTH_ARRAYS" category="CORRECTNESS" />
  <BugPattern abbrev="UCF" type="UCF_USELESS_CONTROL_FLOW" category="CORRECTNESS" />
  <BugPattern abbrev="RCN" type="RCN_REDUNDANT_COMPARISON_TO_NULL" category="CORRECTNESS" />
  <BugPattern abbrev="UL" type="UL_UNRELEASED_LOCK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UL" type="UL_UNRELEASED_LOCK_EXCEPTION_PATH" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RC" type="RC_REF_COMPARISON" category="CORRECTNESS" />
  <BugPattern abbrev="MWN" type="MWN_MISMATCHED_WAIT" category="CORRECTNESS" />
  <BugPattern abbrev="MWN" type="MWN_MISMATCHED_NOTIFY" category="CORRECTNESS" />
  <BugPattern abbrev="SA" type="SA_LOCAL_SELF_ASSIGNMENT" category="CORRECTNESS" />
  <BugPattern abbrev="SA" type="SA_FIELD_SELF_ASSIGNMENT" category="CORRECTNESS" />
  <BugPattern abbrev="LI" type="LI_LAZY_INIT_INSTANCE" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="LI" type="LI_LAZY_INIT_STATIC" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="JLM" type="JLM_JSR166_LOCK_MONITORENTER" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="UPM" type="UPM_UNCALLED_PRIVATE_METHOD" category="PERFORMANCE"/>
  <BugPattern abbrev="ODR" type="ODR_OPEN_DATABASE_RESOURCE" category="CORRECTNESS"/>
  <BugPattern abbrev="ODR" type="ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH" category="CORRECTNESS"/>
</FindbugsPlugin>
<commit_msg>Mark ODR patterns as experimental<commit_after><FindbugsPlugin>
  <Detector class="edu.umd.cs.findbugs.detect.DontCatchIllegalMonitorStateException" 
	speed="fast" disable="false"
    reports="IMSE_DONT_CATCH_IMSE" />
  <Detector class="edu.umd.cs.findbugs.detect.FindFloatMath" speed="moderate" 
	disable="true"
    reports="FL_MATH_USING_FLOAT_PRECISION" />
  <Detector class="edu.umd.cs.findbugs.detect.CloneIdiom" speed="fast" disable="true"
    reports="CN_IDIOM" />
  <Detector class="edu.umd.cs.findbugs.detect.FindFieldSelfAssignment" speed="fast"
    reports="SA_FIELD_SELF_ASSIGNMENT"/>
  <Detector class="edu.umd.cs.findbugs.detect.DroppedException" speed="fast"
    reports="DE_MIGHT_DROP,DE_MIGHT_IGNORE"/>
  <Detector class="edu.umd.cs.findbugs.detect.DumbMethods" speed="fast"
    reports="DM_STRING_CTOR,DM_STRING_VOID_CTOR,DM_GC,DM_BOOLEAN_CTOR"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindDoubleCheck" speed="fast"
    reports="DC_DOUBLECHECK"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindFinalizeInvocations" speed="fast"
    reports="FI_PUBLIC_SHOULD_BE_PROTECTED,FI_EMPTY,FI_NULLIFY_SUPER,FI_USELESS,FI_MISSING_SUPER_CALL,FI_EXPLICIT_INVOCATION"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindHEmismatch" speed="fast"
    reports="EQ_SELF_USE_OBJECT,EQ_SELF_NO_OBJECT,CO_SELF_NO_OBJECT,HE_HASHCODE_USE_OBJECT_EQUALS,HE_HASHCODE_NO_EQUALS,HE_EQUALS_USE_HASHCODE,HE_EQUALS_NO_HASHCODE"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindNakedNotify" speed="fast"
    reports="NN_NAKED_NOTIFY"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindReturnRef" speed="fast"
    reports="MS_EXPOSE_REP,EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindRunInvocations" speed="fast"
    reports="RU_INVOKE_RUN"/>
  <Detector class="edu.umd.cs.findbugs.detect.SwitchFallthrough" speed="fast"
	  disabled="true"
    reports="SF_SWITCH_FALLTHROUGH"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindSpinLoop" speed="fast"
    reports="SP_SPIN_ON_FIELD"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindNonShortCircuit" speed="fast"
    reports="NS_NON_SHORT_CIRCUIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindTwoLockWait" speed="slow"
    reports="2LW_TWO_LOCK_WAIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUnconditionalWait" speed="fast"
    reports="UW_UNCOND_WAIT"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUninitializedGet" speed="fast"
    reports="UR_UNINIT_READ"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUnsyncGet" speed="fast"
    reports="UG_SYNC_SET_UNSYNC_GET"/>
  <Detector class="edu.umd.cs.findbugs.detect.InitializationChain" speed="fast"
    reports="SI_INSTANCE_BEFORE_FINALS_ASSIGNED,IC_INIT_CIRCULARITY"/>
  <Detector class="edu.umd.cs.findbugs.detect.IteratorIdioms" speed="fast"
    reports="IT_NO_SUCH_ELEMENT"/>
  <Detector class="edu.umd.cs.findbugs.detect.LockedFields" speed="fast" disabled="true"
    reports="IS_INCONSISTENT_SYNC"/>
  <Detector class="edu.umd.cs.findbugs.detect.PreferZeroLengthArrays" speed="fast"
    reports="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/>
  <Detector class="edu.umd.cs.findbugs.detect.EqStringTest" speed="fast" disabled="true"
    reports="ES_COMPARING_STRINGS_WITH_EQ"/>
  <Detector class="edu.umd.cs.findbugs.detect.MutableLock" speed="fast"
    reports="ML_SYNC_ON_UPDATED_FIELD" />
  <Detector class="edu.umd.cs.findbugs.detect.MutableStaticFields" speed="fast"
    reports="MS_OOI_PKGPROTECT,MS_FINAL_PKGPROTECT,MS_SHOULD_BE_FINAL,MS_PKGPROTECT,MS_MUTABLE_HASHTABLE,MS_MUTABLE_ARRAY,MS_CANNOT_BE_FINAL"/>
  <Detector class="edu.umd.cs.findbugs.detect.Naming" speed="fast"
    reports="NM_VERY_CONFUSING,NM_CONFUSING,NM_CONFUSING_METHOD_NAME,NM_LCASE_HASHCODE,NM_LCASE_TOSTRING" />
  <Detector class="edu.umd.cs.findbugs.detect.ReadReturnShouldBeChecked" speed="fast"
    reports="RR_NOT_CHECKED" />
  <Detector class="edu.umd.cs.findbugs.detect.SerializableIdiom" speed="fast"
    reports="SE_NO_SERIALVERSIONID,WS_WRITEOBJECT_SYNC,RS_READOBJECT_SYNC,SE_BAD_FIELD,SE_NONLONG_SERIALVERSIONID,SE_NONSTATIC_SERIALVERSIONID,SE_NONFINAL_SERIALVERSIONID" />
  <Detector class="edu.umd.cs.findbugs.detect.StartInConstructor" speed="fast"
    reports="SC_START_IN_CTOR" />
  <Detector class="edu.umd.cs.findbugs.detect.UnreadFields" speed="fast"
    reports="UWF_UNWRITTEN_FIELD,SS_SHOULD_BE_STATIC,UUF_UNUSED_FIELD,URF_UNREAD_FIELD,SIC_INNER_SHOULD_BE_STATIC" />
  <Detector class="edu.umd.cs.findbugs.detect.WaitInLoop" speed="fast"
    reports="WA_NOT_IN_LOOP,NO_NOTIFY_NOT_NOTIFYALL" />
  <Detector class="edu.umd.cs.findbugs.detect.BCPDoubleCheck" speed="moderate" disabled="true"
    reports="BCPDC_DOUBLECHECK" />
  <Detector class="edu.umd.cs.findbugs.detect.BCPMethodReturnCheck" speed="slow"
    reports="RV_RETURN_VALUE_IGNORED" />
  <Detector class="edu.umd.cs.findbugs.detect.FindNullDeref" speed="moderate"
    reports="NP_ALWAYS_NULL_EXCEPTION,NP_ALWAYS_NULL,NP_NULL_ON_SOME_PATH_EXCEPTION,NP_NULL_ON_SOME_PATH,RCN_REDUNDANT_COMPARISON_TO_NULL" />
  <Detector class="edu.umd.cs.findbugs.detect.FindOpenStream" speed="moderate"
    reports="OS_OPEN_STREAM,OS_OPEN_STREAM_EXCEPTION_PATH,ODR_OPEN_DATABASE_RESOURCE,ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH" />
  <Detector class="edu.umd.cs.findbugs.detect.FindUselessControlFlow" speed="fast"
    reports="UCF_USELESS_CONTROL_FLOW" />
  <Detector class="edu.umd.cs.findbugs.detect.FindUnreleasedLock" speed="moderate" disabled="true"
    reports="UL_UNRELEASED_LOCK,UL_UNRELEASED_LOCK_EXCEPTION_PATH" />
  <Detector class="edu.umd.cs.findbugs.detect.FindRefComparison" speed="moderate"
    reports="ES_COMPARING_STRINGS_WITH_EQ,RC_REF_COMPARISON" />
  <Detector class="edu.umd.cs.findbugs.detect.FindMismatchedWaitOrNotify" speed="moderate"
    reports="MWN_MISMATCHED_WAIT,MWN_MISMATCHED_NOTIFY" />
  <Detector class="edu.umd.cs.findbugs.detect.FindInconsistentSync2" speed="slow"
    reports="IS2_INCONSISTENT_SYNC" />
  <Detector class="edu.umd.cs.findbugs.detect.FindLocalSelfAssignment" speed="fast"
    reports="SA_LOCAL_SELF_ASSIGNMENT" />
  <Detector class="edu.umd.cs.findbugs.detect.LazyInit" speed="moderate"
    reports="LI_LAZY_INIT_STATIC"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindJSR166LockMonitorenter" speed="moderate" 
    reports="JLM_JSR166_LOCK_MONITORENTER"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindUncalledPrivateMethods" speed="fast"
    reports="UPM_UNCALLED_PRIVATE_METHOD"/>
  <Detector class="edu.umd.cs.findbugs.detect.FindBugsSummaryStats" speed="fast" />

  <BugPattern abbrev="IMSE" type="IMSE_DONT_CATCH_IMSE" category="CORRECTNESS" />
  <BugPattern abbrev="FL" type="FL_MATH_USING_FLOAT_PRECISION" category="CORRECTNESS" />
  <BugPattern abbrev="CN" type="CN_IDIOM" category="CORRECTNESS" />
  <BugPattern abbrev="DE" type="DE_MIGHT_DROP" category="CORRECTNESS" />
  <BugPattern abbrev="DE" type="DE_MIGHT_IGNORE" category="CORRECTNESS" />
  <BugPattern abbrev="Dm" type="DM_STRING_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_STRING_VOID_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_GC" category="PERFORMANCE" />
  <BugPattern abbrev="Dm" type="DM_BOOLEAN_CTOR" category="PERFORMANCE" />
  <BugPattern abbrev="DC" type="DC_DOUBLECHECK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_PUBLIC_SHOULD_BE_PROTECTED" category="MALICIOUS_CODE" />
  <BugPattern abbrev="FI" type="FI_EMPTY" category="PERFORMANCE" />
  <BugPattern abbrev="FI" type="FI_NULLIFY_SUPER" category="CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_USELESS" category="PERFORMANCE" />
  <BugPattern abbrev="FI" type="FI_MISSING_SUPER_CALL" category="CORRECTNESS" />
  <BugPattern abbrev="FI" type="FI_EXPLICIT_INVOCATION" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_SELF_USE_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_SELF_NO_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="Co" type="CO_SELF_NO_OBJECT" category="CORRECTNESS" />
  <BugPattern abbrev="ES" type="ES_COMPARING_STRINGS_WITH_EQ" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_HASHCODE_USE_OBJECT_EQUALS" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_HASHCODE_NO_EQUALS" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_EQUALS_USE_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="HE" type="HE_EQUALS_NO_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="Eq" type="EQ_ABSTRACT_SELF" category="CORRECTNESS" />
  <BugPattern abbrev="Co" type="CO_ABSTRACT_SELF" category="CORRECTNESS" />
  <BugPattern abbrev="IS2" type="IS2_INCONSISTENT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="NN" type="NN_NAKED_NOTIFY" category="MT_CORRECTNESS" />
  <BugPattern abbrev="MS" type="MS_EXPOSE_REP" category="MALICIOUS_CODE" />
  <BugPattern abbrev="EI" type="EI_EXPOSE_REP" category="MALICIOUS_CODE" />
  <BugPattern abbrev="EI2" type="EI_EXPOSE_REP2" category="MALICIOUS_CODE" />
  <BugPattern abbrev="Ru" type="RU_INVOKE_RUN" category="MT_CORRECTNESS" />
  <BugPattern abbrev="SP" type="SP_SPIN_ON_FIELD" category="MT_CORRECTNESS" />
  <BugPattern abbrev="NS" type="NS_NON_SHORT_CIRCUIT" category="CORRECTNESS" />
  <BugPattern abbrev="2LW" type="2LW_TWO_LOCK_WAIT" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UW" type="UW_UNCOND_WAIT" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UR" type="UR_UNINIT_READ" category="CORRECTNESS" />
  <BugPattern abbrev="UG" type="UG_SYNC_SET_UNSYNC_GET" category="MT_CORRECTNESS" />
  <BugPattern abbrev="IC" type="IC_INIT_CIRCULARITY" category="CORRECTNESS" />
  <BugPattern abbrev="SI" type="SI_INSTANCE_BEFORE_FINALS_ASSIGNED" category="CORRECTNESS" />
  <BugPattern abbrev="It" type="IT_NO_SUCH_ELEMENT" category="CORRECTNESS" />
  <BugPattern abbrev="IS" type="IS_INCONSISTENT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="ML" type="ML_SYNC_ON_UPDATED_FIELD" category="MT_CORRECTNESS" />
  <BugPattern abbrev="MS" type="MS_OOI_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_FINAL_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_SHOULD_BE_FINAL" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_PKGPROTECT" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_MUTABLE_HASHTABLE" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_MUTABLE_ARRAY" category="MALICIOUS_CODE" />
  <BugPattern abbrev="MS" type="MS_CANNOT_BE_FINAL" category="MALICIOUS_CODE" />
  <BugPattern abbrev="Nm" type="NM_VERY_CONFUSING" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_CONFUSING" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_CONFUSING_METHOD_NAME" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_LCASE_HASHCODE" category="CORRECTNESS" />
  <BugPattern abbrev="Nm" type="NM_LCASE_TOSTRING" category="CORRECTNESS" />
  <BugPattern abbrev="RR" type="RR_NOT_CHECKED" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NO_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="WS" type="WS_WRITEOBJECT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RS" type="RS_READOBJECT_SYNC" category="MT_CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONFINAL_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONSTATIC_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_NONLONG_SERIALVERSIONID" category="CORRECTNESS" />
  <BugPattern abbrev="Se" type="SE_BAD_FIELD" category="CORRECTNESS" experimental="true" />
  <BugPattern abbrev="SC" type="SC_START_IN_CTOR" category="MT_CORRECTNESS" />
  <BugPattern abbrev="SS" type="SS_SHOULD_BE_STATIC" category="CORRECTNESS" />
  <BugPattern abbrev="UuF" type="UUF_UNUSED_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="UrF" type="URF_UNREAD_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="UwF" type="UWF_UNWRITTEN_FIELD" category="CORRECTNESS" />
  <BugPattern abbrev="SIC" type="SIC_INNER_SHOULD_BE_STATIC" category="PERFORMANCE" />
  <BugPattern abbrev="Wa" type="WA_NOT_IN_LOOP" category="MT_CORRECTNESS" />
  <BugPattern abbrev="No" type="NO_NOTIFY_NOT_NOTIFYALL" category="MT_CORRECTNESS" />
  <BugPattern abbrev="BcpDC" type="BCPDC_DOUBLECHECK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RV" type="RV_RETURN_VALUE_IGNORED" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_ALWAYS_NULL" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_ALWAYS_NULL_EXCEPTION" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_NULL_ON_SOME_PATH" category="CORRECTNESS" />
  <BugPattern abbrev="NP" type="NP_NULL_ON_SOME_PATH_EXCEPTION" category="CORRECTNESS" />
  <BugPattern abbrev="OS" type="OS_OPEN_STREAM" category="CORRECTNESS" />
  <BugPattern abbrev="OS" type="OS_OPEN_STREAM_EXCEPTION_PATH" category="CORRECTNESS" />
  <BugPattern abbrev="PZLA" type="PZLA_PREFER_ZERO_LENGTH_ARRAYS" category="CORRECTNESS" />
  <BugPattern abbrev="UCF" type="UCF_USELESS_CONTROL_FLOW" category="CORRECTNESS" />
  <BugPattern abbrev="RCN" type="RCN_REDUNDANT_COMPARISON_TO_NULL" category="CORRECTNESS" />
  <BugPattern abbrev="UL" type="UL_UNRELEASED_LOCK" category="MT_CORRECTNESS" />
  <BugPattern abbrev="UL" type="UL_UNRELEASED_LOCK_EXCEPTION_PATH" category="MT_CORRECTNESS" />
  <BugPattern abbrev="RC" type="RC_REF_COMPARISON" category="CORRECTNESS" />
  <BugPattern abbrev="MWN" type="MWN_MISMATCHED_WAIT" category="CORRECTNESS" />
  <BugPattern abbrev="MWN" type="MWN_MISMATCHED_NOTIFY" category="CORRECTNESS" />
  <BugPattern abbrev="SA" type="SA_LOCAL_SELF_ASSIGNMENT" category="CORRECTNESS" />
  <BugPattern abbrev="SA" type="SA_FIELD_SELF_ASSIGNMENT" category="CORRECTNESS" />
  <BugPattern abbrev="LI" type="LI_LAZY_INIT_INSTANCE" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="LI" type="LI_LAZY_INIT_STATIC" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="JLM" type="JLM_JSR166_LOCK_MONITORENTER" category="MT_CORRECTNESS" experimental="true"/>
  <BugPattern abbrev="UPM" type="UPM_UNCALLED_PRIVATE_METHOD" category="PERFORMANCE"/>
  <BugPattern abbrev="ODR" type="ODR_OPEN_DATABASE_RESOURCE" category="CORRECTNESS"
    experimental="true"/>
  <BugPattern abbrev="ODR" type="ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH" category="CORRECTNESS"
    experimental="true"/>
</FindbugsPlugin>

{'fraction_non_alphanumeric': 0.1406926406926407, 'fraction_numerical': 0.0013266303588884234, 'mean_word_length': 8.315447154471546, 'pattern_counts': {'":': 0, '<': 289, '<?xml version=': 0, '>': 289, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3679054', 'n_tokens_mistral': 11532, 'n_tokens_neox': 10573, 'n_words': 1160}