
(require (quote calc-ext))

(defun calc-Need-calc-sel nil (byte-code "À‡" [nil] 1))

(defun calc-select-here (num &optional once keep) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "È ˆÉ 
… Ê	8†b … Æ‰ˆËÌ!ˆÍƒ_ …1 Î!‰ÏVƒW S‰ÏY…D 	@=?…R Ð	@\"‰ˆ‚4 ˆ‚\\ Ñ	@\"‚a 	@!*‡" [found entry calc-selection-cache-entry keep once calc-keep-selection nil num calc-prepare-selection calc-find-selected-part 2 message "(Selection will apply to next command only)" calc-change-current-selection prefix-numeric-value 0 calc-find-assoc-parent-formula calc-grow-assoc-formula] 9))] 2))

(defun calc-select-once (num) (interactive "P") (byte-code "ÂˆÃÁ\"‡" [num t nil calc-select-here] 3))

(defun calc-select-here-maybe (num) (interactive "P") (byte-code "ÁˆÃÁÂ#‡" [num nil t calc-select-here] 4))

(defun calc-select-once-maybe (num) (interactive "P") (byte-code "ÂˆÃÁÁ#‡" [num t nil calc-select-here] 4))

(defun calc-select-additional nil (interactive) (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "ÅÆ )ˆÇ È	ƒ@ É
8ƒ7 
@=†# Ê	\"?…2 Ë
@\"‰ˆ‚ ˆ‚< Ì
@	\")‚B 
@!*‡" [calc-keep-selection found entry calc-selection-cache-entry sel nil calc-prepare-selection calc-find-selected-part calc-change-current-selection 2 calc-find-sub-formula calc-find-assoc-parent-formula calc-grow-assoc-formula] 8))] 2))

(defun calc-select-more (num) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Ä ˆ	Å8ƒ5 Å8
@=?… Æ!S‰ÇY…- È@
\"‰ˆ‚ ˆÉ
!)‚8 Ê!)‡" [entry calc-selection-cache-entry sel num calc-prepare-selection 2 prefix-numeric-value 0 calc-find-assoc-parent-formula calc-change-current-selection calc-select-here] 6))] 2))

(defun calc-select-less (num) (interactive "p") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Ê ˆË 
Ì…l Í	8ÎÎÎ…+ =?…+ S‰ÏY…i Ð\"‰ˆ…> 8‰…e …e ÑÒ!	\"‰…e @8>…e T‰ˆ‚ ˆ,!*‡" [found entry calc-selection-cache-entry sel old index op num calc-assoc-selections calc-assoc-ops calc-prepare-selection calc-find-selected-part calc-change-current-selection 2 nil 0 calc-find-sub-formula assq car-safe] 10))] 2))

(defun calc-select-part (num) (interactive "P") (byte-code "Âˆ† 	ÃZ‰ˆÄÅ!‡" [num last-command-char nil 48 calc-do (lambda nil (byte-code "Ã ˆÄÅ	8† 	@
\"ƒ Æ!‚ ÇÈ
\")‡" [sel calc-selection-cache-entry num calc-prepare-selection calc-find-nth-part 2 calc-change-current-selection error "%d is not a valid sub-formula index"] 6))] 2))

(defun calc-find-nth-part (expr num) (byte-code "…
 ÅÆ	!
\"ƒ ÇÈ	!)‚O Æ	!É=ƒ1 ÊY…. ËX…. T	8‚O 	:?†; 	@Ì>?…O ÊY…O 	GW…O 	8‡" [calc-assoc-selections expr calc-assoc-ops op num assq car-safe nil calc-find-nth-part-rec intv 1 2 (bigpos bigneg frac float cplx polar hms date mod var)] 6))

(defun calc-find-nth-part-rec (expr) (byte-code "ÄÅÆ	8!
\"‰… 	@Æ8>ƒ ÇÆ	8!‚* S‰ÈU…* Æ	8†W ÄÅÉ	8!
\"‰…@ 	@É8>ƒK ÇÉ	8!‚W S‰ÈU…W É	8‡" [op expr calc-assoc-ops num assq car-safe 1 calc-find-nth-part-rec 0 2] 8))

