separate import block
diff --git a/binary.go b/binary.go
index 6ebc764..3352129 100644
--- a/binary.go
+++ b/binary.go
@@ -16,7 +16,9 @@
 
 import (
 	"io"
+)
 
+import (
 	gxbytes "github.com/dubbogo/gost/bytes"
 	perrors "github.com/pkg/errors"
 )
diff --git a/codec.go b/codec.go
index c34dbea..184938c 100644
--- a/codec.go
+++ b/codec.go
@@ -21,7 +21,9 @@
 	"math"
 	"reflect"
 	"strings"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/const.go b/const.go
index ed3a0c8..8a60e9b 100644
--- a/const.go
+++ b/const.go
@@ -15,10 +15,11 @@
 package hessian
 
 import (
-	"regexp"
-
 	"reflect"
+	"regexp"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/date.go b/date.go
index 9aada5e..50723e0 100644
--- a/date.go
+++ b/date.go
@@ -17,7 +17,9 @@
 import (
 	"reflect"
 	"time"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/date_test.go b/date_test.go
index c4fbe53..cc54564 100644
--- a/date_test.go
+++ b/date_test.go
@@ -17,7 +17,9 @@
 import (
 	"testing"
 	"time"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/decode.go b/decode.go
index 4bdccb1..4bb782d 100644
--- a/decode.go
+++ b/decode.go
@@ -19,7 +19,9 @@
 	"bytes"
 	"io"
 	"reflect"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/double.go b/double.go
index 96074f1..050ee25 100644
--- a/double.go
+++ b/double.go
@@ -17,7 +17,9 @@
 import (
 	"encoding/binary"
 	"math"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/encode.go b/encode.go
index b9289b2..59ce555 100644
--- a/encode.go
+++ b/encode.go
@@ -18,7 +18,9 @@
 	"reflect"
 	"time"
 	"unsafe"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/hessian.go b/hessian.go
index 28008cf..759293b 100644
--- a/hessian.go
+++ b/hessian.go
@@ -18,7 +18,9 @@
 	"bufio"
 	"encoding/binary"
 	"time"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/hessian_test.go b/hessian_test.go
index f48b7b5..a372a77 100644
--- a/hessian_test.go
+++ b/hessian_test.go
@@ -20,7 +20,9 @@
 	"reflect"
 	"testing"
 	"time"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/int.go b/int.go
index 61f6652..efee5ca 100644
--- a/int.go
+++ b/int.go
@@ -17,7 +17,9 @@
 import (
 	"encoding/binary"
 	"io"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/list.go b/list.go
index 44a3ad6..4a1093f 100644
--- a/list.go
+++ b/list.go
@@ -21,7 +21,9 @@
 	"strings"
 	"sync"
 	"time"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/list_test.go b/list_test.go
index a835ee6..d28fc76 100644
--- a/list_test.go
+++ b/list_test.go
@@ -19,7 +19,9 @@
 	"reflect"
 	"testing"
 	"time"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/long.go b/long.go
index 0509824..6fec2fb 100644
--- a/long.go
+++ b/long.go
@@ -17,7 +17,9 @@
 import (
 	"encoding/binary"
 	"io"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/map.go b/map.go
index 08d176c..8c94112 100644
--- a/map.go
+++ b/map.go
@@ -17,7 +17,9 @@
 import (
 	"io"
 	"reflect"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/object.go b/object.go
index 0b4e9a5..58fe5d8 100644
--- a/object.go
+++ b/object.go
@@ -18,7 +18,9 @@
 	"io"
 	"reflect"
 	"strings"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/pojo.go b/pojo.go
index 0d0c4dd..de9dc16 100644
--- a/pojo.go
+++ b/pojo.go
@@ -20,7 +20,9 @@
 	"strings"
 	"sync"
 	"unicode"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/ref.go b/ref.go
index 44b2b18..a63689c 100644
--- a/ref.go
+++ b/ref.go
@@ -17,7 +17,9 @@
 import (
 	"reflect"
 	"unsafe"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/ref_test.go b/ref_test.go
index 26f6a52..02b8e06 100644
--- a/ref_test.go
+++ b/ref_test.go
@@ -17,7 +17,9 @@
 import (
 	"reflect"
 	"testing"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/request.go b/request.go
index 2001a4b..968372d 100644
--- a/request.go
+++ b/request.go
@@ -20,7 +20,9 @@
 	"strconv"
 	"strings"
 	"time"
+)
 
+import (
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/response.go b/response.go
index a159699..a1f68ff 100644
--- a/response.go
+++ b/response.go
@@ -20,11 +20,16 @@
 	"reflect"
 	"strconv"
 	"strings"
+)
 
-	"github.com/apache/dubbo-go-hessian2/java_exception"
+import (
 	perrors "github.com/pkg/errors"
 )
 
+import (
+	"github.com/apache/dubbo-go-hessian2/java_exception"
+)
+
 type Response struct {
 	RspObj      interface{}
 	Exception   error
diff --git a/response_test.go b/response_test.go
index c29185a..09422c4 100644
--- a/response_test.go
+++ b/response_test.go
@@ -17,7 +17,9 @@
 import (
 	"reflect"
 	"testing"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/serialize_test.go b/serialize_test.go
index 518230b..195a758 100644
--- a/serialize_test.go
+++ b/serialize_test.go
@@ -17,7 +17,9 @@
 import (
 	"reflect"
 	"testing"
+)
 
+import (
 	big "github.com/dubbogo/gost/math/big"
 	"github.com/stretchr/testify/assert"
 )
diff --git a/string.go b/string.go
index 0520a00..f31978b 100644
--- a/string.go
+++ b/string.go
@@ -23,9 +23,10 @@
 	"strconv"
 	"unicode/utf8"
 	"unsafe"
+)
 
+import (
 	gxbytes "github.com/dubbogo/gost/bytes"
-
 	perrors "github.com/pkg/errors"
 )
 
diff --git a/string_test.go b/string_test.go
index c52ae87..8eb4bf2 100644
--- a/string_test.go
+++ b/string_test.go
@@ -17,7 +17,9 @@
 import (
 	"fmt"
 	"testing"
+)
 
+import (
 	"github.com/stretchr/testify/assert"
 )