             (setq line-begin (line-beginning-position))
             (if (= (go-paren-level) 0)
                 0
-              (while (and
-                      (not (bobp))
-                      (>= (go-paren-level) start-nesting))
+              (while (and (not (bobp))
+                          (>= (go-paren-level) start-nesting))
                 (if (= 0 (skip-chars-backward "^[]{}()"))
                     (backward-char))
                 (if (go-in-string-p)
                     (progn
                       (go--backward-irrelevant)
                       (setq line-begin (line-beginning-position)))))
-              (if (and (< (go-paren-level) start-nesting))
+              (if (< (go-paren-level) start-nesting)
                   (+ (current-indentation) tab-width (- outindent))
                 (- (current-indentation) outindent)))))))))
 

        (setq start-nesting (go-paren-level))
        (if (looking-at "[])}]")
            (progn
              (while (and
                      (not (bobp))
                      (>= (go-paren-level) start-nesting))
                (skip-chars-backward "^[]{}()")
                (backward-char))
              (if (go-previous-line-has-dangling-op-p)

          (patchbuf (get-buffer-create "*Gofmt patch*")))
      (with-current-buffer patchbuf
        (let ((errbuf (get-buffer-create "*Gofmt Errors*"))
              ;; use utf-8 with subprocesses
              (coding-system-for-read 'utf-8)
              (coding-system-for-write 'utf-8))
          (with-current-buffer errbuf
            (let ((inhibit-read-only t))
