=====================================
=========Useful Fix Patterns=========
=====================================
==============Detailed===============
DM_CONVERT_CASE
	(1) ADD a rule of Locale.ENGLISH into toLowerCase/toUpperCase. 
RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE
	(1) DEL Null-Check IfStatement, 
	(2) DEL Null-Check Conditional Expression. 
REC_CATCH_EXCEPTION
	(1) Change Exception to a specific exception class.
SE_NO_SERIALVERSIONID
	(1) Insert a private static final field serialVersionUID.  
VA_FORMAT_STRING_USES_NEWLINE
	(1) DEL "$backslash$n", 
	(2) Replace "$backslash$n" with "n" 
MS_SHOULD_BE_FINAL
	(1) ADD a ``final'' modifier. 
WMI_WRONG_MAP_ITERATOR
	(1) Replace the KeySet iterating ForStatement with an EntrySet iterating ForStatement. 
DM_NUMBER_CTOR
	(1) Replace the NumberType ClassInstanceCreation with a NumberType.valueOf() method invocation.
SIC_INNER_SHOULD_BE_STATIC
	(1) ADD a "static" modifier, 
	(2) DEL the buggy statements. 
DE_MIGHT_IGNORE
    (1) Change Exception to a specific exception class.
DM_BOXED_PRIMITIVE_FOR_PARSING
	(1) Replace NumberType.valueOf() with NumberType.parseNumberType().
DM_FP_NUMBER_CTOR  
	(1) DEL the buggy statement, 
	(2) Replace Double or Float ClassInstanceCreation with (Double or Float).valueOf(), 
	(3) Remove the Double or Float ClassInstanceCreation from the buggy expression. 
MS_PKGPROTECT
	(1) DEL the buggy statement, 
	(2) DEL the ``public'' or ``protected'' modifier 
	(3) Replace the ``public'' or ``protected'' modifier with the ``private'' modifier. 
	(4) DEL the initialization expression.
ES_COMPARING_STRINGS_WITH_EQ   
	(1) Replace the ``=='' InfixExpression with a stringVar.equals() method invocation. 


===============Abstract==============  
NP_NULL_ON_SOME_PATH
    (1) ADD a Null-check statement or expression.  
RI_REDUNDANT_INTERFACES
	(1) DEL the implemented Interface type.  
NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE
	(1) ADD a Null-check statement or expression, 
	(2) DEL the buggy statement. 
UCF_USELESS_CONTROL_FLOW
	(1) DEL the buggy statement, 
	(2) DEL the useless ConditionalExpression. 
UC_USELESS_CONDITION   
	(1) UPD the operator of a ConditionalExpersion, 
	(2) UPD an sub-expression of a ConditionExpression. 
NP_LOAD_OF_KNOWN_NULL_VALUE
	(1) DEL Null-check expression or statement,
	(2) Replace the null-known variable with NULL.	
SBSC_USE_STRINGBUFFER_CONCATENATION
	(1) Replace String type with StringBuilder, and replace plus operator of StringVarialbe with the append method of StringBuilder.
UC_USELESS_OBJECT
    (1) DEL the buggy statement.  
UPM_UNCALLED_PRIVATE_METHOD
	(1) DEL the buggy statements. 
NM_METHOD_NAMING_CONVENTION
	(1) Update Method Name of MethodDeclaration.
URF_UNREAD_FIELD
	(1) DEL the buggy statement.
=====================================
NP_NONNULL_RETURN_VIOLATION
	(1) DEL the null-returned ReturnStatement. 
	(2) Replace NullLiteral with an Expression which returns an empty list. 
PZLA_PREFER_ZERO_LENGTH_ARRAYS
	(1) DEL the buggy statement, 
  √ (2) Replace NullLiteral with an empty array. 
SIC_INNER_SHOULD_BE_STATIC_ANON
	(1) DEL a parameter of a ClassInstanceCreation in an AnonymousClassDeclaration, 
	(2) DEL the statement contains an AnonymousClassDeclaration, 
  √ (3) Replace the AnonymousClassDeclaration with an defined Static Object of this class.
DLS_DEAD_LOCAL_STORE
	(1) DEL the buggy statement. 
DM_DEFAULT_ENCODING
  √ (1) ADD a parameter (i.e., "UTF-8") into the ClassInstanceCreation of a Stream object. 
	(2) Replace ClassInstanceCreation with a MethodInvocation. 
	(3) DEL the buggy statement.
BC_UNCONFIRMED_CAST
	(1) DEL the buggy statement,
	(2) DEL the Cast Type,
	(3) Replace CastExpression with NullLiteral.
URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD
	(1) ADD a ``final'' modifier, 
  √ (2) DEL the buggy statement.
RV_RETURN_VALUE_IGNORED_BAD_PRACTICE
	(1) Replace boolean-returned statement with a a new MethodInvocation. 
  √ (2) ADD an IfStatement.
EI_EXPOSE_REP
	(1) DEL the buggy statement, 
  * (2) Replace the being assigned Expression with a ConditionalExpression.
  √ (3) Replace the Expression being assigned with other Expression
EI_EXPOSE_REP2
	(1) DEL the buggy statement, 
  * (2) Replace the being assigned Expression with a ConditionalExpression. 
  √ (3) Replace the being assigned Expression with other Expression.
  
=====================================
==========Null Fix Patterns==========
=====================================
UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR                   null.   
OBL_UNSATISFIED_OBLIGATION   							   null.
OS_OPEN_STREAM_EXCEPTION_PATH   						   null. 
SF_SWITCH_NO_DEFAULT   									   null.  
UWF_UNWRITTEN_FIELD  									   null.  
IS2_INCONSISTENT_SYNC  									   null.  
ODR_OPEN_DATABASE_RESOURCE 								   null.  
SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING   null. 
OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE				   null.  
OS_OPEN_STREAM   										   null. 
NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE		   null. 

=====================================
========Useless Fix Patterns=========
=====================================
BC_UNCONFIRMED_CAST_OF_RETURN_VALUE
	(1) UPD T1 v1 = (T1) method_invocation() with T2 v1 = method_invocation(), 
	(2) DEL the buggy statement, 
	(3) Replace the buggy CastExpresion with a MethodInvocation.
ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD
	(1) DEL the buggy statement.  
RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE
	(1) ADD a Null-check statement or expression. 
