diff --git a/src/main/java/org/onosproject/yangutils/datamodel/YangTypeDef.java b/src/main/java/org/onosproject/yangutils/datamodel/YangTypeDef.java
index a1abd8b..b1feb31 100644
--- a/src/main/java/org/onosproject/yangutils/datamodel/YangTypeDef.java
+++ b/src/main/java/org/onosproject/yangutils/datamodel/YangTypeDef.java
@@ -17,8 +17,8 @@
 
 import org.onosproject.yangutils.datamodel.exceptions.DataModelException;
 import org.onosproject.yangutils.parser.Parsable;
-import org.onosproject.yangutils.utils.YangConstructType;
 import org.onosproject.yangutils.translator.CachedFileHandle;
+import org.onosproject.yangutils.utils.YangConstructType;
 
 /*-
  * Reference RFC 6020.
@@ -54,7 +54,6 @@
  */
 public class YangTypeDef extends YangNode implements YangCommonInfo, Parsable {
 
-
     /**
      * Default value in string, needs to be converted to the target object,
      * based on the type.
@@ -98,8 +97,6 @@
         super(YangNodeType.TYPEDEF_NODE);
     }
 
-
-
     /**
      * Get the default value.
      *
@@ -245,8 +242,8 @@
         if (type == null) {
             throw new DataModelException("Typedef does not have type info.");
         }
-        if ((type.getDataType() != YangDataTypes.DERIVED)
-                || (type.getDataTypeName() == null)) {
+        if (type.getDataType() != YangDataTypes.DERIVED
+                || type.getDataTypeName() == null) {
             throw new DataModelException("Typedef type is not derived.");
         }
 
