(defun C:draw_xy_mleader ( / ht list_points mleader_obj p1 p2 pt_array accuracy temp suffix)
  (setq ht (/ 2.5 (getvar "CANNOSCALEVALUE")))
  (if(not(setq accuracy (vlax-ldata-get "geo_tools_dictionary" "accuracy-xy-mleader")))
    (setq accuracy 2)
    )
  (if(not(setq suffix (vlax-ldata-get "geo_tools_dictionary" "suffix-xy-mleader")))
    (setq suffix "Геодезия")
    )
  (while (progn
	   (initget "Точность Префиксы")
	   (setq p1 (getpoint "\nУкажи определяемую точку[Точность/Префиксы]: "))
	   )
    (cond
      ((= p1 "Точность")
       (initget 4)
       (setq temp (getint (strcat"\nС какой точностью определять координаты<" (itoa accuracy) ">: ")))
       (if temp(setq accuracy temp))
       (vlax-ldata-put "geo_tools_dictionary" "accuracy-xy-mleader" accuracy)
       )
      ((= p1 "Префиксы")
       (initget "Математика Геодезия NE")
       (setq temp (getkword (strcat"\nКакие перфиксы использовать[Математика/Геодезия/NE]<" suffix ">: ")))
       (if temp(setq suffix temp))
       (vlax-ldata-put "geo_tools_dictionary" "suffix-xy-mleader" suffix)
       )
      ((= (type p1 ) 'List)
       (if (setq p2 (getpoint p1 "\nУкажи точку вставки выноски: "))
	 (progn
	   (setq mleader_str
		  (cond
		    ((= suffix "Математика")
		     (strcat "X="(rtos(nth 0 p1)2 accuracy)"\\PY="(rtos(nth 1 p1)2 accuracy))
		     )
		    ((= suffix "Геодезия")
		     (strcat "X="(rtos(nth 1 p1)2 accuracy)"\\PY="(rtos(nth 0 p1)2 accuracy))
		     )
		    ((= suffix "NE")
		     (strcat "N="(rtos(nth 1 p1)2 accuracy)"\\PE="(rtos(nth 0 p1)2 accuracy))
		     )
		    )
		  )
	   (setq list_points (list p1 p2))
	   (setq pt_array (convert_coords_list_from_safearray_mleader list_points))
	   (vla-StartUndoMark active_document)
	   (setq mleader_obj (vla-addmleader model_spece pt_array 0))
	   (vla-put-StyleName mleader_obj (getvar "CMLEADERSTYLE"))
	   (vla-put-textstring mleader_obj mleader_str)
	   (vla-put-TextHeight mleader_obj ht)
	   (vla-EndUndoMark active_document)
	   )
	 )
       )
      )
    )
  (princ)
  )

;;;(defun C:proba ( / HT LIST_POINTS MLEADER_OBJ P1 P2 PT_ARRAY)
;;;  (setq ht (/ 2.5 (getvar "CANNOSCALEVALUE")))
;;;  (if (setq p1 (getpoint "\nУкажи определяемую точку: "))
;;;    (if (setq p2 (getpoint "\nУкажи точку вставки выноски: "))
;;;      (progn
;;;	(setq list_points (list p1 p2))
;;;	(setq pt_array (convert_coords_list_from_safearray_mleader list_points))
;;;	(vla-StartUndoMark active_document)
;;;	(setq mleader_obj (vla-addmleader model_spece pt_array 0))
;;;	(vla-put-StyleName mleader_obj "Подписи")
;;;	(vla-put-textstring mleader_obj (strcat "X=" (rtos(nth 1 p1)2 2)"\\PY="(rtos(nth 0 p1)2 2)))
;;;	(vla-put-TextHeight mleader_obj ht)
;;;	(vla-EndUndoMark active_document)
;;;	)
;;;      )
;;;    )
;;;  (princ)
;;;  )