(defun hs-cycle()
(interactive)
(save-excursion
(message "be:%s"(point))
;; (hs-life-goes-on
(if(hs-already-hidden-p)
(progn
(message "all hidden")
(if(hs-inside-comment-p)
(hs-show-block)
(progn
(hs-show-block)
(hs-hide-level 1))))
;; (message "hide level")
(if (= (hs-count-overlay-block) 0)
(progn ;;(message "hide block" "%s" (hs-count-overlay-block))
(message "flat")
(hs-hide-block))
(progn ;;(message "show block" "%s" (hs-count-overlay-block))
(message "outlined")
(hs-show-block)))
)
;; )
(message "af:%s"(point))
))