(defun calc-select-next (num) (interactive "p") (byte-code "ÁˆÂWƒ Ã[!‚ ÄÅ!‡" [num nil 0 calc-select-previous calc-do (lambda nil (byte-code "Ë ˆ	Ì8
ƒ¹ S‰ÍY…² Î@
\"ÈÇ=…* È‰ˆA‰…7 @
=?…? Èˆ‚+ ˆAƒs 	…h ÏÐÑ8!
\"‰…h @Ì8>…h ÑÑ88†n Ñ8‰‚­ 	…Ÿ ÏÐ!
\"‰…Ÿ Î@\"‰:…Ÿ Ñ8=…Ÿ @Ñ8>ƒª Ì8‰‚­ ÒÓ!+ˆ‚ ˆÔ
!‚Ò @:?†Å @@Õ>ƒÏ Ô@!‚Ò Ö!*‡" [entry calc-selection-cache-entry sel num parent p op t nil calc-assoc-selections calc-assoc-ops calc-prepare-selection 2 0 calc-find-parent-formula assq car-safe 1 error "No \"next\" sub-formula" calc-change-current-selection (bigpos bigneg frac float cplx polar hms date mod var) calc-select-part] 12))] 3))

(defun calc-select-previous (num) (interactive "p") (byte-code "ÁˆÂWƒ Ã[!‚ ÄÅ!‡" [num nil 0 calc-select-next calc-do (lambda nil (byte-code "Ì ˆ	Í8
ƒÂ S‰ÎY…» Ï@
\"Ð!ÇÇÑ!Ò=…2 A‰ˆ@
=?…C @A‰…K Çˆ‚3 ˆƒ| 	…r ÓÑ!
\"‰…r @Ô8>…r Í8†w ‰‚¶ 	…¨ ÓÑ!
\"‰…¨ Ï@\"‰:…¨ Í8=…¨ @Í8>ƒ³ Ô8‰‚¶ ÕÖ!,ˆ‚ ˆ×
!‚@:?†Î @@Ø>ƒØ ×@!‚	…ä Ó@@
\"ƒø ÇÎÙ@!ˆÔZ*‚û @GÚZ!)*‡" [entry calc-selection-cache-entry sel num parent p prev nil op calc-assoc-selections calc-assoc-ops len calc-prepare-selection 2 0 calc-find-parent-formula cdr-safe car-safe intv assq 1 error "No \"previous\" sub-formula" calc-change-current-selection (bigpos bigneg frac float cplx polar hms date mod var) calc-find-nth-part-rec calc-select-part] 17))] 3))

(defun calc-find-parent-formula (expr part) (byte-code "	=ƒ
 Â‚G :?† @Æ>ƒ Ã‚G ÃA‰…. Ç@	\"‰?…6 Ãˆ‚ ˆ…F Â=ƒE ‚F *‡" [expr part t nil p res (bigpos bigneg frac float cplx polar hms date mod var) calc-find-parent-formula] 3))

(defun calc-find-assoc-parent-formula (expr part) (byte-code "ÂÃ	\"\"‡" [expr part calc-grow-assoc-formula calc-find-parent-formula] 5))

(defun calc-grow-assoc-formula (expr part) (byte-code "ƒ5 ÆÇ
!\"	…/ ÈÉ
\"‰:…$ @Ê
\"	8>…. ‰ˆ‚ )ˆ
)‚6 
‡" [calc-assoc-selections op part calc-assoc-ops new expr assq car-safe nil calc-find-parent-formula calc-find-sub-formula] 7))

(defun calc-find-sub-formula (expr part) (byte-code "	=ƒ
 Â‚< :?† @Å>ƒ Ã‚< ÆA‰…* Ç@	\"?…5 T‰ˆ‚ ˆ…; )‡" [expr part t nil num (bigpos bigneg frac float cplx polar hms date mod var) 1 calc-find-sub-formula] 4))

(defun calc-unselect (num) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Â!ˆÃÁ!‡" [num nil calc-prepare-selection calc-change-current-selection] 3))] 2))

(defun calc-clear-selections nil (interactive) (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Ã Ä	X…\" Å	Æ\"… Ç	!ˆÈÂ!ˆ	T‰ˆ‚ *ˆÉÊ!‡" [limit n nil calc-stack-size 1 calc-top sel calc-prepare-selection calc-change-current-selection calc-clear-command-flag position-point] 7))] 2))

