(defun c:CV-BCOUNT ( / ss idx ent blk lst )
  (princ "\n--- CV-BCOUNT: Block Counter by CADVoid.com ---")
  (if (setq ss (ssget '((0 . "INSERT"))))
    (progn
      (setq idx 0)
      (while (< idx (sslength ss))
        (setq ent (entget (ssname ss idx)))
        (setq blk (cdr (assoc 2 ent)))
        (if (assoc blk lst)
          (setq lst (subst (cons blk (1+ (cdr (assoc blk lst)))) (assoc blk lst) lst))
          (setq lst (cons (cons blk 1) lst))
        )
        (setq idx (1+ idx))
      )
      (princ "\n\n--- BLOCK SUMMARY ---")
      (foreach item lst
        (princ (strcat "\n" (car item) " : " (itoa (cdr item))))
      )
    )
    (princ "\nNo blocks selected.")
  )
  (princ "\n\n--- Powered by CADVoid.com ---")
  (princ)
)
(princ "\nType CV-BCOUNT to count blocks. [CADVoid.com]")
(princ)