(defun calc-show-selections (arg) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "È ˆ	ƒ É	!ÊV‚ ?‰ˆ
…' Ë
@8?†' Ì
@\"…2 
A‰ˆ‚ ˆ
…< Í )†U …U Ë8ÎÏË\"Ç\"ˆÐ!))ˆÑƒ` Ò‚a Ó!‡" [calc-show-selections arg p calc-stack calc-selection-cache-entry calc-selection-cache-default-entry sel nil calc-preserve-point prefix-numeric-value 0 2 equal calc-do-refresh setcar nthcdr calc-change-current-selection message "Displaying only selected part of formulas" "Displaying all but selected part of formulas"] 9))] 2))

(defun calc-preserve-point nil (byte-code "ÂÃ!† Äe`\"nƒ Å‚ Æ\\i‰ˆÇÈ!‡" [calc-final-point-line calc-final-point-column looking-at "\\.
+\\'" count-lines 1 0 calc-set-command-flag position-point] 4))

(defun calc-enable-selections (arg) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Â ˆ	ƒ Ã	!ÄV‚ ?‰ˆÅÆ!ˆÇƒ! È‚\" É!‡" [calc-use-selections arg calc-preserve-point prefix-numeric-value 0 calc-set-command-flag renum-stack message "Commands operate only on selected sub-formulas" "Selections of sub-formulas have no effect"] 5))] 2))

(defun calc-break-selections (arg) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Â ˆ	ƒ Ã	!ÄX‚ ?‰ˆÅƒ Æ‚ Ç!‡" [calc-assoc-selections arg calc-preserve-point prefix-numeric-value 0 message "Selection treats a+b+c as a sum of three terms" "Selection treats a+b+c as (a+b)+c"] 4))] 2))

(defun calc-prepare-selection (&optional num) (byte-code "†	 Î`!‰ˆÃ‰ˆÏV† Ð‰ˆÑÄ\"ÒÒÓ\"†\\ ÔÕ@!\"ˆÃ
Ö@Ï\")	×Ø	!@GƒW Ù‚X Ï#‰+ˆÚ ‡" [num calc-selection-true-num calc-keep-selection t entry ww w calc-selection-cache-entry calc-selection-cache-num calc-selection-cache-comp math-comp-tagged calc-selection-cache-offset calc-left-label calc-line-numbering calc-locate-cursor-element 0 1 calc-top nil equal setcar calc-encase-atoms math-compose-expr + math-stack-value-offset 4 calc-preserve-point] 11))

(setq calc-selection-cache-entry nil)

(defun calc-encase-atoms (x) (byte-code ":?†
 ÁÂ\"ƒ ÃÄE‚ Å!ˆ‡" [x equal (float 0 0) cplx 0 calc-encase-atoms-rec] 4))

(defun calc-encase-atoms-rec (x) (byte-code ":?†
 @Á>†B @Â=… A‰ˆA‰…B @:?†, Ã@Ä\"ƒ: ÅÆ@ÇE\"‚> È@!ˆ‚ ‡" [x (bigpos bigneg frac float cplx polar hms date mod var) intv equal (float 0 0) setcar cplx 0 calc-encase-atoms-rec] 7))

(defun calc-find-selected-part nil (byte-code "i	ZËÍÍŠÎ ˆ`Ï!ˆ`‰ˆ`W…2 ÐÑ!ˆÒ \\T‰ˆ‚ ˆÓÔ!Õ#))Ó`
	%	Ë
ÍY…\\ ÍV…\\ Ö×\"ˆÑ
8.‡" [math-comp-sel-hpos calc-selection-cache-offset toppt lcount spaces math-comp-sel-vpos line calc-selection-cache-num calc-selection-cache-comp math-comp-sel-cpos math-comp-sel-tag nil calc-selection-true-num 0 beginning-of-line calc-cursor-stack-index forward-line 1 current-indentation - math-comp-ascent -1 math-composition-to-string 1000000] 12))

(defun calc-change-current-selection (sub-expr) (byte-code "É	8=†< ÅÅÊË!ˆÌÍÉ	\"\"ˆÎ!ˆ`‰ˆÎS!ˆÏ`\"ˆ	ÐÑ	!Ò\")+‡" [sub-expr calc-selection-cache-entry calc-prepared-composition calc-selection-cache-comp buffer-read-only nil top calc-selection-cache-num calc-selection-cache-default-entry 2 calc-set-command-flag renum-stack setcar nthcdr calc-cursor-stack-index delete-region insert math-format-stack-value "
"] 10))

(defun calc-top-selected (&optional n m) (byte-code "…Z 	…Z 
† Ê‰ˆ† Ê‰ˆËÌ
Í#!ˆÎÌÍ#\"È
S‰ÏY…V Ð@8…M ƒF É‚J Ð@8‰ˆA‰ˆ‚- ˆ*‡" [calc-any-selections calc-use-selections n m top calc-stack-top calc-stack sel nil t 1 calc-check-stack + -1 nthcdr 0 2] 7))

(defun calc-replace-sub-formula (expr old new) (byte-code "Â!‰ˆÃ	!‡" [new expr calc-encase-atoms calc-replace-sub-formula-rec] 3))

(defun calc-replace-sub-formula-rec (expr) (byte-code "	=ƒ
 
‚# :?† @Ä>ƒ ‚# @ÅÆA\"B‡" [expr old new t (bigpos bigneg frac float cplx polar hms date mod var) mapcar calc-replace-sub-formula-rec] 4))

(defun calc-sel-error nil (byte-code "ÀÁ!‡" [error "Illegal operation on sub-formulas"] 2))

(defun calc-replace-selections (n vals m) (byte-code "Ì	\"ƒþ GÍ ˆ
Uƒ} Î	Ï#ÆÆÆ…c Ð@8ƒK Ñ@!Ò@@Ð@8#BB‰‚W @BÆB‰ˆAA‰ˆ‚! ˆÓ	É#ˆÔÕ!	
…x Õ!#,‚ú 
ÖUƒø Î	Ï#Æ…• Ð@8?…  A‰ˆ‚Œ ˆ‰ˆA‰…µ Ð@8?…½ Æˆ‚¦ ˆ…Å × ˆÓ	É#ˆƒñ Ñ@!ÔÒ@@Ð@8#C	
…ì C#)‚ô Ô!*‚ú × )‚Ó	É#ˆÔ	\"‡" [n m num vals old new nil sel val t calc-keep-selection more calc-top-selected calc-preserve-point calc-top-list entry 2 calc-encase-atoms calc-replace-sub-formula calc-pop-stack calc-push-list nreverse 1 calc-sel-error] 21))

(setq calc-keep-selection t)

(defun calc-delete-selection (n) (byte-code "Ç	À\"È8ƒÆ È8@=ƒ! ÉÊ	Â#ˆËÌ	\"‚Ã Í@È8\"ÅÎ ˆÉÊ	Â#ˆ@Ï>†I @Ð=…I È8È8=ƒR Ê‰‚r @Ñ>†r Ò@\"…f GÓUƒo Ô‰‚r Õ‰ˆÔ=ƒš ËÖ×@È8Ê8=ƒ� È8‚’ Ê8#!C	\"‚Â ƒ¯ ËÖ×@È8#!C	\"‚Â ËÖ×@ØÈ8Ù!\"#!C	\"*‚Ë ÉÊ	Â#)‡" [entry n t parent repl nil calc-tweak-eqn-table calc-top 2 calc-pop-stack 1 calc-push-list (0) calc-find-parent-formula calc-preserve-point (* / %) ^ (vec calcFunc-min calcFunc-max) assq 3 del 0 calc-normalize calc-replace-sub-formula delq copy-sequence] 22))

(defun calc-roll-down-with-selections (n m) (byte-code "ÄÅ	Æ\"Å
	Z	T\"\"ÄÅ	ÆÇ#Å
	Z	TÇ#\"È
Æ$*‡" [vals m n sels append calc-top-list 1 sel calc-pop-push-list] 11))

(defun calc-roll-up-with-selections (n m) (byte-code "ÄÅ	
ZÆ\"Å
Ç	
È#\"\"ÄÅ	
ZÆÉ#Å
Ç	
È#É#\"Ê	Æ$*‡" [vals n m sels append calc-top-list 1 - -1 sel calc-pop-push-list] 14))

(defun calc-auto-selection (entry) (byte-code "Ã8† ÄÁ!… Â‰ˆÅ ˆÆ@Ç \"‡" [entry reselect nil 2 boundp calc-prepare-selection calc-grow-assoc-formula calc-find-selected-part] 6))

(defun calc-copy-selection nil (interactive) (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Â ˆÃÄ`!]ÅÁ\"ÆÇ	!† 	@!*‡" [num entry calc-preserve-point 1 calc-locate-cursor-element calc-top calc-push calc-auto-selection] 6))] 2))

(defun calc-del-selection nil (interactive) (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Ã ˆÄÅ`!]ÆÁ\"Ç	!ÈÉÊ	\"
	@=?…  
\"ˆË!+‡" [num entry sel calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection setcar nthcdr 2 calc-delete-selection] 9))] 2))

(defun calc-enter-selection nil (interactive) (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "É ˆÊË`!]
ÌÃ\"@Í!† ÎCÏÐÑÒ\"‰ˆ…N Ó@!‰ˆÔÊÕÖ#C	…L C%*ˆ× .‡" [num reselect calc-keep-selection entry expr sel alg calc-dollar-values calc-dollar-used calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection nil 0 calc-do-alg-entry "" "Replace selection with: " calc-encase-atoms calc-pop-push-record-list "repl" calc-replace-sub-formula calc-handle-whys] 13))] 2))

(defun calc-edit-selection nil (interactive) (byte-code "ÀˆÁÂ!ˆÃ ‡" [nil calc-do (lambda nil (byte-code "Ê ˆËÌ`!]
ÍÃ\"@Î!† Ï	ÐÑ \")ÒÓÔD	F!ˆÕÖ\").‡" [num reselect calc-keep-selection entry expr sel alg str calc-float-format calc-full-float-format calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection nil math-format-nice-expr screen-width calc-edit-mode calc-finish-selection-edit quote insert "
"] 11)) calc-show-edit-buffer] 3))

(defun calc-finish-selection-edit (num sel reselect) (byte-code "pÅ`d\"`Æ!ˆÇ	!È!É=…) Æ!ˆ
Ê8\\bˆÉË8!ˆÌÍ!)+‡" [buf str start calc-original-buffer val buffer-substring switch-to-buffer math-read-expr car-safe error 1 2 calc-do (lambda nil (byte-code "Ç ˆ… ÈÉÁ\"ˆÊË
!!‰ˆÌÍ\"Î\"ƒ5 ÏÉÐÑ
#C…0 
C%‚< Ò
!ˆÓÔ!)‡" [disp-trail t val expr num sel reselect calc-preserve-point calc-trail-display 1 calc-encase-atoms calc-normalize calc-top full calc-find-sub-formula calc-pop-push-record-list "edit" calc-replace-sub-formula calc-push error "Original selection has been lost"] 13))] 8))

(defun calc-sel-evaluate (arg) (interactive "p") (byte-code "ÀˆÁÂÃ\"‡" [nil calc-do (lambda nil (byte-code "Ê ˆËÌ`!]
ÍÃ\"Î!† @Ï>?…! ÇÐ!ˆÑÒ!!	ÓËÔÕ@	#C	…C 	C%)))ˆÖ ,‡" [num reselect calc-keep-selection entry sel calc-simplify-mode math-simplify-only nil arg val calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection (none num) calc-modify-simplify-mode calc-encase-atoms calc-normalize calc-pop-push-record-list "jsmp" calc-replace-sub-formula calc-handle-whys] 14)) 13555] 3))

(defun calc-sel-expand-formula (arg) (interactive "p") (byte-code "ÀˆÁÂÃ\"‡" [nil calc-do (lambda nil (byte-code "Ì ˆÍÎ`!]
ÏÃ\"Ð!† @Ñ>?…! ÇÒ!ˆÓV	Ô!
ÇÓX…P Õ
!‰…P Ô!‰
ˆÖ
!‰
ˆ×ÍØÙ@
#C	…k 
C%+))ˆÚ ,‡" [num reselect calc-keep-selection entry sel calc-simplify-mode math-simplify-only nil arg math-expand-formulas val top calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection (none num) calc-modify-simplify-mode 0 calc-normalize math-expand-formula calc-encase-atoms calc-pop-push-record-list "jexf" calc-replace-sub-formula calc-handle-whys] 16)) 14078] 3))

(defun calc-sel-mult-both-sides (no-simp &optional divide) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Î ˆÏÐ`!]
ÑÃ\"@Ò!† Ó!ÔÔÔ	
Õ>?…3 

Ö×ƒ@ Ø‚A Ù\"@)‰ˆ…|Ú=†Z Û\"…a GÜUƒ%Ý>†¢ Þ!ƒ‹ ÏÛ\"8‰ˆß!†ˆ àá!‚¢ â!†¢ ã!ƒŸ àá!‚¢ àä!ˆƒ¬ Ú‚­ åÏ8Eƒ¾ Ú‚¿ åæ8E‰	ˆ†ç!ç	!‰	ˆÚ=…èÏ8Ï\"éU†	èÏ8ê\"éU†	Óæ8!ë>…	Ó!ì>…í	!‰	ˆîï	E!!‰‚_ƒ.å‚/ÚE‰	ˆ†Cç	!‰	ˆîïƒTÚ	E‚Zå	E!!‰ˆðÏƒkñ‚lòó#C	…zC%ˆô .	‡" [num reselect calc-keep-selection entry expr sel func alg lhs rhs calc-simplify-mode divide calc-tweak-eqn-table no-simp calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection car-safe nil (none num) calc-do-alg-entry "" "Divide both sides by: " "Multiply both sides by: " / assq 3 (/ calcFunc-eq calcFunc-neq) math-known-nonposp math-known-negp message "Assuming this factor is nonzero" math-known-posp math-known-nonnegp "Assuming this factor is positive" * 2 math-simplify math-compare 0 -1 (+ -) (+ -) math-expand-term calc-encase-atoms calc-normalize calc-pop-push-record-list "div" "mult" calc-replace-sub-formula calc-handle-whys] 34))] 2))

(defun calc-sel-div-both-sides (no-simp) (interactive "P") (byte-code "ÂˆÃÁ\"‡" [no-simp t nil calc-sel-mult-both-sides] 3))

(defun calc-sel-add-both-sides (no-simp &optional subtract) (interactive "P") (byte-code "ÀˆÁÂ!‡" [nil calc-do (lambda nil (byte-code "Î ˆÏÐ`!]
ÑÃ\"@Ò!† Ó!ÔÔÔ	
Õ>?…3 

Ö×ƒ@ Ø‚A Ù\"@)‰ˆ…ù Ú\"…Z GÛUƒ§ ƒf Ü‚g ÝÏ8Eƒx Ü‚y ÝÞ8E‰	ˆ†• ß!ß	!‰	ˆàá	E!!‰‚Ü ƒ° Ý‚± ÜE‰	ˆ†Å ß	!‰	ˆàáƒÑ Ü‚Ò Ý	E!!‰ˆâÏƒè ã‚é äå#C	…÷ C%ˆæ .	‡" [num reselect calc-keep-selection entry expr sel func alg lhs rhs calc-simplify-mode subtract calc-tweak-eqn-table no-simp calc-preserve-point 1 calc-locate-cursor-element calc-top calc-auto-selection car-safe nil (none num) calc-do-alg-entry "" "Subtract from both sides: " "Add to both sides: " assq 3 - + 2 math-simplify calc-encase-atoms calc-normalize calc-pop-push-record-list "sub" "add" calc-replace-sub-formula calc-handle-whys] 21))] 2))

(defun calc-sel-sub-both-sides (no-simp) (interactive "P") (byte-code "ÂˆÃÁ\"‡" [no-simp t nil calc-sel-add-both-sides] 3))
